Loading core/java/android/telephony/PhoneStateListener.java +6 −0 Original line number Diff line number Diff line Loading @@ -37,6 +37,7 @@ import android.telephony.TelephonyManager.EmergencyCallbackModeType; import android.telephony.emergency.EmergencyNumber; import android.telephony.ims.ImsReasonInfo; import android.telephony.ims.MediaQualityStatus; import android.telephony.satellite.NtnSignalStrength; import com.android.internal.annotations.VisibleForTesting; import com.android.internal.telephony.IPhoneStateListener; Loading Loading @@ -1706,6 +1707,11 @@ public class PhoneStateListener { @NetworkRegistrationInfo.ServiceType int[] availableServices) { // not supported on the deprecated interface - Use TelephonyCallback instead } public final void onCarrierRoamingNtnSignalStrengthChanged( @NonNull NtnSignalStrength ntnSignalStrength) { // not supported on the deprecated interface - Use TelephonyCallback instead } } private void log(String s) { Loading core/java/android/telephony/TelephonyCallback.java +33 −1 Original line number Diff line number Diff line Loading @@ -30,6 +30,7 @@ import android.telephony.emergency.EmergencyNumber; import android.telephony.ims.ImsReasonInfo; import android.telephony.ims.MediaQualityStatus; import android.telephony.ims.MediaThreshold; import android.telephony.satellite.NtnSignalStrength; import android.util.Log; import com.android.internal.annotations.VisibleForTesting; Loading Loading @@ -694,6 +695,15 @@ public class TelephonyCallback { */ public static final int EVENT_CARRIER_ROAMING_NTN_AVAILABLE_SERVICES_CHANGED = 44; /** * Event for listening to carrier roaming non-terrestrial network signal strength changes. * * @see CarrierRoamingNtnModeListener * * @hide */ public static final int EVENT_CARRIER_ROAMING_NTN_SIGNAL_STRENGTH_CHANGED = 45; /** * @hide */ Loading Loading @@ -741,7 +751,8 @@ public class TelephonyCallback { EVENT_SIMULTANEOUS_CELLULAR_CALLING_SUBSCRIPTIONS_CHANGED, EVENT_CARRIER_ROAMING_NTN_MODE_CHANGED, EVENT_CARRIER_ROAMING_NTN_ELIGIBLE_STATE_CHANGED, EVENT_CARRIER_ROAMING_NTN_AVAILABLE_SERVICES_CHANGED EVENT_CARRIER_ROAMING_NTN_AVAILABLE_SERVICES_CHANGED, EVENT_CARRIER_ROAMING_NTN_SIGNAL_STRENGTH_CHANGED }) @Retention(RetentionPolicy.SOURCE) public @interface TelephonyEvent { Loading Loading @@ -1805,6 +1816,14 @@ public class TelephonyCallback { */ default void onCarrierRoamingNtnAvailableServicesChanged( @NetworkRegistrationInfo.ServiceType List<Integer> availableServices) {} /** * Callback invoked when carrier roaming non-terrestrial network signal strength changes. * * @param ntnSignalStrength non-terrestrial network signal strength. */ default void onCarrierRoamingNtnSignalStrengthChanged( @NonNull NtnSignalStrength ntnSignalStrength) {} } /** Loading Loading @@ -2270,5 +2289,18 @@ public class TelephonyCallback { Binder.withCleanCallingIdentity(() -> mExecutor.execute( () -> listener.onCarrierRoamingNtnAvailableServicesChanged(ServiceList))); } public void onCarrierRoamingNtnSignalStrengthChanged( @NonNull NtnSignalStrength ntnSignalStrength) { if (!Flags.carrierRoamingNbIotNtn()) return; CarrierRoamingNtnModeListener listener = (CarrierRoamingNtnModeListener) mTelephonyCallbackWeakRef.get(); if (listener == null) return; Binder.withCleanCallingIdentity(() -> mExecutor.execute( () -> listener.onCarrierRoamingNtnSignalStrengthChanged(ntnSignalStrength))); } } } core/java/android/telephony/TelephonyRegistryManager.java +19 −0 Original line number Diff line number Diff line Loading @@ -47,6 +47,7 @@ import android.telephony.emergency.EmergencyNumber; import android.telephony.ims.ImsCallSession; import android.telephony.ims.ImsReasonInfo; import android.telephony.ims.MediaQualityStatus; import android.telephony.satellite.NtnSignalStrength; import android.telephony.satellite.SatelliteStateChangeListener; import android.util.ArrayMap; import android.util.ArraySet; Loading Loading @@ -1136,6 +1137,23 @@ public class TelephonyRegistryManager { } } /** * Notify external listeners that carrier roaming non-terrestrial network * signal strength changed. * @param subId subscription ID. * @param ntnSignalStrength non-terrestrial network signal strength. * @hide */ public final void notifyCarrierRoamingNtnSignalStrengthChanged(int subId, @NonNull NtnSignalStrength ntnSignalStrength) { try { sRegistry.notifyCarrierRoamingNtnSignalStrengthChanged(subId, ntnSignalStrength); } catch (RemoteException ex) { // system server crash throw ex.rethrowFromSystemServer(); } } /** * Processes potential event changes from the provided {@link TelephonyCallback}. * Loading Loading @@ -1293,6 +1311,7 @@ public class TelephonyRegistryManager { eventList.add(TelephonyCallback.EVENT_CARRIER_ROAMING_NTN_MODE_CHANGED); eventList.add(TelephonyCallback.EVENT_CARRIER_ROAMING_NTN_ELIGIBLE_STATE_CHANGED); eventList.add(TelephonyCallback.EVENT_CARRIER_ROAMING_NTN_AVAILABLE_SERVICES_CHANGED); eventList.add(TelephonyCallback.EVENT_CARRIER_ROAMING_NTN_SIGNAL_STRENGTH_CHANGED); } return eventList; } Loading core/java/com/android/internal/telephony/IPhoneStateListener.aidl +2 −0 Original line number Diff line number Diff line Loading @@ -27,6 +27,7 @@ import android.telephony.PhoneCapability; import android.telephony.PhysicalChannelConfig; import android.telephony.PreciseCallState; import android.telephony.PreciseDataConnectionState; import android.telephony.satellite.NtnSignalStrength; import android.telephony.ServiceState; import android.telephony.SignalStrength; import android.telephony.emergency.EmergencyNumber; Loading Loading @@ -85,4 +86,5 @@ oneway interface IPhoneStateListener { void onCarrierRoamingNtnModeChanged(in boolean active); void onCarrierRoamingNtnEligibleStateChanged(in boolean eligible); void onCarrierRoamingNtnAvailableServicesChanged(in int[] availableServices); void onCarrierRoamingNtnSignalStrengthChanged(in NtnSignalStrength ntnSignalStrength); } core/java/com/android/internal/telephony/ITelephonyRegistry.aidl +3 −0 Original line number Diff line number Diff line Loading @@ -29,6 +29,7 @@ import android.telephony.ims.ImsReasonInfo; import android.telephony.PhoneCapability; import android.telephony.PhysicalChannelConfig; import android.telephony.PreciseDataConnectionState; import android.telephony.satellite.NtnSignalStrength; import android.telephony.ServiceState; import android.telephony.SignalStrength; import android.telephony.emergency.EmergencyNumber; Loading Loading @@ -125,8 +126,10 @@ interface ITelephonyRegistry { void notifyCarrierRoamingNtnModeChanged(int subId, in boolean active); void notifyCarrierRoamingNtnEligibleStateChanged(int subId, in boolean eligible); void notifyCarrierRoamingNtnAvailableServicesChanged(int subId, in int[] availableServices); void notifyCarrierRoamingNtnSignalStrengthChanged(int subId, in NtnSignalStrength ntnSignalStrength); void addSatelliteStateChangeListener(ISatelliteStateChangeListener listener, String pkg, String featureId); void removeSatelliteStateChangeListener(ISatelliteStateChangeListener listener, String pkg); void notifySatelliteStateChanged(boolean isEnabled); } Loading
core/java/android/telephony/PhoneStateListener.java +6 −0 Original line number Diff line number Diff line Loading @@ -37,6 +37,7 @@ import android.telephony.TelephonyManager.EmergencyCallbackModeType; import android.telephony.emergency.EmergencyNumber; import android.telephony.ims.ImsReasonInfo; import android.telephony.ims.MediaQualityStatus; import android.telephony.satellite.NtnSignalStrength; import com.android.internal.annotations.VisibleForTesting; import com.android.internal.telephony.IPhoneStateListener; Loading Loading @@ -1706,6 +1707,11 @@ public class PhoneStateListener { @NetworkRegistrationInfo.ServiceType int[] availableServices) { // not supported on the deprecated interface - Use TelephonyCallback instead } public final void onCarrierRoamingNtnSignalStrengthChanged( @NonNull NtnSignalStrength ntnSignalStrength) { // not supported on the deprecated interface - Use TelephonyCallback instead } } private void log(String s) { Loading
core/java/android/telephony/TelephonyCallback.java +33 −1 Original line number Diff line number Diff line Loading @@ -30,6 +30,7 @@ import android.telephony.emergency.EmergencyNumber; import android.telephony.ims.ImsReasonInfo; import android.telephony.ims.MediaQualityStatus; import android.telephony.ims.MediaThreshold; import android.telephony.satellite.NtnSignalStrength; import android.util.Log; import com.android.internal.annotations.VisibleForTesting; Loading Loading @@ -694,6 +695,15 @@ public class TelephonyCallback { */ public static final int EVENT_CARRIER_ROAMING_NTN_AVAILABLE_SERVICES_CHANGED = 44; /** * Event for listening to carrier roaming non-terrestrial network signal strength changes. * * @see CarrierRoamingNtnModeListener * * @hide */ public static final int EVENT_CARRIER_ROAMING_NTN_SIGNAL_STRENGTH_CHANGED = 45; /** * @hide */ Loading Loading @@ -741,7 +751,8 @@ public class TelephonyCallback { EVENT_SIMULTANEOUS_CELLULAR_CALLING_SUBSCRIPTIONS_CHANGED, EVENT_CARRIER_ROAMING_NTN_MODE_CHANGED, EVENT_CARRIER_ROAMING_NTN_ELIGIBLE_STATE_CHANGED, EVENT_CARRIER_ROAMING_NTN_AVAILABLE_SERVICES_CHANGED EVENT_CARRIER_ROAMING_NTN_AVAILABLE_SERVICES_CHANGED, EVENT_CARRIER_ROAMING_NTN_SIGNAL_STRENGTH_CHANGED }) @Retention(RetentionPolicy.SOURCE) public @interface TelephonyEvent { Loading Loading @@ -1805,6 +1816,14 @@ public class TelephonyCallback { */ default void onCarrierRoamingNtnAvailableServicesChanged( @NetworkRegistrationInfo.ServiceType List<Integer> availableServices) {} /** * Callback invoked when carrier roaming non-terrestrial network signal strength changes. * * @param ntnSignalStrength non-terrestrial network signal strength. */ default void onCarrierRoamingNtnSignalStrengthChanged( @NonNull NtnSignalStrength ntnSignalStrength) {} } /** Loading Loading @@ -2270,5 +2289,18 @@ public class TelephonyCallback { Binder.withCleanCallingIdentity(() -> mExecutor.execute( () -> listener.onCarrierRoamingNtnAvailableServicesChanged(ServiceList))); } public void onCarrierRoamingNtnSignalStrengthChanged( @NonNull NtnSignalStrength ntnSignalStrength) { if (!Flags.carrierRoamingNbIotNtn()) return; CarrierRoamingNtnModeListener listener = (CarrierRoamingNtnModeListener) mTelephonyCallbackWeakRef.get(); if (listener == null) return; Binder.withCleanCallingIdentity(() -> mExecutor.execute( () -> listener.onCarrierRoamingNtnSignalStrengthChanged(ntnSignalStrength))); } } }
core/java/android/telephony/TelephonyRegistryManager.java +19 −0 Original line number Diff line number Diff line Loading @@ -47,6 +47,7 @@ import android.telephony.emergency.EmergencyNumber; import android.telephony.ims.ImsCallSession; import android.telephony.ims.ImsReasonInfo; import android.telephony.ims.MediaQualityStatus; import android.telephony.satellite.NtnSignalStrength; import android.telephony.satellite.SatelliteStateChangeListener; import android.util.ArrayMap; import android.util.ArraySet; Loading Loading @@ -1136,6 +1137,23 @@ public class TelephonyRegistryManager { } } /** * Notify external listeners that carrier roaming non-terrestrial network * signal strength changed. * @param subId subscription ID. * @param ntnSignalStrength non-terrestrial network signal strength. * @hide */ public final void notifyCarrierRoamingNtnSignalStrengthChanged(int subId, @NonNull NtnSignalStrength ntnSignalStrength) { try { sRegistry.notifyCarrierRoamingNtnSignalStrengthChanged(subId, ntnSignalStrength); } catch (RemoteException ex) { // system server crash throw ex.rethrowFromSystemServer(); } } /** * Processes potential event changes from the provided {@link TelephonyCallback}. * Loading Loading @@ -1293,6 +1311,7 @@ public class TelephonyRegistryManager { eventList.add(TelephonyCallback.EVENT_CARRIER_ROAMING_NTN_MODE_CHANGED); eventList.add(TelephonyCallback.EVENT_CARRIER_ROAMING_NTN_ELIGIBLE_STATE_CHANGED); eventList.add(TelephonyCallback.EVENT_CARRIER_ROAMING_NTN_AVAILABLE_SERVICES_CHANGED); eventList.add(TelephonyCallback.EVENT_CARRIER_ROAMING_NTN_SIGNAL_STRENGTH_CHANGED); } return eventList; } Loading
core/java/com/android/internal/telephony/IPhoneStateListener.aidl +2 −0 Original line number Diff line number Diff line Loading @@ -27,6 +27,7 @@ import android.telephony.PhoneCapability; import android.telephony.PhysicalChannelConfig; import android.telephony.PreciseCallState; import android.telephony.PreciseDataConnectionState; import android.telephony.satellite.NtnSignalStrength; import android.telephony.ServiceState; import android.telephony.SignalStrength; import android.telephony.emergency.EmergencyNumber; Loading Loading @@ -85,4 +86,5 @@ oneway interface IPhoneStateListener { void onCarrierRoamingNtnModeChanged(in boolean active); void onCarrierRoamingNtnEligibleStateChanged(in boolean eligible); void onCarrierRoamingNtnAvailableServicesChanged(in int[] availableServices); void onCarrierRoamingNtnSignalStrengthChanged(in NtnSignalStrength ntnSignalStrength); }
core/java/com/android/internal/telephony/ITelephonyRegistry.aidl +3 −0 Original line number Diff line number Diff line Loading @@ -29,6 +29,7 @@ import android.telephony.ims.ImsReasonInfo; import android.telephony.PhoneCapability; import android.telephony.PhysicalChannelConfig; import android.telephony.PreciseDataConnectionState; import android.telephony.satellite.NtnSignalStrength; import android.telephony.ServiceState; import android.telephony.SignalStrength; import android.telephony.emergency.EmergencyNumber; Loading Loading @@ -125,8 +126,10 @@ interface ITelephonyRegistry { void notifyCarrierRoamingNtnModeChanged(int subId, in boolean active); void notifyCarrierRoamingNtnEligibleStateChanged(int subId, in boolean eligible); void notifyCarrierRoamingNtnAvailableServicesChanged(int subId, in int[] availableServices); void notifyCarrierRoamingNtnSignalStrengthChanged(int subId, in NtnSignalStrength ntnSignalStrength); void addSatelliteStateChangeListener(ISatelliteStateChangeListener listener, String pkg, String featureId); void removeSatelliteStateChangeListener(ISatelliteStateChangeListener listener, String pkg); void notifySatelliteStateChanged(boolean isEnabled); }