blob: ce474c20da824d4a9f2e0f764e81b5ca76135729 [file] [log] [blame]
Jae Seobbbbf732014-03-27 12:32:05 -07001<?xml version="1.0" encoding="utf-8"?>
2<!--
3 Copyright (C) 2014 The Android Open Source Project
4
5 Licensed under the Apache License, Version 2.0 (the "License");
6 you may not use this file except in compliance with the License.
7 You may obtain a copy of the License at
8
9 http://www.apache.org/licenses/LICENSE-2.0
10
11 Unless required by applicable law or agreed to in writing, software
12 distributed under the License is distributed on an "AS IS" BASIS,
13 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 See the License for the specific language governing permissions and
15 limitations under the License.
16-->
17<manifest xmlns:android="http://schemas.android.com/apk/res/android"
Dongwon Kang9c3caa02017-04-03 09:04:32 -070018 package="com.android.providers.tv" >
Jae Seobbbbf732014-03-27 12:32:05 -070019
Jae Seo3fb39672016-02-19 23:49:37 -080020 <!-- Allows an application to read (but not write) all the TV listings.
21 This is the only (soon-to-be) public permission among other permissions defined here.
22 TODO(jaeseo): Update when b/21959866 is resolved. -->
Jae Seo2ff926c2015-06-22 21:55:06 -070023 <permission android:name="android.permission.READ_TV_LISTINGS"
Jae Seobbbbf732014-03-27 12:32:05 -070024 android:protectionLevel="dangerous"
Jae Seo2ff926c2015-06-22 21:55:06 -070025 android:label="@string/permlab_readTvListings"
26 android:description="@string/permdesc_readTvListings" />
Jae Seobbbbf732014-03-27 12:32:05 -070027
Jae Seo33d3cf32015-07-07 14:00:10 -070028 <!-- Allows an application to read (but not write) its own TV channel/program data.
29 @deprecated No longer enforced. -->
30 <permission android:name="com.android.providers.tv.permission.READ_EPG_DATA"
31 android:protectionLevel="normal"
32 android:label="@string/permlab_readEpgData"
33 android:description="@string/permdesc_readEpgData" />
34
Jae Seo3fb39672016-02-19 23:49:37 -080035 <!-- Allows an application to write (but not read) its own TV channel/program data.
36 The write permission is still enforced but the application is not required to declare it as
37 the TV player/viewer app grants permission to write through the channel setup flow.
38 @hide -->
Jae Seo33d3cf32015-07-07 14:00:10 -070039 <permission android:name="com.android.providers.tv.permission.WRITE_EPG_DATA"
40 android:protectionLevel="normal"
41 android:label="@string/permlab_writeEpgData"
42 android:description="@string/permdesc_writeEpgData" />
43
Jae Seobbbbf732014-03-27 12:32:05 -070044 <!-- Allows an application to read and write all TV channel/program data.
45 @hide -->
Jae Seo13b32cf2014-08-11 16:00:35 -070046 <permission android:name="com.android.providers.tv.permission.ACCESS_ALL_EPG_DATA"
Yury Zhauniarovichb187bdb2015-12-14 22:03:44 +030047 android:protectionLevel="signature|privileged"
Jae Seo13b32cf2014-08-11 16:00:35 -070048 android:label="@string/permlab_accessAllEpgData"
49 android:description="@string/permdesc_accessAllEpgData" />
Jae Seobbbbf732014-03-27 12:32:05 -070050
Jae Seo13b32cf2014-08-11 16:00:35 -070051 <!-- Allows an application to read and write watched programs data.
Jae Seobbbbf732014-03-27 12:32:05 -070052 @hide -->
Jae Seo13b32cf2014-08-11 16:00:35 -070053 <permission android:name="com.android.providers.tv.permission.ACCESS_WATCHED_PROGRAMS"
Yury Zhauniarovichb187bdb2015-12-14 22:03:44 +030054 android:protectionLevel="signature|privileged"
Jae Seo13b32cf2014-08-11 16:00:35 -070055 android:label="@string/permlab_accessWatchedPrograms"
56 android:description="@string/permdesc_accessWatchedPrograms" />
Jae Seobbbbf732014-03-27 12:32:05 -070057
Jae Seo13b32cf2014-08-11 16:00:35 -070058 <uses-permission android:name="com.android.providers.tv.permission.ACCESS_ALL_EPG_DATA" />
Jae Seo4cf2b252014-09-15 15:32:45 -070059 <uses-permission android:name="com.android.providers.tv.permission.ACCESS_WATCHED_PROGRAMS" />
Dongwon Kang3cc1a852017-01-20 18:26:39 -080060 <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
Robin Lee22ca5212020-06-07 22:52:39 +020061 <uses-permission android:name="android.permission.QUERY_ALL_PACKAGES"/>
Ji-Hwan Leeac117ad2014-06-26 04:06:26 +090062
Robin Lee22ca5212020-06-07 22:52:39 +020063 <application android:label="@string/app_label"
64 android:forceQueryable="true">
Jae Seobbbbf732014-03-27 12:32:05 -070065 <provider
66 android:name="TvProvider"
Jae Seo15201d22014-06-02 16:35:27 -070067 android:authorities="android.media.tv"
Jae Seobbbbf732014-03-27 12:32:05 -070068 android:exported="true"
Jae Seo33d3cf32015-07-07 14:00:10 -070069 android:syncable="true"
70 android:writePermission="com.android.providers.tv.permission.WRITE_EPG_DATA">
71 <grant-uri-permission android:pathPattern="/channel" />
72 <grant-uri-permission android:pathPattern="/program" />
73 </provider>
Ji-Hwan Leeac117ad2014-06-26 04:06:26 +090074
75 <service android:name="EpgDataCleanupService" />
Dongwon Kangb9f96412016-04-04 18:38:03 -070076
77 <!-- Handles database upgrades after OTAs -->
Ashwini Oruganti90400612020-03-23 16:35:12 -070078 <receiver android:name="TvProviderUpgradeReceiver"
79 android:exported="true">
Dongwon Kangb9f96412016-04-04 18:38:03 -070080 <!-- This broadcast is sent after the core system has finished
81 booting, before the home app is launched or BOOT_COMPLETED
82 is sent. -->
83 <intent-filter>
84 <action android:name="android.intent.action.PRE_BOOT_COMPLETED"/>
85 </intent-filter>
86 </receiver>
Dongwon Kang3cc1a852017-01-20 18:26:39 -080087
88 <!-- Deletes transient rows on boot. -->
Ashwini Oruganti90400612020-03-23 16:35:12 -070089 <receiver android:name="BootCompletedReceiver"
90 android:exported="true">
Dongwon Kang3cc1a852017-01-20 18:26:39 -080091 <intent-filter>
92 <action android:name="android.intent.action.BOOT_COMPLETED"/>
93 </intent-filter>
94 </receiver>
Conrad Chen1b63db52017-02-01 17:11:12 -080095
96 <!-- Removes channels and programs when some package is fully removed. -->
Ashwini Oruganti90400612020-03-23 16:35:12 -070097 <receiver android:name="PackageRemovedReceiver"
98 android:exported="true">
Conrad Chen1b63db52017-02-01 17:11:12 -080099 <intent-filter>
100 <action android:name="android.intent.action.PACKAGE_FULLY_REMOVED"/>
Conrad Chenf5e79ad2017-03-22 17:29:05 -0700101 <data android:scheme="package"/>
Conrad Chen1b63db52017-02-01 17:11:12 -0800102 </intent-filter>
103 </receiver>
Shubang1d5fc6e2018-03-20 18:36:17 -0700104
105 <!-- Removes preview programs, watch next programs, and preview channels when some
106 package is disabled. -->
Ashwini Oruganti90400612020-03-23 16:35:12 -0700107 <receiver android:name="PackageChangedReceiver"
108 android:exported="true">
Shubang1d5fc6e2018-03-20 18:36:17 -0700109 <intent-filter>
110 <action android:name="android.intent.action.PACKAGE_CHANGED"/>
111 <data android:scheme="package"/>
112 </intent-filter>
113 </receiver>
Jae Seobbbbf732014-03-27 12:32:05 -0700114 </application>
Shubang1d5fc6e2018-03-20 18:36:17 -0700115</manifest>