diff options
author | Dario Freni <dariofreni@google.com> | 2018-06-01 14:02:08 +0100 |
---|---|---|
committer | Dario Freni <dariofreni@google.com> | 2018-08-17 16:34:03 +0000 |
commit | 2bef1768a8bc63d21740fdbb2ff59c0bf15a3275 (patch) | |
tree | 6fed8f7234dfffcbc16102cccd600c5c591ef3ed /tests | |
parent | 804574644849ef39d63d6515497469ee3b33b1d8 (diff) |
Support /product-services partition
This CL is largely an adaptation of Change-Id
I16175933cebd9ec665d190cc5d564b5414a91827 . I also used the same way for
testing the change.
This CL will support the followings.
- installing a RRO package for framework from /product-services/overlay
- installing apps from /product-services/app
- installing priv-apps from /product-services/priv-app
- installing permissions from
/product-services/etc/[default-permissions|permissions|sysconfig]
Bug: 80741439
Test: `mm` under frameworks/base/tests/[libs|privapp]-permissions
adb sync && adb reboot
adb shell cmd package list libraries
=> confirmed com.android.test.libs.product_services library
adb shell cmd package dump \
com.android.framework.permission.privapp.tests.product_services
=> confirmed that the package is a priv-app
And I moved vendor/overlay/framework-res__auto_generated_rro.apk
into system/product-services/overlay/ on taimen, and I confirmed that the
RRO was installed properly.
Change-Id: I7a6a30bf8e8db9f2738594d187bb9148f138b8da
(cherry picked from commit a4af41736894bd3bf5bdc2a279acbeed2a24dd3d)
Diffstat (limited to 'tests')
6 files changed, 108 insertions, 0 deletions
diff --git a/tests/libs-permissions/Android.mk b/tests/libs-permissions/Android.mk index eb3862390338..f4250c8b4e97 100644 --- a/tests/libs-permissions/Android.mk +++ b/tests/libs-permissions/Android.mk @@ -13,3 +13,17 @@ LOCAL_MODULE_CLASS := ETC LOCAL_MODULE_PATH := $(TARGET_OUT_PRODUCT_ETC)/permissions LOCAL_SRC_FILES:= product/com.android.test.libs.product.xml include $(BUILD_PREBUILT) + +include $(CLEAR_VARS) +LOCAL_MODULE := com.android.test.libs.product_services +LOCAL_PRODUCT_SERVICES_MODULE := true +LOCAL_SRC_FILES := $(call all-java-files-under, product_services/java) +LOCAL_REQUIRED_MODULES := com.android.test.libs.product_services.xml +include $(BUILD_JAVA_LIBRARY) + +include $(CLEAR_VARS) +LOCAL_MODULE := com.android.test.libs.product_services.xml +LOCAL_MODULE_CLASS := ETC +LOCAL_MODULE_PATH := $(TARGET_OUT_PRODUCT_SERVICES_ETC)/permissions +LOCAL_SRC_FILES:= product_services/com.android.test.libs.product_services.xml +include $(BUILD_PREBUILT) diff --git a/tests/libs-permissions/product_services/com.android.test.libs.product_services.xml b/tests/libs-permissions/product_services/com.android.test.libs.product_services.xml new file mode 100644 index 000000000000..082a9be80779 --- /dev/null +++ b/tests/libs-permissions/product_services/com.android.test.libs.product_services.xml @@ -0,0 +1,20 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- Copyright (C) 2018 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. +--> + +<permissions> + <library name="com.android.test.libs.product_services" + file="/product_services/framework/com.android.test.libs.product_services.jar" /> +</permissions> diff --git a/tests/libs-permissions/product_services/java/com/android/test/libs/product_services/LibsProductServicesTest.java b/tests/libs-permissions/product_services/java/com/android/test/libs/product_services/LibsProductServicesTest.java new file mode 100644 index 000000000000..dcbdae809889 --- /dev/null +++ b/tests/libs-permissions/product_services/java/com/android/test/libs/product_services/LibsProductServicesTest.java @@ -0,0 +1,29 @@ +/* + * Copyright (C) 2018 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. + */ + +package com.android.test.libs.product_services; + +/** + * Test class for product_services libs. + */ +public class LibsProductServicesTest { + + /** + * Dummy method for testing. + */ + public static void test() { + } +} diff --git a/tests/privapp-permissions/Android.mk b/tests/privapp-permissions/Android.mk index 9795188559c4..1149b8a8fe40 100644 --- a/tests/privapp-permissions/Android.mk +++ b/tests/privapp-permissions/Android.mk @@ -46,3 +46,19 @@ LOCAL_MODULE_CLASS := ETC LOCAL_MODULE_PATH := $(TARGET_OUT_PRODUCT_ETC)/permissions LOCAL_SRC_FILES:= product/privapp-permissions-test.xml include $(BUILD_PREBUILT) + +include $(CLEAR_VARS) +LOCAL_PACKAGE_NAME := ProductServicesPrivAppPermissionTest +LOCAL_SDK_VERSION := current +LOCAL_PRIVILEGED_MODULE := true +LOCAL_MANIFEST_FILE := product_services/AndroidManifest.xml +LOCAL_PRODUCT_SERVICES_MODULE := true +LOCAL_REQUIRED_MODULES := product_servicesprivapp-permissions-test.xml +include $(BUILD_PACKAGE) + +include $(CLEAR_VARS) +LOCAL_MODULE := product_servicesprivapp-permissions-test.xml +LOCAL_MODULE_CLASS := ETC +LOCAL_MODULE_PATH := $(TARGET_OUT_PRODUCT_SERVICES_ETC)/permissions +LOCAL_SRC_FILES:= product_services/privapp-permissions-test.xml +include $(BUILD_PREBUILT) diff --git a/tests/privapp-permissions/product_services/AndroidManifest.xml b/tests/privapp-permissions/product_services/AndroidManifest.xml new file mode 100644 index 000000000000..511ddee729ca --- /dev/null +++ b/tests/privapp-permissions/product_services/AndroidManifest.xml @@ -0,0 +1,23 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- + * Copyright (C) 2018 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.framework.permission.privapp.tests.product_services"> + + <!-- MANAGE_USB is signature|privileged --> + <uses-permission android:name="android.permission.MANAGE_USB"/> +</manifest> diff --git a/tests/privapp-permissions/product_services/privapp-permissions-test.xml b/tests/privapp-permissions/product_services/privapp-permissions-test.xml new file mode 100644 index 000000000000..43baebbb0aad --- /dev/null +++ b/tests/privapp-permissions/product_services/privapp-permissions-test.xml @@ -0,0 +1,6 @@ +<?xml version="1.0" encoding="utf-8"?> +<permissions> + <privapp-permissions package="com.android.framework.permission.privapp.tests.product_services"> + <permission name="android.permission.MANAGE_USB"/> + </privapp-permissions> +</permissions> |