Android获取Sim State
我正试图将模拟状态打印到屏幕上。 目前我似乎无法完成它的工作。 我想要做的就是打印一张SIM卡是否被锁定。
我一直在使用这个代码
TelephonyManager manager = (TelephonyManager) Context.getSystemService(Context.TELEPHONY_SERVICE);
int state = manager.getSimState();
answer1.setText(state);
但LogCat输出是
ERROR / AndroidRuntime(213):未捕获的处理程序:由于未捕获的异常而导致主线程退出ERROR / AndroidRuntime(213):java.lang.RuntimeException:无法启动活动ComponentInfo {com.qm / com.qmQ}:java.lang.NullPointerException错误/ AndroidRuntime(213):在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2401)错误/ AndroidRuntime(213):在android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2417)错误/ AndroidRuntime(213) :at android.app.ActivityThread.access $ 2100(ActivityThread.java:116)ERROR / AndroidRuntime(213):at android.app.ActivityThread $ H.handleMessage(ActivityThread.java:1794)ERROR / AndroidRuntime(213):at android .os.Handler.dispatchMessage(Handler.java:99)ERROR / AndroidRuntime(213):at android.os.Looper.loop(Looper.java:123)ERROR / AndroidRuntime(213):at android.app.ActivityThread.main (ActivityThread.java:4203)ERROR / AndroidRuntime(213):at java.lang.reflect.Method.invokeNative(Native Method)ERROR / AndroidRuntime(213):at java.lang.re flect.Method.invoke(Method.java:521)ERROR / AndroidRuntime(213):at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:791)ERROR / AndroidRuntime(213):at com。 android.internal.os.ZygoteInit.main(ZygoteInit.java:549)ERROR / AndroidRuntime(213):at dalvik.system.NativeStart.main(Native Method)ERROR / AndroidRuntime(213):引起:java.lang.NullPointerException错误/ AndroidRuntime(213):在com.qmQonCreate(Q.java:77)错误/ AndroidRuntime(213):在android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1123)错误/ AndroidRuntime(213):在android。 app.ActivityThread.performLaunchActivity(ActivityThread.java:2364)ERROR / AndroidRuntime(213):... 11更多
77行是
TelephonyManager管理器=(TelephonyManager)
线
你似乎将一个int传递给一个需要字符串的函数。
更换
answer1.setText(state);
同
answer1.setText(Integer.toString(state));
您应该检查您是否已经在Manifest文件中设置权限READ_PHONE_STATE,并且还要调用
answer.setText(state)
你正在调用TextView的
setText(int resId)
方法,它使用提供的ID查找文本资源。
链接地址: http://www.djcxy.com/p/31423.html