我正在分析Android VPN应用程序(例如,Hola **)的权限使用情况。据Google官方手册(http://developer.android.com/reference/android/Manifest.permission.html)所述,VPN应用程序必须使用BIND_VPN_SERVICE权限,但Hola不会在其Manifest文件中对其进行统计。我想知道为什么它不使用此权限以及它(或一般VPN应用程序)如何提供VPN服务?
** Hola在Manifest文件中的权限:
答案 0 :(得分:3)
我想知道为什么它不使用此权限
因为它不需要许可,这是好的,因为它无法持有权限。 BIND_VPN_SERVICE
是signature
级权限。
引用the documentation for BIND_VPN_SERVICE
,重点补充:
VpnService必须必需,以确保只有系统可以绑定到它。
您应该在应用的清单中找到BIND_VPN_SERVICE
,<uses-permission>
元素中的不是,而是位于android:permission
属性中<service>
实现的VpnService
元素。该应用使用权限保护组件,而不是使用与其他应用通信的权限。