我最近开始学习Android开发。
我制作了两个应用: PermissionsApp 和 DangerousApp 。 后者(DangerousApp)在清单文件中定义了自己的权限,如下所示:
<permission
android:name="course.labs.permissions.DANGEROUS_ACTIVITY_PERM"
android:protectionLevel="dangerous"
android:label="Dangerous Activity" />
它还会在活动代码中自行执行此权限:
<application
android:permission="course.labs.permissions.DANGEROUS_ACTIVITY_PERM"
...>
前者(PermissionsApp)在其自己的清单文件中使用它,如下所示:
<uses-permission android:name="course.labs.permissions.DANGEROUS_ACTIVITY_PERM"/>
PermissionsApp 因此能够从内部启动 DangerousApp 。但是,我无法从应用程序列表(启动器?)直接启动 DangerousApp 。 LogCat显示抛出了一个安全异常,其中启动器没有权限。
有关为何会出现这种情况的任何解释?
答案 0 :(得分:3)
但是,我无法从应用程序列表(启动器?)直接启动DangerousApp。
正确。
有关为何会出现这种情况的任何解释?
主屏幕没有<uses-permission>
的{{1}}元素。您已声明应用程序中的每个组件都受该权限的保护,其中包括您的启动器活动。