1<?xml version="1.0" encoding="utf-8"?>
2<manifest xmlns:android="http://schemas.android.com/apk/res/android"
3          package="com.android.packageinstaller">
4
5    <original-package android:name="com.android.packageinstaller" />
6
7    <uses-permission android:name="android.permission.MANAGE_USERS" />
8    <uses-permission android:name="android.permission.INSTALL_PACKAGES" />
9    <uses-permission android:name="android.permission.DELETE_PACKAGES" />
10    <uses-permission android:name="android.permission.READ_INSTALL_SESSIONS" />
11    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
12    <uses-permission android:name="android.permission.HIDE_NON_SYSTEM_OVERLAY_WINDOWS" />
13    <uses-permission android:name="android.permission.USE_RESERVED_DISK" />
14    <uses-permission android:name="android.permission.UPDATE_APP_OPS_STATS" />
15    <uses-permission android:name="android.permission.MANAGE_APP_OPS_MODES" />
16    <uses-permission android:name="android.permission.INTERACT_ACROSS_USERS_FULL" />
17    <uses-permission android:name="android.permission.SUBSTITUTE_NOTIFICATION_APP_NAME" />
18    <uses-permission android:name="android.permission.PACKAGE_USAGE_STATS" />
19
20    <uses-permission android:name="com.google.android.permission.INSTALL_WEARABLE_PACKAGES" />
21
22    <application android:name=".PackageInstallerApplication"
23            android:label="@string/app_name"
24            android:icon="@drawable/ic_app_icon"
25            android:allowBackup="false"
26            android:theme="@style/Theme.AlertDialogActivity"
27            android:supportsRtl="true"
28            android:defaultToDeviceProtectedStorage="true"
29            android:directBootAware="true">
30
31        <receiver android:name=".TemporaryFileManager"
32            android:exported="true">
33            <intent-filter>
34                <action android:name="android.intent.action.BOOT_COMPLETED" />
35            </intent-filter>
36        </receiver>
37
38        <activity android:name=".InstallStart"
39                android:theme="@android:style/Theme.Translucent.NoTitleBar"
40                android:exported="true"
41                android:excludeFromRecents="true">
42            <intent-filter android:priority="1">
43                <action android:name="android.intent.action.VIEW" />
44                <action android:name="android.intent.action.INSTALL_PACKAGE" />
45                <category android:name="android.intent.category.DEFAULT" />
46                <data android:scheme="content" />
47                <data android:mimeType="application/vnd.android.package-archive" />
48            </intent-filter>
49            <intent-filter android:priority="1">
50                <action android:name="android.intent.action.INSTALL_PACKAGE" />
51                <category android:name="android.intent.category.DEFAULT" />
52                <data android:scheme="package" />
53                <data android:scheme="content" />
54            </intent-filter>
55            <intent-filter android:priority="1">
56                <action android:name="android.content.pm.action.CONFIRM_INSTALL" />
57                <category android:name="android.intent.category.DEFAULT" />
58            </intent-filter>
59        </activity>
60
61        <activity android:name=".InstallStaging"
62                android:exported="false" />
63
64        <activity android:name=".DeleteStagedFileOnResult"
65            android:theme="@android:style/Theme.Translucent.NoTitleBar"
66            android:exported="false" />
67
68        <activity android:name=".PackageInstallerActivity"
69                android:exported="false" />
70
71        <activity android:name=".InstallInstalling"
72                android:theme="@style/Theme.AlertDialogActivity.NoAnimation"
73                android:exported="false" />
74
75        <receiver android:name=".InstallEventReceiver"
76                android:permission="android.permission.INSTALL_PACKAGES"
77                android:exported="true">
78            <intent-filter android:priority="1">
79                <action android:name="com.android.packageinstaller.ACTION_INSTALL_COMMIT" />
80            </intent-filter>
81        </receiver>
82
83        <activity android:name=".InstallSuccess"
84                android:theme="@style/Theme.AlertDialogActivity.NoAnimation"
85                android:exported="false" />
86
87        <activity android:name=".InstallFailed"
88                android:theme="@style/Theme.AlertDialogActivity.NoAnimation"
89                android:exported="false" />
90
91        <activity android:name=".UninstallerActivity"
92                android:configChanges="orientation|keyboardHidden|screenSize"
93                android:theme="@style/Theme.AlertDialogActivity.NoActionBar"
94                android:excludeFromRecents="true"
95                android:noHistory="true">
96            <intent-filter android:priority="1">
97                <action android:name="android.intent.action.DELETE" />
98                <action android:name="android.intent.action.UNINSTALL_PACKAGE" />
99                <category android:name="android.intent.category.DEFAULT" />
100                <data android:scheme="package" />
101            </intent-filter>
102        </activity>
103
104        <receiver android:name=".UninstallEventReceiver"
105            android:permission="android.permission.INSTALL_PACKAGES"
106            android:exported="true">
107            <intent-filter android:priority="1">
108                <action android:name="com.android.packageinstaller.ACTION_UNINSTALL_COMMIT" />
109            </intent-filter>
110        </receiver>
111
112        <receiver android:name=".PackageInstalledReceiver"
113                android:exported="true">
114            <intent-filter android:priority="1">
115                <action android:name="android.intent.action.PACKAGE_ADDED" />
116                <data android:scheme="package" />
117            </intent-filter>
118        </receiver>
119
120        <activity android:name=".UninstallUninstalling"
121            android:excludeFromRecents="true"
122            android:exported="false" />
123
124        <receiver android:name=".UninstallFinish"
125                android:exported="false" />
126
127        <activity android:name=".television.UninstallAppProgress"
128                android:configChanges="mnc|mnc|touchscreen|navigation|screenLayout|screenSize|smallestScreenSize|orientation|locale|keyboard|keyboardHidden|fontScale|uiMode|layoutDirection|density"
129                android:exported="false" />
130
131        <!-- Wearable Components -->
132        <service android:name=".wear.WearPackageInstallerService"
133                 android:permission="com.google.android.permission.INSTALL_WEARABLE_PACKAGES"
134                 android:exported="true"/>
135
136        <provider android:name=".wear.WearPackageIconProvider"
137                  android:authorities="com.google.android.packageinstaller.wear.provider"
138                  android:grantUriPermissions="true"
139                  android:exported="true" />
140    </application>
141
142</manifest>
143