2012-09-14 38 views
0

我在清單文件中寫了這個權限:的Android 3G許可

</application> 
    <uses-permission android:name="android.permission.CALL_PHONE"></uses-permission> 
    <uses-permission android:name="android.permission.READ_CONTACTS" /> 
    <uses-feature android:name="android.hardware.wifi" /> 
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> 
    <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" /> 
    <uses-permission android:name="android.permission.WAKE_LOCK" /> 
    <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE"/> 
    <uses-permission android:name="android.permission.MODIFY_PHONE_STATE" /> 
    <uses-permission android:name="android.permission.UPDATE_DEVICE_STATS" /> 
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
    <uses-permission android:name="android.permission.READ_PHONE_STATE" /> 
</manifest> 

,當我啓動它寫的應用程序:從它 在logcat中只見線「unfortanely應用程序停止」,並退出了程序失敗是:

Class conmanClass; 
Field iConnectivityManagerField; 
iConnectivityManagerField = conmanClass.getDeclaredField("mService"); 

有什麼問題嗎?誰能幫我解決它嗎?

這是logcat的:

09-14 09:11:49.493: E/AndroidRuntime(1669): FATAL EXCEPTION: main 
09-14 09:11:49.493: E/AndroidRuntime(1669): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.voicerecognitiondemo/com.example.voicerecognitiondemo.VoiceRecognitionDemo}: java.lang.NullPointerException 
09-14 09:11:49.493: E/AndroidRuntime(1669):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1956) 
09-14 09:11:49.493: E/AndroidRuntime(1669):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1981) 
09-14 09:11:49.493: E/AndroidRuntime(1669):  at android.app.ActivityThread.access$600(ActivityThread.java:123) 
09-14 09:11:49.493: E/AndroidRuntime(1669):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1147) 
09-14 09:11:49.493: E/AndroidRuntime(1669):  at android.os.Handler.dispatchMessage(Handler.java:99) 
09-14 09:11:49.493: E/AndroidRuntime(1669):  at android.os.Looper.loop(Looper.java:137) 
09-14 09:11:49.493: E/AndroidRuntime(1669):  at android.app.ActivityThread.main(ActivityThread.java:4424) 
09-14 09:11:49.493: E/AndroidRuntime(1669):  at java.lang.reflect.Method.invokeNative(Native Method) 
09-14 09:11:49.493: E/AndroidRuntime(1669):  at java.lang.reflect.Method.invoke(Method.java:511) 
09-14 09:11:49.493: E/AndroidRuntime(1669):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784) 
09-14 09:11:49.493: E/AndroidRuntime(1669):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551) 
09-14 09:11:49.493: E/AndroidRuntime(1669):  at dalvik.system.NativeStart.main(Native Method) 
09-14 09:11:49.493: E/AndroidRuntime(1669): Caused by: java.lang.NullPointerException 
09-14 09:11:49.493: E/AndroidRuntime(1669):  at com.example.voicerecognitiondemo.VoiceRecognitionDemo.onCreate(VoiceRecognitionDemo.java:55) 
09-14 09:11:49.493: E/AndroidRuntime(1669):  at android.app.Activity.performCreate(Activity.java:4465) 
09-14 09:11:49.493: E/AndroidRuntime(1669):  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1049) 
09-14 09:11:49.493: E/AndroidRuntime(1669):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1920) 
09-14 09:11:49.493: E/AndroidRuntime(1669):  ... 11 more 
+0

我將logcat添加到原始文章 –

+1

將代碼發佈到VoiceRecognitionDemo.onCreate(VoiceRecognitionDemo.java:55)。你應該檢查哪些變量是在這條線 – nandeesh

+0

行55空是:「\t \t \t iConnectivityManagerField = conmanClass.getDeclaredField(‘MSERVICE’); 」上的OnCreate function..i花了很多時間序上懸而未決的問題,還沒有找到它......我希望這裏的某個人能幫助我 –

回答

1

看來你忘了初始化Class conmanClass;做到這一點,再試一次 這樣

conmanClass=new Class(); //如果你正在使用默認的構造函數,然後其他人使用正確的constroctor初始化您conmanClass