首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > 移动开发 >

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

2012-12-27 
Caused by: java.lang.SecurityException: Permission Denial: reading com.androi...本文出自:http://and

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

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

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

 在网络上找了一段代码运行一下,出现下面的错误:
    12-18 07:12:34.232: E/AndroidRuntime(23763): FATAL EXCEPTION: main
    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
    12-18 07:12:34.232: E/AndroidRuntime(23763):         at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)
    12-18 07:12:34.232: E/AndroidRuntime(23763):         at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
    12-18 07:12:34.232: E/AndroidRuntime(23763):         at android.app.ActivityThread.access$2300(ActivityThread.java:125)
    12-18 07:12:34.232: E/AndroidRuntime(23763):         at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
    12-18 07:12:34.232: E/AndroidRuntime(23763):         at android.os.Handler.dispatchMessage(Handler.java:99)
    12-18 07:12:34.232: E/AndroidRuntime(23763):         at android.os.Looper.loop(Looper.java:123)
    12-18 07:12:34.232: E/AndroidRuntime(23763):         at android.app.ActivityThread.main(ActivityThread.java:4627)
    12-18 07:12:34.232: E/AndroidRuntime(23763):         at java.lang.reflect.Method.invokeNative(Native Method)
    12-18 07:12:34.232: E/AndroidRuntime(23763):         at java.lang.reflect.Method.invoke(Method.java:521)
    12-18 07:12:34.232: E/AndroidRuntime(23763):         at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
    12-18 07:12:34.232: E/AndroidRuntime(23763):         at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
    12-18 07:12:34.232: E/AndroidRuntime(23763):         at dalvik.system.NativeStart.main(Native Method)
    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
    12-18 07:12:34.232: E/AndroidRuntime(23763):         at android.os.Parcel.readException(Parcel.java:1247)
    12-18 07:12:34.232: E/AndroidRuntime(23763):         at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:160)
    12-18 07:12:34.232: E/AndroidRuntime(23763):         at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:114)
    12-18 07:12:34.232: E/AndroidRuntime(23763):         at android.content.ContentProviderProxy.bulkQueryInternal(ContentProviderNative.java:330)
    12-18 07:12:34.232: E/AndroidRuntime(23763):         at android.content.ContentProviderProxy.query(ContentProviderNative.java:366)
    12-18 07:12:34.232: E/AndroidRuntime(23763):         at android.content.ContentResolver.query(ContentResolver.java:245)
    12-18 07:12:34.232: E/AndroidRuntime(23763):         at com.comtacts.chuangheshiji.MainActivity.getPhoneContacts(MainActivity.java:92)
    12-18 07:12:34.232: E/AndroidRuntime(23763):         at com.comtacts.chuangheshiji.MainActivity.onCreate(MainActivity.java:68)
    12-18 07:12:34.232: E/AndroidRuntime(23763):         at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
    12-18 07:12:34.232: E/AndroidRuntime(23763):         at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
    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" />

热点排行