代码一摸一样,怎么就运行不了呢?
发表在Android图书答疑 2018-01-18 《Android从入门到精通(第2版)》第11章 ContentProvider实现数据共享 354页-355页
是否精华
版块置顶:

老师,怎么一摸一样的代码,运行就出错呢?实在是找不出有哪里不同,只好发上来请教了。。。

捕获.PNG

下面是我从log中copy出来的红色部分的错误信息,老师帮我看下,这是哪里出问题了,我看不懂啊:

01-18 14:39:08.638 6252-6252/com.mingrisoft.a111_2 E/AndroidRuntime: FATAL EXCEPTION: main

Process: com.mingrisoft.a111_2, PID: 6252

java.lang.RuntimeException: Unable to start activity ComponentInfo{com.mingrisoft.a111_2/com.mingrisoft.a111_2.RetrieveDataActivity}: java.lang.SecurityException: Permission Denial: opening provider com.android.providers.contacts.ContactsProvider2 from ProcessRecord{e1e5369 6252:com.mingrisoft.a111_2/u0a87} (pid=6252, uid=10087) requires android.permission.READ_CONTACTS or android.permission.WRITE_CONTACTS

at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2665)

at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2726)

at android.app.ActivityThread.-wrap12(ActivityThread.java)

at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1477)

at android.os.Handler.dispatchMessage(Handler.java:102)

at android.os.Looper.loop(Looper.java:154)

at android.app.ActivityThread.main(ActivityThread.java:6119)

at java.lang.reflect.Method.invoke(Native Method)

at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886)

at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776)

Caused by: java.lang.SecurityException: Permission Denial: opening provider com.android.providers.contacts.ContactsProvider2 from ProcessRecord{e1e5369 6252:com.mingrisoft.a111_2/u0a87} (pid=6252, uid=10087) requires android.permission.READ_CONTACTS or android.permission.WRITE_CONTACTS

at android.os.Parcel.readException(Parcel.java:1684)

at android.os.Parcel.readException(Parcel.java:1637)

at android.app.ActivityManagerProxy.getContentProvider(ActivityManagerNative.java:4199)

at android.app.ActivityThread.acquireProvider(ActivityThread.java:5476)

at android.app.ContextImpl$ApplicationContentResolver.acquireUnstableProvider(ContextImpl.java:2239)

at android.content.ContentResolver.acquireUnstableProvider(ContentResolver.java:1517)

at android.content.ContentResolver.query(ContentResolver.java:516)

at android.content.ContentResolver.query(ContentResolver.java:474)

at com.mingrisoft.a111_2.RetrieveDataActivity.getQueryData(RetrieveDataActivity.java:26)

at com.mingrisoft.a111_2.RetrieveDataActivity.onCreate(RetrieveDataActivity.java:20)

at android.app.Activity.performCreate(Activity.java:6679)

at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1118)

at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2618)

at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2726)?

at android.app.ActivityThread.-wrap12(ActivityThread.java)?

at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1477)?

at android.os.Handler.dispatchMessage(Handler.java:102)?

at android.os.Looper.loop(Looper.java:154)?

at android.app.ActivityThread.main(ActivityThread.java:6119)?

at java.lang.reflect.Method.invoke(Native Method)?

at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886)?

at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776)?

                                                                    


2018-01-18 15:12:02编辑
分享到:
精彩评论 1
ITmens
学分:601 LV6
TA的每日心情
假期加油中
2018-08-03 21:31:23
2018-01-19
沙发

错误的原因提示是 应用权限问题 你可以打开设置里 找到应用管理 开启权限。 这本书应该是针对6.0以前的项目。

读者可以上网找找 android最新权限 相关文章。

首页上一页 1 下一页尾页 1 条记录 1/1页
手机同步功能介绍
友情提示:以下图书配套资源能够实现手机同步功能
明日微信公众号
明日之星 明日之星编程特训营
客服热线(每日9:00-17:00)
400 675 1066
mingrisoft@mingrisoft.com
吉林省明日科技有限公司Copyright ©2007-2022,mingrisoft.com, All Rights Reserved长春市北湖科技开发区盛北大街3333号长春北湖科技园项目一期A10号楼四、五层
吉ICP备10002740号-2吉公网安备22010202000132经营性网站备案信息 营业执照