You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
116 lines
5.3 KiB
116 lines
5.3 KiB
<?xml version="1.0" encoding="utf-8"?>
|
|
<!--
|
|
Copyright (C) 2014 The Android Open Source Project
|
|
|
|
Licensed under the Apache License, Version 2.0 (the "License");
|
|
you may not use this file except in compliance with the License.
|
|
You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
distributed under the License is distributed on an "AS IS" BASIS,
|
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
See the License for the specific language governing permissions and
|
|
limitations under the License.
|
|
-->
|
|
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
|
package="com.android.providers.tv" >
|
|
|
|
<!-- Allows an application to read (but not write) all the TV listings.
|
|
This is the only (soon-to-be) public permission among other permissions defined here.
|
|
TODO(jaeseo): Update when b/21959866 is resolved. -->
|
|
<permission android:name="android.permission.READ_TV_LISTINGS"
|
|
android:protectionLevel="dangerous"
|
|
android:label="@string/permlab_readTvListings"
|
|
android:description="@string/permdesc_readTvListings" />
|
|
|
|
<!-- Allows an application to read (but not write) its own TV channel/program data.
|
|
@deprecated No longer enforced. -->
|
|
<permission android:name="com.android.providers.tv.permission.READ_EPG_DATA"
|
|
android:protectionLevel="normal"
|
|
android:label="@string/permlab_readEpgData"
|
|
android:description="@string/permdesc_readEpgData" />
|
|
|
|
<!-- Allows an application to write (but not read) its own TV channel/program data.
|
|
The write permission is still enforced but the application is not required to declare it as
|
|
the TV player/viewer app grants permission to write through the channel setup flow.
|
|
@hide -->
|
|
<permission android:name="com.android.providers.tv.permission.WRITE_EPG_DATA"
|
|
android:protectionLevel="normal"
|
|
android:label="@string/permlab_writeEpgData"
|
|
android:description="@string/permdesc_writeEpgData" />
|
|
|
|
<!-- Allows an application to read and write all TV channel/program data.
|
|
@hide -->
|
|
<permission android:name="com.android.providers.tv.permission.ACCESS_ALL_EPG_DATA"
|
|
android:protectionLevel="signature|privileged"
|
|
android:label="@string/permlab_accessAllEpgData"
|
|
android:description="@string/permdesc_accessAllEpgData" />
|
|
|
|
<!-- Allows an application to read and write watched programs data.
|
|
@hide -->
|
|
<permission android:name="com.android.providers.tv.permission.ACCESS_WATCHED_PROGRAMS"
|
|
android:protectionLevel="signature|privileged"
|
|
android:label="@string/permlab_accessWatchedPrograms"
|
|
android:description="@string/permdesc_accessWatchedPrograms" />
|
|
|
|
<uses-permission android:name="com.android.providers.tv.permission.ACCESS_ALL_EPG_DATA" />
|
|
<uses-permission android:name="com.android.providers.tv.permission.ACCESS_WATCHED_PROGRAMS" />
|
|
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
|
|
<uses-permission android:name="android.permission.QUERY_ALL_PACKAGES"/>
|
|
|
|
<application android:label="@string/app_label"
|
|
android:forceQueryable="true">
|
|
<provider
|
|
android:name="TvProvider"
|
|
android:authorities="android.media.tv"
|
|
android:exported="true"
|
|
android:syncable="true"
|
|
android:writePermission="com.android.providers.tv.permission.WRITE_EPG_DATA">
|
|
<grant-uri-permission android:pathPattern="/channel" />
|
|
<grant-uri-permission android:pathPattern="/program" />
|
|
</provider>
|
|
|
|
<service android:name="EpgDataCleanupService" />
|
|
|
|
<!-- Handles database upgrades after OTAs -->
|
|
<receiver android:name="TvProviderUpgradeReceiver"
|
|
android:exported="true">
|
|
<!-- This broadcast is sent after the core system has finished
|
|
booting, before the home app is launched or BOOT_COMPLETED
|
|
is sent. -->
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.PRE_BOOT_COMPLETED"/>
|
|
</intent-filter>
|
|
</receiver>
|
|
|
|
<!-- Deletes transient rows on boot. -->
|
|
<receiver android:name="BootCompletedReceiver"
|
|
android:exported="true">
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.BOOT_COMPLETED"/>
|
|
</intent-filter>
|
|
</receiver>
|
|
|
|
<!-- Removes channels and programs when some package is fully removed. -->
|
|
<receiver android:name="PackageRemovedReceiver"
|
|
android:exported="true">
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.PACKAGE_FULLY_REMOVED"/>
|
|
<data android:scheme="package"/>
|
|
</intent-filter>
|
|
</receiver>
|
|
|
|
<!-- Removes preview programs, watch next programs, and preview channels when some
|
|
package is disabled. -->
|
|
<receiver android:name="PackageChangedReceiver"
|
|
android:exported="true">
|
|
<intent-filter>
|
|
<action android:name="android.intent.action.PACKAGE_CHANGED"/>
|
|
<data android:scheme="package"/>
|
|
</intent-filter>
|
|
</receiver>
|
|
</application>
|
|
</manifest>
|