我在Android中遇到了一些奇怪的问题。我想获取一个特定用户的谷歌日历列表,但首先我需要让他们选择该帐户。
我在清单中加入了这一行:
<uses-permission android:name="android.permission.GET_ACCOUNTS"></uses-permission>
但是我收到了这个错误:
12-26 03:26:31.004 13841 13841 E AndroidRuntime: java.lang.RuntimeException: Unable to start activity ComponentInfo{....}: java.lang.SecurityException: caller uid 10105 lacks any of android.permission.GET_ACCOUNTS
我曾尝试使用READ_CALENDAR
和WRITE_CALENDAR
来访问未记录的Calendar API,但我有类似的例外情况(虽然可能出于不同的原因 - 我认为值得一提的是它不是。)
请告诉我我做错了什么!
谢谢!
答案 0 :(得分:20)
您的<uses-permission>
位置错误(应该是<manifest>
的孩子和<application>
的同行),或GET_ACCOUNTS
不是SDK应用的权限能把持住。该文档非常糟糕,指出哪些权限适用于SDK应用程序。
答案 1 :(得分:2)
同样存在同样的问题,将AndroidManifest.xml中的目标SDK版本更改为更高版本(19)。在我的情况下,清单中的目标SDK版本是17,相当于Android 4.2.2,后者又与我的HTC One上的版本相匹配。但是在更改之后,联系人的Phonegap插件工作正常。