IntentResolver: prepare IntentResolver-core for client usage
- Creates "lib" AndroidManifest.xml containing the required permissions
- Adds proguard configuration file
Bug: 265905535
Change-Id: Ie24cd32c1816d349a3ba59ff206d9fc210f54a21
diff --git a/Android.bp b/Android.bp
index 219a79e..245d122 100644
--- a/Android.bp
+++ b/Android.bp
@@ -63,7 +63,7 @@
"java/res",
],
- manifest: "AndroidManifest.xml",
+ manifest: "AndroidManifest-lib.xml",
static_libs: [
"androidx.annotation_annotation",
@@ -90,6 +90,10 @@
lint: {
strict_updatability_linting: false,
},
+
+ optimize: {
+ proguard_flags_files: ["proguard.flags"],
+ },
}
android_app {
@@ -97,6 +101,7 @@
min_sdk_version: "current",
certificate: "platform",
privileged: true,
+ manifest: "AndroidManifest-app.xml",
required: [
"privapp_whitelist_com.android.intentresolver",
],
diff --git a/AndroidManifest.xml b/AndroidManifest-app.xml
similarity index 71%
rename from AndroidManifest.xml
rename to AndroidManifest-app.xml
index f9bdc69..d542e62 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest-app.xml
@@ -23,22 +23,6 @@
android:versionName="2021-11"
coreApp="true">
-
- <uses-permission android:name="android.permission.ACCESS_SHORTCUTS" />
- <uses-permission android:name="android.permission.BIND_RESOLVER_RANKER_SERVICE" />
- <uses-permission android:name="android.permission.GET_ANY_PROVIDER_TYPE" />
- <uses-permission android:name="android.permission.INTERACT_ACROSS_USERS_FULL" />
- <uses-permission android:name="android.permission.MANAGE_APP_PREDICTIONS" />
- <uses-permission android:name="android.permission.MANAGE_USERS" />
- <uses-permission android:name="android.permission.PACKAGE_USAGE_STATS" />
- <uses-permission android:name="android.permission.QUERY_ALL_PACKAGES" />
- <uses-permission android:name="android.permission.READ_DEVICE_CONFIG" />
- <uses-permission android:name="android.permission.SET_CLIP_SOURCE" />
- <uses-permission android:name="android.permission.START_ACTIVITY_AS_CALLER" />
- <uses-permission android:name="android.permission.UNLIMITED_SHORTCUTS_API_CALLS" />
- <uses-permission android:name="android.permission.QUERY_CLONED_APPS" />
- <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
-
<application
android:name=".IntentResolverApplication"
android:hardwareAccelerated="true"
diff --git a/AndroidManifest-lib.xml b/AndroidManifest-lib.xml
new file mode 100644
index 0000000..509d46a
--- /dev/null
+++ b/AndroidManifest-lib.xml
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ ~ Copyright (C) 2023 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.intentresolver" >
+ <uses-permission android:name="android.permission.ACCESS_SHORTCUTS" />
+ <uses-permission android:name="android.permission.BIND_RESOLVER_RANKER_SERVICE" />
+ <uses-permission android:name="android.permission.GET_ANY_PROVIDER_TYPE" />
+ <uses-permission android:name="android.permission.INTERACT_ACROSS_USERS_FULL" />
+ <uses-permission android:name="android.permission.MANAGE_APP_PREDICTIONS" />
+ <uses-permission android:name="android.permission.MANAGE_USERS" />
+ <uses-permission android:name="android.permission.PACKAGE_USAGE_STATS" />
+ <uses-permission android:name="android.permission.QUERY_ALL_PACKAGES" />
+ <uses-permission android:name="android.permission.READ_DEVICE_CONFIG" />
+ <uses-permission android:name="android.permission.SET_CLIP_SOURCE" />
+ <uses-permission android:name="android.permission.START_ACTIVITY_AS_CALLER" />
+ <uses-permission android:name="android.permission.UNLIMITED_SHORTCUTS_API_CALLS" />
+ <uses-permission android:name="android.permission.QUERY_CLONED_APPS" />
+ <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
+</manifest>
diff --git a/proguard.flags b/proguard.flags
new file mode 100644
index 0000000..5541c3f
--- /dev/null
+++ b/proguard.flags
@@ -0,0 +1,2 @@
+# Class referenced from xml drawable
+-keep class com.android.intentresolver.SimpleIconFactory$FixedScaleDrawable