From a21a87b7a4153839cebb3152d0003ee86d7a5252 Mon Sep 17 00:00:00 2001 From: fionaxu Date: Tue, 13 Dec 2016 17:15:11 -0800 Subject: [PATCH] Default Carrier app for traffic mitigation - have the basic function working, support traffic mitigation and captive portal login - support carrier customization, OEM could configure a list of carrier actions to act upon certain signals - unit test Test: Manual test with live sim card & runtest --path frameworks/base/packages/CarrierDefaultApp Bug: 30958215 Change-Id: Ie99be3b95e8a1dd60fc51bef703836478fbde09d --- packages/CarrierDefaultApp/Android.mk | 14 ++ .../CarrierDefaultApp/AndroidManifest.xml | 41 +++ .../res/drawable/ic_sim_card.xml | 26 ++ .../CarrierDefaultApp/res/values/dimens.xml | 3 + .../CarrierDefaultApp/res/values/strings.xml | 13 + .../CarrierDefaultApp/res/values/styles.xml | 3 + .../CaptivePortalLaunchActivity.java | 233 ++++++++++++++++++ .../carrierdefaultapp/CarrierActionUtils.java | 175 +++++++++++++ .../CarrierDefaultBroadcastReceiver.java | 37 +++ .../carrierdefaultapp/CustomConfigLoader.java | 166 +++++++++++++ packages/CarrierDefaultApp/tests/Android.mk | 25 ++ .../CarrierDefaultApp/tests/unit/Android.mk | 34 +++ .../tests/unit/AndroidManifest.xml | 31 +++ .../CarrierDefaultActivityTestCase.java | 76 ++++++ .../CarrierDefaultReceiverTest.java | 109 ++++++++ .../LaunchCaptivePortalActivityTest.java | 108 ++++++++ .../carrierdefaultapp/TestContext.java | 60 +++++ .../telephony/CarrierConfigManager.java | 61 +++++ 18 files changed, 1215 insertions(+) create mode 100644 packages/CarrierDefaultApp/Android.mk create mode 100644 packages/CarrierDefaultApp/AndroidManifest.xml create mode 100644 packages/CarrierDefaultApp/res/drawable/ic_sim_card.xml create mode 100644 packages/CarrierDefaultApp/res/values/dimens.xml create mode 100644 packages/CarrierDefaultApp/res/values/strings.xml create mode 100644 packages/CarrierDefaultApp/res/values/styles.xml create mode 100644 packages/CarrierDefaultApp/src/com/android/carrierdefaultapp/CaptivePortalLaunchActivity.java create mode 100644 packages/CarrierDefaultApp/src/com/android/carrierdefaultapp/CarrierActionUtils.java create mode 100644 packages/CarrierDefaultApp/src/com/android/carrierdefaultapp/CarrierDefaultBroadcastReceiver.java create mode 100644 packages/CarrierDefaultApp/src/com/android/carrierdefaultapp/CustomConfigLoader.java create mode 100644 packages/CarrierDefaultApp/tests/Android.mk create mode 100644 packages/CarrierDefaultApp/tests/unit/Android.mk create mode 100644 packages/CarrierDefaultApp/tests/unit/AndroidManifest.xml create mode 100644 packages/CarrierDefaultApp/tests/unit/src/com/android/carrierdefaultapp/CarrierDefaultActivityTestCase.java create mode 100644 packages/CarrierDefaultApp/tests/unit/src/com/android/carrierdefaultapp/CarrierDefaultReceiverTest.java create mode 100644 packages/CarrierDefaultApp/tests/unit/src/com/android/carrierdefaultapp/LaunchCaptivePortalActivityTest.java create mode 100644 packages/CarrierDefaultApp/tests/unit/src/com/android/carrierdefaultapp/TestContext.java diff --git a/packages/CarrierDefaultApp/Android.mk b/packages/CarrierDefaultApp/Android.mk new file mode 100644 index 0000000000000..82be13260659a --- /dev/null +++ b/packages/CarrierDefaultApp/Android.mk @@ -0,0 +1,14 @@ +LOCAL_PATH:= $(call my-dir) +include $(CLEAR_VARS) + +LOCAL_MODULE_TAGS := optional + +LOCAL_SRC_FILES := $(call all-java-files-under, src) + +LOCAL_PACKAGE_NAME := CarrierDefaultApp +LOCAL_CERTIFICATE := platform + +include $(BUILD_PACKAGE) + +# This finds and builds the test apk as well, so a single make does both. +include $(call all-makefiles-under,$(LOCAL_PATH)) diff --git a/packages/CarrierDefaultApp/AndroidManifest.xml b/packages/CarrierDefaultApp/AndroidManifest.xml new file mode 100644 index 0000000000000..28d9e5c945107 --- /dev/null +++ b/packages/CarrierDefaultApp/AndroidManifest.xml @@ -0,0 +1,41 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/CarrierDefaultApp/res/drawable/ic_sim_card.xml b/packages/CarrierDefaultApp/res/drawable/ic_sim_card.xml new file mode 100644 index 0000000000000..589675755e072 --- /dev/null +++ b/packages/CarrierDefaultApp/res/drawable/ic_sim_card.xml @@ -0,0 +1,26 @@ + + + + + + \ No newline at end of file diff --git a/packages/CarrierDefaultApp/res/values/dimens.xml b/packages/CarrierDefaultApp/res/values/dimens.xml new file mode 100644 index 0000000000000..a3c5049bfd8b4 --- /dev/null +++ b/packages/CarrierDefaultApp/res/values/dimens.xml @@ -0,0 +1,3 @@ + + 32dp + diff --git a/packages/CarrierDefaultApp/res/values/strings.xml b/packages/CarrierDefaultApp/res/values/strings.xml new file mode 100644 index 0000000000000..838ff39f52312 --- /dev/null +++ b/packages/CarrierDefaultApp/res/values/strings.xml @@ -0,0 +1,13 @@ + + + CarrierDefaultApp + Activate your service + No data service + Tap to activate your service + No Service, please contact your service provider + Connecting to captive portal... + Network timeout, would you like to retry? + Network unavailable + Quit + Wait + diff --git a/packages/CarrierDefaultApp/res/values/styles.xml b/packages/CarrierDefaultApp/res/values/styles.xml new file mode 100644 index 0000000000000..3d2691505f56e --- /dev/null +++ b/packages/CarrierDefaultApp/res/values/styles.xml @@ -0,0 +1,3 @@ + +