关于Android中自定义权限的几个问题
我正在学习Android编程,我已经了解了自定义权限的概念 根据我的理解,这就是自定义权限的工作原理:关于Android中自定义权限的几个问题,android,security,android-intent,android-activity,android-permissions,Android,Security,Android Intent,Android Activity,Android Permissions,我正在学习Android编程,我已经了解了自定义权限的概念 根据我的理解,这就是自定义权限的工作原理: “基本应用程序”可以通过声明自定义权限(即,在清单文件中使用标记)来保护其某些组件(例如,活动和服务),调用受自定义权限保护的活动和服务的'client app'需要获得必要的权限(即,使用清单文件中的标记)调用基本应用程序中的那些组件 但是,我对自定义权限有以下问题: 如果自定义权限被声明为危险权限(即,android:protectionLevel=“hazard”),则客户端应用程序是否
“基本应用程序”
可以通过声明自定义权限(即,在清单文件中使用
标记)来保护其某些组件(例如,活动和服务),调用受自定义权限保护的活动和服务的'client app'
需要获得必要的权限(即,使用清单文件中的
标记)调用基本应用程序中的那些组件
但是,我对自定义权限有以下问题:
如果自定义权限被声明为危险权限(即,android:protectionLevel=“hazard”
),则客户端应用程序是否需要在安装期间获得用户的批准?如果是,用户如何知道这些自定义权限,因为没有任何自定义权限文档
在安装期间,客户端应用程序
如何知道用户的手机中已经安装了基本应用程序
?客户端应用程序
是否还需要知道此信息
客户端应用程序
,如果用户决定删除基本应用程序
,会发生什么情况?在这种情况下,如果用户尝试使用客户端应用程序
,会导致任何安全异常吗谢谢。以下是您问题的答案。但您可以参考以更好地了解Android权限 是的,如果你申报的话
android:protectionLevel="dangerous"
然后,系统可能不会自动将其授予请求应用程序。应用程序请求的任何危险权限可能会显示给用户,并要求在继续之前进行确认
定义自定义权限的基础应用程序应该通过
android:description="string resource"
下面是一个权限定义的示例。希望它是不言自明的
<permission android:description="string resource"
android:icon="drawable resource"
android:label="string resource"
android:name="string"
android:permissionGroup="string"
android:protectionLevel=["normal" | "dangerous" |
"signature" | "signatureOrSystem"] />
2.据我所知,客户端应用程序在安装时无法看到基本应用程序的存在。但在客户端应用程序启动时是可能的。无论如何,权限是由Android系统根据您的Android.xml文件授予的。因此客户端应用程序在安装时不必担心基本应用程序
3.即使客户端应用仍在安装,也可以删除基本应用。在任何阶段都不会出现任何错误消息或安全异常。但当您再次尝试运行客户端应用时,在尝试从客户端应用调用基本应用活动时,可能会出现“未找到活动”异常。两个要点:首先,用户Acceptance是all或nothing,请安装带有权限警告的应用程序,或者不安装。其次,如果在使用应用程序之前未安装授予应用程序,则不会授予权限,并且依赖于这些权限的功能将无法工作。请参阅此链接,这将有所帮助