Caused by: java.lang.SecurityException: Permission Denial: reading com.androi...

    本文出自:http://androidkaifa.com/thread-2614-1-1.html

   欢迎转载,转载请注明出自:安卓开发网 

 在网络上找了一段代码运行一下,出现下面的错误:
  1. 12-18 07:12:34.232: E/AndroidRuntime(23763): FATAL EXCEPTION: main
  2. 12-18 07:12:34.232: E/AndroidRuntime(23763): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.comtacts.chuangheshiji/com.comtacts.chuangheshiji.MainActivity}: java.lang.SecurityException: Permission Denial: reading com.android.providers.contacts.ContactsProvider2 uri content://com.android.contacts/data/phones from pid=23763, uid=10036 requires android.permission.READ_CONTACTS
  3. 12-18 07:12:34.232: E/AndroidRuntime(23763):         at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)
  4. 12-18 07:12:34.232: E/AndroidRuntime(23763):         at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
  5. 12-18 07:12:34.232: E/AndroidRuntime(23763):         at android.app.ActivityThread.access$2300(ActivityThread.java:125)
  6. 12-18 07:12:34.232: E/AndroidRuntime(23763):         at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
  7. 12-18 07:12:34.232: E/AndroidRuntime(23763):         at android.os.Handler.dispatchMessage(Handler.java:99)
  8. 12-18 07:12:34.232: E/AndroidRuntime(23763):         at android.os.Looper.loop(Looper.java:123)
  9. 12-18 07:12:34.232: E/AndroidRuntime(23763):         at android.app.ActivityThread.main(ActivityThread.java:4627)
  10. 12-18 07:12:34.232: E/AndroidRuntime(23763):         at java.lang.reflect.Method.invokeNative(Native Method)
  11. 12-18 07:12:34.232: E/AndroidRuntime(23763):         at java.lang.reflect.Method.invoke(Method.java:521)
  12. 12-18 07:12:34.232: E/AndroidRuntime(23763):         at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
  13. 12-18 07:12:34.232: E/AndroidRuntime(23763):         at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
  14. 12-18 07:12:34.232: E/AndroidRuntime(23763):         at dalvik.system.NativeStart.main(Native Method)
  15. 12-18 07:12:34.232: E/AndroidRuntime(23763): Caused by: java.lang.SecurityException: Permission Denial: reading com.android.providers.contacts.ContactsProvider2 uri content://com.android.contacts/data/phones from pid=23763, uid=10036 requires android.permission.READ_CONTACTS
  16. 12-18 07:12:34.232: E/AndroidRuntime(23763):         at android.os.Parcel.readException(Parcel.java:1247)
  17. 12-18 07:12:34.232: E/AndroidRuntime(23763):         at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:160)
  18. 12-18 07:12:34.232: E/AndroidRuntime(23763):         at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:114)
  19. 12-18 07:12:34.232: E/AndroidRuntime(23763):         at android.content.ContentProviderProxy.bulkQueryInternal(ContentProviderNative.java:330)
  20. 12-18 07:12:34.232: E/AndroidRuntime(23763):         at android.content.ContentProviderProxy.query(ContentProviderNative.java:366)
  21. 12-18 07:12:34.232: E/AndroidRuntime(23763):         at android.content.ContentResolver.query(ContentResolver.java:245)
  22. 12-18 07:12:34.232: E/AndroidRuntime(23763):         at com.comtacts.chuangheshiji.MainActivity.getPhoneContacts(MainActivity.java:92)
  23. 12-18 07:12:34.232: E/AndroidRuntime(23763):         at com.comtacts.chuangheshiji.MainActivity.onCreate(MainActivity.java:68)
  24. 12-18 07:12:34.232: E/AndroidRuntime(23763):         at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
  25. 12-18 07:12:34.232: E/AndroidRuntime(23763):         at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
  26. 12-18 07:12:34.232: E/AndroidRuntime(23763):         ... 11 more

复制代码
看Log信息大家可以看知道是为什么了,是因为我们没在功能配置文件中添加读取还写入联系人的权限,所以解决这问题我只需要加入相应的权限即可
如果是需要添加读取的权限则是:

<manifest>....    <uses-permission android:name="android.permission.READ_CONTACTS" /></manifest>如果是要写入的权限则是:
<uses-permission android:name="android.permission.WRITE_CONTACTS" />
06-05 06:24:05.669 5900 5900 D AndroidRuntime: Shutting down VM 06-05 06:24:05.672 5900 5900 E AndroidRuntime: FATAL EXCEPTION: main 06-05 06:24:05.672 5900 5900 E AndroidRuntime: Process: com.avatr.cockpit.settings, PID: 5900 06-05 06:24:05.672 5900 5900 E AndroidRuntime: java.lang.RuntimeException: Unable to create application com.avatr.cockpit.settings.CockpitSettingsApplication: java.lang.SecurityException: Permission Denial: Component com.avatr.cockpit.settings/.service.SettingsService requests FLAG_SINGLE_USER, but app does not hold android.permission.INTERACT_ACROSS_USERS 06-05 06:24:05.672 5900 5900 E AndroidRuntime: at android.app.ActivityThread.handleBindApplication(ActivityThread.java:7107) 06-05 06:24:05.672 5900 5900 E AndroidRuntime: at android.app.ActivityThread.-$$Nest$mhandleBindApplication(Unknown Source:0) 06-05 06:24:05.672 5900 5900 E AndroidRuntime: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2305) 06-05 06:24:05.672 5900 5900 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:106) 06-05 06:24:05.672 5900 5900 E AndroidRuntime: at android.os.Looper.loopOnce(Looper.java:218) 06-05 06:24:05.672 5900 5900 E AndroidRuntime: at android.os.Looper.loop(Looper.java:307) 06-05 06:24:05.672 5900 5900 E AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:8309) 06-05 06:24:05.672 5900 5900 E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method) 06-05 06:24:05.672 5900 5900 E AndroidRuntime: at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:573) 06-05 06:24:05.672 5900 5900 E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1049) 06-05 06:24:05.672 5900 5900 E AndroidRuntime: Caused by: java.lang.SecurityException: Permission Denial: Component com.avatr.cockpit.settings/.service.SettingsService requests FLAG_SINGLE_USER, but app does not hold android.permission.INTERACT_ACROSS_USERS 06-05 06:24:05.672 5900 5900 E AndroidRuntime: at android.os.Parcel.createExceptionOrNull(Parcel.java:3079) 06-05 06:24:05.672 5900 5900 E AndroidRuntime: at android.os.Parcel.createException(Parcel.java:3063) 06-05 06:24:05.672 5900 5900 E AndroidRuntime: at android.os.Parcel.readException(Parcel.java:3046) 06-05 06:24:05.672 5900 5900 E AndroidRuntime: at android.os.Parcel.readException(Parcel.java:2988) 06-05 06:24:05.672 5900 5900 E AndroidRuntime: at android.app.IActivityManager$Stub$Proxy.startService(IActivityManager.java:6047) 06-05 06:24:05.672 5900 5900 E AndroidRuntime: at android.app.ContextImpl.startServiceCommon(ContextImpl.java:1931) 06-05 06:24:05.672 5900 5900 E AndroidRuntime: at android.app.ContextImpl.startService(ContextImpl.java:1900) 06-05 06:24:05.672 5900 5900 E AndroidRuntime: at android.content.ContextWrapper.startService(ContextWrapper.java:825) 06-05 06:24:05.672 5900 5900 E AndroidRuntime: at com.avatr.cockpit.settings.CockpitSettingsApplication.onCreate(CockpitSettingsApplication.java:20) 06-05 06:24:05.672 5900 5900 E AndroidRuntime: at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1316) 06-05 06:24:05.672 5900 5900 E AndroidRuntime: at android.app.ActivityThread.handleBindApplication(ActivityThread.java:7102) 06-05 06:24:05.672 5900 5900 E AndroidRuntime: ... 9 more 06-05 06:24:05.672 5900 5900 E AndroidRuntime: Caused by: android.os.RemoteException: Remote stack trace: 06-05 06:24:05.672 5900 5900 E AndroidRuntime: at com.android.server.am.ActivityManagerService.isSingleton(ActivityManagerService.java:13546) 06-05 06:24:05.672 5900 5900 E AndroidRuntime: at com.android.server.am.ActiveServices.retrieveServiceLocked(ActiveServices.java:4394) 06-05 06:24:05.672 5900 5900 E AndroidRuntime: at com.android.server.am.ActiveServices.startServiceLocked(ActiveServices.java:833) 06-05 06:24:05.672 5900 5900 E AndroidRuntime: at com.android.server.am.ActiveServices.startServiceLocked(ActiveServices.java:794) 06-05 06:24:05.672 5900 5900 E AndroidRuntime: at com.android.server.am.ActivityManagerService.startService(ActivityManagerService.java:13415) 06-05 06:24:05.672 5900 5900 E AndroidRuntime:
06-07
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值