Merge "Add callback method to notify the emergency mode included in satellite enable request is changed" into main
diff --git a/telephony/java/android/telephony/satellite/ISatelliteModemStateCallback.aidl b/telephony/java/android/telephony/satellite/ISatelliteModemStateCallback.aidl
index 9ff73e2..66a20ae 100644
--- a/telephony/java/android/telephony/satellite/ISatelliteModemStateCallback.aidl
+++ b/telephony/java/android/telephony/satellite/ISatelliteModemStateCallback.aidl
@@ -27,4 +27,11 @@
* @param state The current satellite modem state.
*/
void onSatelliteModemStateChanged(in int state);
+
+ /**
+ * Indicates that the satellite emergency mode has changed.
+ *
+ * @param isEmergency True means satellite enabled for emergency mode, false otherwise.
+ */
+ void onEmergencyModeChanged(in boolean isEmergency);
}
diff --git a/telephony/java/android/telephony/satellite/SatelliteManager.java b/telephony/java/android/telephony/satellite/SatelliteManager.java
index 4b83b65..0bd9270 100644
--- a/telephony/java/android/telephony/satellite/SatelliteManager.java
+++ b/telephony/java/android/telephony/satellite/SatelliteManager.java
@@ -1531,6 +1531,12 @@
executor.execute(() -> Binder.withCleanCallingIdentity(() ->
callback.onSatelliteModemStateChanged(state)));
}
+
+ @Override
+ public void onEmergencyModeChanged(boolean isEmergency) {
+ executor.execute(() -> Binder.withCleanCallingIdentity(() ->
+ callback.onEmergencyModeChanged(isEmergency)));
+ }
};
sSatelliteModemStateCallbackMap.put(callback, internalCallback);
return telephony.registerForSatelliteModemStateChanged(mSubId, internalCallback);
diff --git a/telephony/java/android/telephony/satellite/SatelliteModemStateCallback.java b/telephony/java/android/telephony/satellite/SatelliteModemStateCallback.java
index 8d33c88..423a785 100644
--- a/telephony/java/android/telephony/satellite/SatelliteModemStateCallback.java
+++ b/telephony/java/android/telephony/satellite/SatelliteModemStateCallback.java
@@ -35,4 +35,14 @@
*/
@FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
void onSatelliteModemStateChanged(@SatelliteManager.SatelliteModemState int state);
+
+ /**
+ * Called when the satellite emergency mode has changed.
+ *
+ * @param isEmergency {@code true} enabled for emergency mode, {@code false} otherwise.
+ *
+ * @hide
+ */
+ @FlaggedApi(Flags.FLAG_CARRIER_ROAMING_NB_IOT_NTN)
+ default void onEmergencyModeChanged(boolean isEmergency) {};
}