1<?xml version="1.0" encoding="utf-8"?>
2
3<!-- The package name here must match the Studio namespace given in
4     WallpaperPickerGoogle gradle config for Studio builds to succeed.
5     `package_name` in Android.bp overrides this with the actual package name.
6 -->
7<manifest xmlns:android="http://schemas.android.com/apk/res/android"
8          xmlns:tools="http://schemas.android.com/tools"
9          package="com.google.android.apps.wallpaper">
10
11    <uses-sdk android:targetSdkVersion="30" android:minSdkVersion="28"/>
12
13    <uses-permission android:name="android.permission.CHANGE_OVERLAY_PACKAGES"/>
14    <uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS"/>
15    <uses-permission android:name="android.permission.SET_WALLPAPER_COMPONENT" />
16    <uses-permission android:name="android.permission.READ_DEVICE_CONFIG" />
17    <uses-permission android:name="android.permission.MODIFY_DAY_NIGHT_MODE" />
18    <uses-permission android:name="android.permission.CUSTOMIZE_SYSTEM_UI" />
19    <uses-permission android:name="android.permission.BIND_WALLPAPER"/>
20    <uses-permission android:name="android.permission.READ_MEDIA_IMAGES"/>
21    <uses-permission android:name="android.permission.READ_WALLPAPER_INTERNAL"/>
22    <uses-permission android:name="android.permission.SET_WALLPAPER"/>
23    <uses-permission android:name="android.permission.SET_WALLPAPER_DIM_AMOUNT" />
24
25    <queries>
26        <package android:name="android"/>
27        <package android:name="com.android.launcher3"/>
28        <package android:name="com.android.settings"/>
29        <package android:name="com.android.systemui"/>
30
31        <!-- Specific intents Wallpaper picker query for -->
32        <!-- Package for theme stub -->
33        <package android:name="com.android.customization.themes" />
34        <!-- Intent filter with action SET_WALLPAPER -->
35        <intent>
36            <action android:name="android.intent.action.SET_WALLPAPER" />
37        </intent>
38        <!-- Intent filter with action GET_CONTENT and data's mimeType as "image/*" -->
39        <intent>
40            <action android:name="android.intent.action.GET_CONTENT" />
41            <data android:mimeType="image/*" />
42        </intent>
43        <!-- Intent filter with action VIEW -->
44        <intent>
45            <action android:name="android.intent.action.VIEW" />
46            <data android:scheme="http" />
47        </intent>
48        <!-- Intent filter with action WallpaperService (live wallpaper interface) -->
49        <intent>
50            <action android:name="android.service.wallpaper.WallpaperService" />
51        </intent>
52        <!-- Intent filter with action used to discover partner -->
53        <intent>
54            <action android:name="com.android.launcher3.action.PARTNER_CUSTOMIZATION" />
55        </intent>
56        <!-- Intent filter used to query the launcher Activity for grid preview metadata -->
57        <intent>
58            <action android:name="android.intent.action.MAIN" />
59            <category android:name="android.intent.category.HOME" />
60        </intent>
61    </queries>
62
63    <application
64        tools:replace="android:icon,android:name"
65        android:extractNativeLibs="false"
66        android:hardwareAccelerated="true"
67        android:icon="@drawable/ic_home"
68        android:label="@string/app_name"
69        android:requiredForAllUsers="true"
70        android:restoreAnyVersion="true"
71        android:supportsRtl="true"
72        android:name="com.android.customization.picker.CustomizationPickerApplication"
73        android:theme="@style/CustomizationTheme">
74        <activity
75            tools:node="replace"
76            android:name="com.android.wallpaper.picker.CustomizationPickerActivity"
77            android:label="@string/app_name"
78            android:relinquishTaskIdentity="true"
79            android:resizeableActivity="false"
80            android:theme="@style/CustomizationTheme.NoActionBar"
81            android:exported="false"/>
82
83        <activity
84            tools:node="replace"
85            android:name="com.android.wallpaper.picker.PassThroughCustomizationPickerActivity"
86            android:label="@string/app_name"
87            android:resizeableActivity="false"
88            android:theme="@style/CustomizationTheme.NoActionBar"
89            android:exported="false"/>
90
91        <activity
92            tools:node="replace"
93            android:name="com.android.wallpaper.picker.TrampolinePickerActivity"
94            android:label="@string/app_name"
95            android:relinquishTaskIdentity="true"
96            android:resizeableActivity="false"
97            android:theme="@style/CustomizationTheme.NoActionBar"
98            android:exported="false"/>
99
100        <activity-alias
101            android:name="com.android.customization.picker.CustomizationPickerActivity"
102            android:targetActivity="com.android.wallpaper.picker.TrampolinePickerActivity"
103            android:label="@string/app_name"
104            android:exported="true">
105             <intent-filter>
106                 <action android:name="android.intent.action.SET_WALLPAPER"/>
107                 <category android:name="android.intent.category.DEFAULT"/>
108             </intent-filter>
109        </activity-alias>
110
111    </application>
112</manifest>
113