summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDan Pasanen <dan.pasanen@gmail.com>2018-04-03 10:31:15 -0500
committerDan Pasanen <dan.pasanen@gmail.com>2018-04-03 10:31:15 -0500
commitb79b56560cd20e0660989f55b25364794dfe2597 (patch)
tree65298fa5fd6953d85baa9d238824d765d82a1c0b
parent17d26afd9b695cff7de40e7daf5cbb3f8eefe7ec (diff)
parent2bc33808b8bf9d921ffbf9f437e8c605b8fb86e0 (diff)
downloadandroid_packages_apps_CellBroadcastReceiver-b79b56560cd20e0660989f55b25364794dfe2597.tar.gz
android_packages_apps_CellBroadcastReceiver-b79b56560cd20e0660989f55b25364794dfe2597.tar.bz2
android_packages_apps_CellBroadcastReceiver-b79b56560cd20e0660989f55b25364794dfe2597.zip
Merge tag 'android-8.1.0_r20' into lineage-15.1
Android 8.1.0 release 20 Change-Id: I2667d15babfaac79a333e55ef0b3e7e44a63b0d8
-rw-r--r--res/values-mcc440-mnc20/config.xml8
-rw-r--r--src/com/android/cellbroadcastreceiver/CellBroadcastAlertAudio.java5
-rw-r--r--src/com/android/cellbroadcastreceiver/CellBroadcastAlertService.java18
-rw-r--r--src/com/android/cellbroadcastreceiver/CellBroadcastResources.java6
-rw-r--r--tests/unit/src/com/android/cellbroadcastreceiver/CellBroadcastChannelManagerTest.java16
-rw-r--r--tests/unit/src/com/android/cellbroadcastreceiver/CellBroadcastSettingsTest.java2
6 files changed, 38 insertions, 17 deletions
diff --git a/res/values-mcc440-mnc20/config.xml b/res/values-mcc440-mnc20/config.xml
index bc6925bd..fbe7edc3 100644
--- a/res/values-mcc440-mnc20/config.xml
+++ b/res/values-mcc440-mnc20/config.xml
@@ -16,10 +16,10 @@
<resources>
<string-array name="additional_cbs_channels_strings" translatable="false">
- <item>0xA800:type=earthquake, emergency=true</item>
- <item>0xAFEE:type=tsunami, emergency=true</item>
+ <item>0xA800:type=etws_earthquake, emergency=true</item>
+ <item>0xAFEE:type=etws_tsunami, emergency=true</item>
<item>0xAC00-0xAFED:type=other, emergency=true</item>
- <item>0xA802:type=etws_default, emergency=true</item>
- <item>0xA804:type=etws_default, emergency=true</item>
+ <item>0xA802:type=etws_test, emergency=true</item>
+ <item>0xA804:type=etws_test, emergency=true</item>
</string-array>
</resources>
diff --git a/src/com/android/cellbroadcastreceiver/CellBroadcastAlertAudio.java b/src/com/android/cellbroadcastreceiver/CellBroadcastAlertAudio.java
index fe75c968..68eaf2da 100644
--- a/src/com/android/cellbroadcastreceiver/CellBroadcastAlertAudio.java
+++ b/src/com/android/cellbroadcastreceiver/CellBroadcastAlertAudio.java
@@ -420,11 +420,11 @@ public class CellBroadcastAlertAudio extends Service implements TextToSpeech.OnI
// Load the tones based on type
switch (alertType) {
- case EARTHQUAKE:
+ case ETWS_EARTHQUAKE:
setDataSourceFromResource(getResources(), mMediaPlayer,
R.raw.etws_earthquake);
break;
- case TSUNAMI:
+ case ETWS_TSUNAMI:
setDataSourceFromResource(getResources(), mMediaPlayer,
R.raw.etws_tsunami);
break;
@@ -433,6 +433,7 @@ public class CellBroadcastAlertAudio extends Service implements TextToSpeech.OnI
R.raw.etws_other_disaster);
break;
case ETWS_DEFAULT:
+ case ETWS_TEST:
setDataSourceFromResource(getResources(), mMediaPlayer,
R.raw.etws_default);
break;
diff --git a/src/com/android/cellbroadcastreceiver/CellBroadcastAlertService.java b/src/com/android/cellbroadcastreceiver/CellBroadcastAlertService.java
index d80bff7e..593a0b4a 100644
--- a/src/com/android/cellbroadcastreceiver/CellBroadcastAlertService.java
+++ b/src/com/android/cellbroadcastreceiver/CellBroadcastAlertService.java
@@ -98,8 +98,9 @@ public class CellBroadcastAlertService extends Service {
public enum AlertType {
CMAS_DEFAULT,
ETWS_DEFAULT,
- EARTHQUAKE,
- TSUNAMI,
+ ETWS_EARTHQUAKE,
+ ETWS_TSUNAMI,
+ ETWS_TEST,
AREA,
OTHER
}
@@ -440,6 +441,12 @@ public class CellBroadcastAlertService extends Service {
// area info broadcasts are displayed in Settings status screen
}
return false;
+ } else if (range.mAlertType == AlertType.ETWS_TEST) {
+ return emergencyAlertEnabled
+ && !forceDisableEtwsCmasTest
+ && PreferenceManager.getDefaultSharedPreferences(this)
+ .getBoolean(CellBroadcastSettings.KEY_ENABLE_ETWS_TEST_ALERTS,
+ false);
}
return emergencyAlertEnabled;
@@ -510,10 +517,13 @@ public class CellBroadcastAlertService extends Service {
switch (warningType) {
case SmsCbEtwsInfo.ETWS_WARNING_TYPE_EARTHQUAKE:
case SmsCbEtwsInfo.ETWS_WARNING_TYPE_EARTHQUAKE_AND_TSUNAMI:
- alertType = AlertType.EARTHQUAKE;
+ alertType = AlertType.ETWS_EARTHQUAKE;
break;
case SmsCbEtwsInfo.ETWS_WARNING_TYPE_TSUNAMI:
- alertType = AlertType.TSUNAMI;
+ alertType = AlertType.ETWS_TSUNAMI;
+ break;
+ case SmsCbEtwsInfo.ETWS_WARNING_TYPE_TEST_MESSAGE:
+ alertType = AlertType.ETWS_TEST;
break;
case SmsCbEtwsInfo.ETWS_WARNING_TYPE_OTHER_EMERGENCY:
alertType = AlertType.OTHER;
diff --git a/src/com/android/cellbroadcastreceiver/CellBroadcastResources.java b/src/com/android/cellbroadcastreceiver/CellBroadcastResources.java
index 9946ce97..05cb7724 100644
--- a/src/com/android/cellbroadcastreceiver/CellBroadcastResources.java
+++ b/src/com/android/cellbroadcastreceiver/CellBroadcastResources.java
@@ -304,10 +304,12 @@ public class CellBroadcastResources {
switch (range.mAlertType) {
case CMAS_DEFAULT:
return R.string.pws_other_message_identifiers;
- case EARTHQUAKE:
+ case ETWS_EARTHQUAKE:
return R.string.etws_earthquake_warning;
- case TSUNAMI:
+ case ETWS_TSUNAMI:
return R.string.etws_tsunami_warning;
+ case ETWS_TEST:
+ return R.string.etws_test_message;
case ETWS_DEFAULT:
case OTHER:
return R.string.etws_other_emergency_type;
diff --git a/tests/unit/src/com/android/cellbroadcastreceiver/CellBroadcastChannelManagerTest.java b/tests/unit/src/com/android/cellbroadcastreceiver/CellBroadcastChannelManagerTest.java
index 264ee3da..b86234f5 100644
--- a/tests/unit/src/com/android/cellbroadcastreceiver/CellBroadcastChannelManagerTest.java
+++ b/tests/unit/src/com/android/cellbroadcastreceiver/CellBroadcastChannelManagerTest.java
@@ -53,11 +53,12 @@ public class CellBroadcastChannelManagerTest extends CellBroadcastTest {
@SmallTest
public void testGetCellBroadcastChannelRanges() throws Exception {
putResources(R.array.additional_cbs_channels_strings, new String[]{
- "12:type=earthquake, emergency=true",
- "456:type=tsunami, emergency=true",
+ "12:type=etws_earthquake, emergency=true",
+ "456:type=etws_tsunami, emergency=true",
"0xAC00-0xAFED:type=other, emergency=false",
"54-60:emergency=true",
- "100-200"
+ "100-200",
+ "0xA804:type=etws_test, emergency=true"
});
ArrayList<CellBroadcastChannelRange> list = CellBroadcastChannelManager.getInstance()
@@ -65,12 +66,12 @@ public class CellBroadcastChannelManagerTest extends CellBroadcastTest {
assertEquals(12, list.get(0).mStartId);
assertEquals(12, list.get(0).mEndId);
- assertEquals(AlertType.EARTHQUAKE, list.get(0).mAlertType);
+ assertEquals(AlertType.ETWS_EARTHQUAKE, list.get(0).mAlertType);
assertTrue(list.get(0).mIsEmergency);
assertEquals(456, list.get(1).mStartId);
assertEquals(456, list.get(1).mEndId);
- assertEquals(AlertType.TSUNAMI, list.get(1).mAlertType);
+ assertEquals(AlertType.ETWS_TSUNAMI, list.get(1).mAlertType);
assertTrue(list.get(1).mIsEmergency);
assertEquals(0xAC00, list.get(2).mStartId);
@@ -87,5 +88,10 @@ public class CellBroadcastChannelManagerTest extends CellBroadcastTest {
assertEquals(200, list.get(4).mEndId);
assertEquals(AlertType.CMAS_DEFAULT, list.get(4).mAlertType);
assertFalse(list.get(4).mIsEmergency);
+
+ assertEquals(0xA804, list.get(5).mStartId);
+ assertEquals(0xA804, list.get(5).mEndId);
+ assertEquals(AlertType.ETWS_TEST, list.get(5).mAlertType);
+ assertTrue(list.get(5).mIsEmergency);
}
}
diff --git a/tests/unit/src/com/android/cellbroadcastreceiver/CellBroadcastSettingsTest.java b/tests/unit/src/com/android/cellbroadcastreceiver/CellBroadcastSettingsTest.java
index e4ea05fd..f342a58d 100644
--- a/tests/unit/src/com/android/cellbroadcastreceiver/CellBroadcastSettingsTest.java
+++ b/tests/unit/src/com/android/cellbroadcastreceiver/CellBroadcastSettingsTest.java
@@ -23,6 +23,7 @@ import android.app.Instrumentation;
import android.content.Context;
import android.content.Intent;
import android.support.test.InstrumentationRegistry;
+import android.support.test.filters.FlakyTest;
import android.support.test.runner.AndroidJUnit4;
import android.support.test.uiautomator.UiDevice;
@@ -45,6 +46,7 @@ public class CellBroadcastSettingsTest {
mDevice = UiDevice.getInstance(mInstrumentation);
}
+ @FlakyTest
@Test
public void testRotate_alertReminderDialogOpen_shouldNotCrash() {
mInstrumentation.startActivitySync(createActivityIntent());