Android主屏幕快捷方式权限错误

在我的程序中,它添加了一个快捷方式到屏幕上。 我在屏幕上的图标很好,但是当我点击它的时候,我得到:

03-01 20:00:29.410: ERROR/AndroidRuntime(796): java.lang.SecurityException: Permission Denial: starting Intent { data=http://www.example.com/ flags=0x14000000 comp={com.isaacwaller.example/com.isaacwaller.example.ExampleCut} } from ProcessRecord{435c7398 796:android.process.acore/10005} (pid=796, uid=10005) requires null 

你知道这个问题吗? 谢谢,
艾萨克

  • 转到我的应用程序的权限屏幕
  • 如何在运行时检查授权许可?
  • 在设备上debugging时授予Android应用程序android.permission.INTERNET权限
  • Android自定义权限 - 棉花糖
  • 阅读未经许可的联系人?
  • android createTempFile抛出权限被拒绝?
  • 尝试访问Android中的联系人时拒绝访问权限
  • 要使用Android位置pipe理器权限
  • 当我不小心复制清单中的某个活动的活动标记时,发生了类似的情况。 我在应用程序部分有这样的东西。

     <activity android:name=".ConventionHome" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name="ConventionHome"></activity> 

    当我删除第二个活动标签,事情开始正常工作。

    找出它,在<activity>标签下添加这个activity:

     <intent-filter> <action android:name="android.intent.action.MAIN"></action> </intent-filter> 

    像这样的东西应该工作:

     <intent-filter> <action android:name="com.example.Project.Action"/> <category android:name="android.intent.category.DEFAULT"/> </intent-filter> 

    在清单中的Activity声明中。

    我也遇到了这个问题,事实certificate这是因为Activity没有暴露给其他进程。 我必须将android:exported =“true”属性添加到清单中的activity标签。

    有关更多信息,请参阅http://developer.android.com/guide/topics/manifest/activity-element.html#exported

    我个人没有遇到这个问题,但是我做了一些研究,发现了以下内容。

    显然无论试图调用你的应用程序,或者如果你的应用程序有一个调用来创build一个意图,并启动一些意图的活动UID是不一样的。

    在ActivityManagerServer.java中有以下判断。

     int checkComponentPermission(String permission, int pid, int uid, int reqUid) // If the target requires a specific UID, always fail for others. if (reqUid >= 0 && uid != reqUid) { return PackageManager.PERMISSION_DENIED; } 

    我将对此进行一些testing,看看是否可以在testing应用程序中重现此问题,并提供任何其他反馈。

    确保你只是试图通过任何意图援引公开曝光的活动。