From e374f5096e9155593596d363e5d097ad98a8be0c Mon Sep 17 00:00:00 2001 From: Gavin Corkery Date: Wed, 22 Jun 2022 13:22:10 +0000 Subject: [PATCH] Add manual rollback sample app This application can be installed as a signature app. It displays all available rollbacks, and will manually trigger the rollback of all selected rollback IDs. This application will not trigger a reboot in the case of staged rollbacks. Test: m SampleRollbackApp, adb install. Manually install a train with rollback enabled and reboot. Verify that the available rollback is displayed, and that the rollback can be committed. Bug: 220204580 Change-Id: Id2e5afac9e25532d8c24ea2b803c07dcfdb84d85 --- .../RollbackTest/SampleRollbackApp/Android.bp | 32 ++++ .../SampleRollbackApp/AndroidManifest.xml | 31 ++++ .../res/layout/activity_main.xml | 37 ++++ .../res/layout/listitem_rollbackinfo.xml | 41 +++++ .../SampleRollbackApp/res/values/strings.xml | 20 +++ .../sample/rollbackapp/MainActivity.java | 159 ++++++++++++++++++ 6 files changed, 320 insertions(+) create mode 100644 tests/RollbackTest/SampleRollbackApp/Android.bp create mode 100644 tests/RollbackTest/SampleRollbackApp/AndroidManifest.xml create mode 100644 tests/RollbackTest/SampleRollbackApp/res/layout/activity_main.xml create mode 100644 tests/RollbackTest/SampleRollbackApp/res/layout/listitem_rollbackinfo.xml create mode 100644 tests/RollbackTest/SampleRollbackApp/res/values/strings.xml create mode 100644 tests/RollbackTest/SampleRollbackApp/src/com/android/sample/rollbackapp/MainActivity.java diff --git a/tests/RollbackTest/SampleRollbackApp/Android.bp b/tests/RollbackTest/SampleRollbackApp/Android.bp new file mode 100644 index 0000000000000..a18488d8f57f0 --- /dev/null +++ b/tests/RollbackTest/SampleRollbackApp/Android.bp @@ -0,0 +1,32 @@ +// Copyright (C) 2022 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 { + // See: http://go/android-license-faq + // A large-scale-change added 'default_applicable_licenses' to import + // all of the 'license_kinds' from "frameworks_base_license" + // to get the below license kinds: + // SPDX-license-identifier-Apache-2.0 + default_applicable_licenses: ["frameworks_base_license"], +} + +android_app { + name: "SampleRollbackApp", + srcs: [ + "src/**/*.java", + ], + resource_dirs: ["res"], + certificate: "platform", + sdk_version: "system_current", +} diff --git a/tests/RollbackTest/SampleRollbackApp/AndroidManifest.xml b/tests/RollbackTest/SampleRollbackApp/AndroidManifest.xml new file mode 100644 index 0000000000000..5a135c9783438 --- /dev/null +++ b/tests/RollbackTest/SampleRollbackApp/AndroidManifest.xml @@ -0,0 +1,31 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/tests/RollbackTest/SampleRollbackApp/res/layout/activity_main.xml b/tests/RollbackTest/SampleRollbackApp/res/layout/activity_main.xml new file mode 100644 index 0000000000000..3fb987bb539c4 --- /dev/null +++ b/tests/RollbackTest/SampleRollbackApp/res/layout/activity_main.xml @@ -0,0 +1,37 @@ + + + + + +