Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 理由是;拒绝许可:接收意图“;_Android_Android Intent_Android C2dm - Fatal编程技术网

Android 理由是;拒绝许可:接收意图“;

Android 理由是;拒绝许可:接收意图“;,android,android-intent,android-c2dm,Android,Android Intent,Android C2dm,我成功地在我的应用程序上实现了这些c2dm 当设备没有突然接收到c2dm消息时,我有一个问题。 这一次,它给了我拒绝许可的权利,我对此感到困惑: 权限拒绝:接收意图{ act=com.google.android.c2dm.intent.REGISTRATION cat=[myapp.android] (有附加项)}到myapp.android需要 myapp.android.permission.C2D_因发件人而发送的邮件 com.google.android.location(uid 10

我成功地在我的应用程序上实现了这些c2dm

当设备没有突然接收到c2dm消息时,我有一个问题。 这一次,它给了我拒绝许可的权利,我对此感到困惑:

权限拒绝:接收意图{
act=com.google.android.c2dm.intent.REGISTRATION cat=[myapp.android] (有附加项)}到myapp.android需要 myapp.android.permission.C2D_因发件人而发送的邮件 com.google.android.location(uid 10037)

第二次发生在我身上,我不能告诉我的用户,当他们没有收到任何命令时,他们需要执行工厂重置。 这里有人遇到过类似的问题吗?任何帮助、见解和原因都将不胜感激

根据请求manifest.xml



。。。



您还需要像这样在清单中定义权限,因为它不是系统权限,而是特定于您的应用程序的权限:

<permission android:name="myapp.android.gms.permission.C2D_MESSAGE" />


如果你已经有了,它可能是一个特定设备中的错误或相关谷歌库的旧版本,等等。在这种情况下你做不了多少

即使在清单中定义了权限,我也遇到了同样的问题

这似乎与protectionLevel=“signature”有关,并且当使用生产密钥与调试密钥重新安装应用程序时,权限定义已损坏


对我来说,修复它的方法是临时设置protectionLevel=“normal”,然后重新安装该应用程序,然后改回“signature”并重新安装。

对我来说,在我将其定义为以下内容后,它工作了:

<permission android:name="mypkg.permission.C2D_MESSAGE" android:protectionLevel="signature"/>
<uses-permission android:name="mypkg.permission.C2D_MESSAGE"/>


其中mypkg=是我的应用程序包

你好,Elenkov。我没有定义,试试看。如果我没有定义它,我突然无法接收通知?另外,我不使用gsm网络。。。谢谢你的帮助当你正确定义它时,它能工作吗?不确定GSM网络是如何关联的。。。该问题是否在特定设备和/或Android版本上出现?请立即尝试。当它定义时,程序正常工作。这个问题只发生过一次,Android版本和设备并不是只有一个。哇,它对我有用。从评论中可以看出,这可能是一些特定设备中的一个bug!
<permission android:name="myapp.android.gms.permission.C2D_MESSAGE" />
<permission android:name="mypkg.permission.C2D_MESSAGE" android:protectionLevel="signature"/>
<uses-permission android:name="mypkg.permission.C2D_MESSAGE"/>