Fix NPE by initializing notification manager
- initializeSatelliteSystemNotification should be called before
registerForSatelliteProvisionStateChanged
Bug: 378782898
Test: atest SatelliteControllerTest
FLAG: com.android.internal.telephony.flags.carrier_roaming_nb_iot_ntn
Change-Id: Ib9f083a3a6c956ff50a617a0775ffa735f9c92d3
diff --git a/src/com/android/phone/satellite/accesscontrol/SatelliteAccessController.java b/src/com/android/phone/satellite/accesscontrol/SatelliteAccessController.java
index 4957225..ef169de 100644
--- a/src/com/android/phone/satellite/accesscontrol/SatelliteAccessController.java
+++ b/src/com/android/phone/satellite/accesscontrol/SatelliteAccessController.java
@@ -527,13 +527,13 @@
+ satelliteSubscriberProvisionStatus);
}
};
+ initializeSatelliteSystemNotification(context);
result = mSatelliteController.registerForSatelliteProvisionStateChanged(
mInternalSatelliteProvisionStateCallback);
plogd("registerForSatelliteProvisionStateChanged result: " + result);
// Init the SatelliteOnDeviceAccessController so that the S2 level can be cached
initSatelliteOnDeviceAccessController();
- initializeSatelliteSystemNotification(context);
registerLocationModeChangedBroadcastReceiver(context);
registerDefaultSmsAppChangedBroadcastReceiver(context);
}
@@ -1442,6 +1442,10 @@
);
notificationChannel.setSound(null, null);
mNotificationManager = context.getSystemService(NotificationManager.class);
+ if(mNotificationManager == null) {
+ ploge("initializeSatelliteSystemNotification: notificationManager is null");
+ return;
+ }
mNotificationManager.createNotificationChannel(notificationChannel);
createAvailableNotifications(context);