diff options
| -rw-r--r-- | telephony/java/android/telephony/ims/ImsRcsManager.java | 6 | ||||
| -rw-r--r-- | telephony/java/android/telephony/ims/RcsUceAdapter.java | 9 |
2 files changed, 13 insertions, 2 deletions
diff --git a/telephony/java/android/telephony/ims/ImsRcsManager.java b/telephony/java/android/telephony/ims/ImsRcsManager.java index 074aefe2e800..885ff9be550c 100644 --- a/telephony/java/android/telephony/ims/ImsRcsManager.java +++ b/telephony/java/android/telephony/ims/ImsRcsManager.java @@ -26,6 +26,7 @@ import android.content.Intent; import android.os.Binder; import android.os.IBinder; import android.os.RemoteException; +import android.os.ServiceSpecificException; import android.provider.Settings; import android.telephony.AccessNetworkConstants; import android.telephony.BinderCacheManager; @@ -198,6 +199,8 @@ public class ImsRcsManager { c.setExecutor(executor); try { imsRcsController.registerImsRegistrationCallback(mSubId, c.getBinder()); + } catch (ServiceSpecificException e) { + throw new ImsException(e.toString(), e.errorCode); } catch (RemoteException | IllegalStateException e) { throw new ImsException(e.getMessage(), ImsException.CODE_ERROR_SERVICE_UNAVAILABLE); } @@ -333,6 +336,9 @@ public class ImsRcsManager { c.setExecutor(executor); try { imsRcsController.registerRcsAvailabilityCallback(mSubId, c.getBinder()); + + } catch (ServiceSpecificException e) { + throw new ImsException(e.toString(), e.errorCode); } catch (RemoteException e) { Log.e(TAG, "Error calling IImsRcsController#registerRcsAvailabilityCallback", e); throw new ImsException("Remote IMS Service is not available", diff --git a/telephony/java/android/telephony/ims/RcsUceAdapter.java b/telephony/java/android/telephony/ims/RcsUceAdapter.java index 0aeaecc2af5e..ada069666547 100644 --- a/telephony/java/android/telephony/ims/RcsUceAdapter.java +++ b/telephony/java/android/telephony/ims/RcsUceAdapter.java @@ -27,6 +27,7 @@ import android.net.Uri; import android.os.Binder; import android.os.IBinder; import android.os.RemoteException; +import android.os.ServiceSpecificException; import android.telephony.TelephonyFrameworkInitializer; import android.telephony.ims.aidl.IImsRcsController; import android.telephony.ims.aidl.IRcsUceControllerCallback; @@ -463,6 +464,8 @@ public class RcsUceAdapter { try { imsRcsController.requestCapabilities(mSubId, mContext.getOpPackageName(), mContext.getAttributionTag(), contactNumbers, internalCallback); + } catch (ServiceSpecificException e) { + throw new ImsException(e.toString(), e.errorCode); } catch (RemoteException e) { Log.e(TAG, "Error calling IImsRcsController#requestCapabilities", e); throw new ImsException("Remote IMS Service is not available", @@ -545,6 +548,8 @@ public class RcsUceAdapter { try { imsRcsController.requestNetworkAvailability(mSubId, mContext.getOpPackageName(), mContext.getAttributionTag(), contactNumber, internalCallback); + } catch (ServiceSpecificException e) { + throw new ImsException(e.toString(), e.errorCode); } catch (RemoteException e) { Log.e(TAG, "Error calling IImsRcsController#requestNetworkAvailability", e); throw new ImsException("Remote IMS Service is not available", @@ -574,7 +579,7 @@ public class RcsUceAdapter { try { return imsRcsController.getUcePublishState(mSubId); - } catch (android.os.ServiceSpecificException e) { + } catch (ServiceSpecificException e) { throw new ImsException(e.getMessage(), e.errorCode); } catch (RemoteException e) { Log.e(TAG, "Error calling IImsRcsController#getUcePublishState", e); @@ -621,7 +626,7 @@ public class RcsUceAdapter { c.setExecutor(executor); try { imsRcsController.registerUcePublishStateCallback(mSubId, c.getBinder()); - } catch (android.os.ServiceSpecificException e) { + } catch (ServiceSpecificException e) { throw new ImsException(e.getMessage(), e.errorCode); } catch (RemoteException e) { Log.e(TAG, "Error calling IImsRcsController#registerUcePublishStateCallback", e); |