我刚刚升级到新版本的gmail(v2.3.5),我有一个应用程序查询内容提供商,以获取有关收到消息的联系人的详细信息……
使用最新版本我收到以下错误:
java.lang.SecurityException: Permission Denial: opening provider com.google.android.gm.provider.MailProvider from ProcessRecord{40adef58 3576:com.rageconsulting.android.lightflow/10056} (pid=3576, uid=10056) requires com.google.android.gm.permission.READ_GMAIL or com.google.android.gm.permission.WRITE_GMAIL`
对于我的清单中的gmail,我声明了以下内容:
<!--permissions for gmail-->
<uses-permission android:name="com.google.android.googleapps.permission.GOOGLE_AUTH"/>
<uses-permission android:name="android.permission.GET_ACCOUNTS"/>
<uses-permission android:name="com.google.android.providers.gmail.permission.READ_GMAIL"/>
<uses-permission android:name="com.google.android.gm.permission.READ_GMAIL"/>
<uses-permission android:name="com.google.android.gm.permission.WRITE_GMAIL"/>
所以据我所知,我的权限是正确的.
我的gmail接收器如下所示:
<receiver android:name=".receiver.GmailReceiver">
<intent-filter>
<action android:name="android.intent.action.PROVIDER_CHANGED" android:priority="-10">
</action>
<data android:scheme="content" android:host="gmail-ls" android:pathPattern="/unread/.*">
</data>
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.PROVIDER_CHANGED" android:priority="-10">
</action>
<data android:mimeType="*/*" android:scheme="content" android:host="gmail-ls" android:path="/unread/^i">
</data>
</intent-filter>
</receiver>
谁能想到我可能错过的东西?
解决方法:
谷歌出于“安全原因”打破了它.看到这个支持线程:
http://www.google.com/support/forum/p/gmail/thread?fid=1728955d050a12bd0004a9339272acdb&hl=en
你需要回到2.3.5之前的版本,即2.3.4.1
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。