Android 10获得IMS注册状态
我正在尝试通过Android应用程序访问IMS注册状态。目前,对于Android<10,我使用反射来访问状态:Android 10获得IMS注册状态,android,android-10.0,Android,Android 10.0,我正在尝试通过Android应用程序访问IMS注册状态。目前,对于Android
TelephonyManager tm = (TelephonyManager) app.getSystemService(app.getBaseContext().TELEPHONY_SERVICE);
Class c = Class.forName(tm.getClass().getName());
Method m = c.getDeclaredMethod("isImsRegistered");
m.setAccessible(true);
boolean imsRegisterd = m.invoke(tm);
显然,这在Android 10上不起作用:
不幸的是,我不知道如何使用它。我搜索了各种网页,但没有找到任何示例来获取ImsMmTelManager的实例或注册回调。一些线程说用@SystemApi注释的类无论如何都是不可访问的,所以我想知道我是否可以用这些回调来实现。基本上,我只想知道设备是否通过IMS注册。如果方便的话,我也可以通过亚洲开发银行向州政府提出申请
谢谢你的建议
Landroid/telephony/TelephonyManager;->isImsRegistered()Z # SystemAPI ImsMmTelManager#registerImsRegistrationCallback to listen IMS registration state change