diff --git a/satellite_client/src/android/telephony/satellite/wrapper/SatelliteManagerWrapper.java b/satellite_client/src/android/telephony/satellite/wrapper/SatelliteManagerWrapper.java
index 2bacdba..ff36bf5 100644
--- a/satellite_client/src/android/telephony/satellite/wrapper/SatelliteManagerWrapper.java
+++ b/satellite_client/src/android/telephony/satellite/wrapper/SatelliteManagerWrapper.java
@@ -797,9 +797,9 @@
 
   /** Registers for NTN signal strength changed from satellite modem. */
   @FlaggedApi(Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
-  @SatelliteResult public int registerForNtnSignalStrengthChanged(
+  public void registerForNtnSignalStrengthChanged(
       @NonNull @CallbackExecutor Executor executor,
-      @NonNull NtnSignalStrengthCallbackWrapper callback) {
+      @NonNull NtnSignalStrengthCallbackWrapper callback) throws SatelliteException {
     NtnSignalStrengthCallback internalCallback =
         new NtnSignalStrengthCallback() {
           @Override
@@ -809,7 +809,11 @@
           }
         };
     sNtnSignalStrengthCallbackWrapperMap.put(callback, internalCallback);
-    return mSatelliteManager.registerForNtnSignalStrengthChanged(executor, internalCallback);
+    try {
+      mSatelliteManager.registerForNtnSignalStrengthChanged(executor, internalCallback);
+    } catch (SatelliteException ex) {
+      throw ex;
+    }
   }
 
   /**
@@ -821,7 +825,11 @@
       @NonNull NtnSignalStrengthCallbackWrapper callback) {
     NtnSignalStrengthCallback internalCallback = sNtnSignalStrengthCallbackWrapperMap.get(callback);
     if (internalCallback != null) {
-      mSatelliteManager.unregisterForNtnSignalStrengthChanged(internalCallback);
+      try {
+        mSatelliteManager.unregisterForNtnSignalStrengthChanged(internalCallback);
+      } catch (Exception ex) {
+        throw ex;
+      }
     }
   }
 
