Unity Android 权限

Android权限 
权限是一种限制,用于限制对部分代码或设备上数据的访问。施加限制是为了保护可能被误用以致破坏或损害用户体验的关键数据和代码。每种权限均由一个唯一的标签标识。标签通常指示受限制的操作。 
如果应用需要访问受权限保护的功能,则必须在清单中使用 元素声明应用需要该权限。将应用安装到设备上之后,安装程序会通过检查签署应用证书的颁发机构并(在某些情况下)询问用户,确定是否授予请求的权限。如果授予权限,则应用能够使用受保护的功能。否则,其访问这些功能的尝试将会失败,并且不会向用户发送任何通知。 
参考https://developer.android.com/guide/topics/manifest/manifest-intro.html#perms 
Unity 权限 
Android的权限配置于AndroidManifest.xml中 
Unity会自动生成一些权限(Unity生成一个AndroidManifest.xml),然后找到插件(AAR和Android Libraries)的所有Android Manifest。合并到unity生成的xml中。这些都是Unity自动完成的。即使你指定了一份AndroidManifest.xml,Unity仍然会修改或加入一些Unity工程中所需的权限。如要完全修改可以导出Android工程进行修改,生成APK。 
Unity根据您的应用程序从脚本调用的设置和Unity API,自动添加必要的权限到清单。

例如: 
网络类添加INTERNET权限(例如在player setting中Internet Access选为require,这时即使你没有网络访问,unity仍会添加Internet权限) 
使用振动(如Handheld.Vibrate)增加VIBRATE 
判断网络状态InternetReachability增加ACCESS_NETWORK_STATE 
位置API(如LocationService)会添加ACCESS_FINE_LOCATION 
WebCamTexture API添加CAMERA权限 
启用麦克风增加RECORD_AUDIO 
PlayerSetting 中WriteAccess 设置为 Exxternal(SDCard),会添加相应权限 
APK在Android6.0设备上运行( Android API大于等于23),则应用程序将使用Android 运行时权限系统。 
Android运行时权限系统要求应用程序在运行时授予权限,而不是首次安装时就获取权限。当应用程序运行时,应用程序用户通常可以授予或拒绝每个权限(例如,在拍摄照片之前请求摄像机许可)。这允许应用程序在没有权限的情况下运行有限的功能。 
Unity不支持运行时权限系统,所以您的应用程序提示用户允许Android在启动时称为“危险”权限。有关更多信息,请参阅Android关于危险权限的文档。 
提示用户允许危险的权限是确保在缺少权限时不会导致崩溃的唯一方法。但是,如果你不想让程序运行开始就弹出这些权限的窗口,可以在AndroidManifest中添加 

有关运行时权限系统和处理权限的更多信息,请参阅Android开发人员文档的请求权限部分。 
手动修改Unity AndroidManifest的方法 
要使用Unity之外创建的Android清单,请将自定义的Android Manifest文件导入到以下位置:Assets / Plugins / Android / AndroidManifest.xml。这将覆盖默认的Unity创建的清单。 
在这种情况下,Android Libraries的清单随后会被合并到这份清单中,并且所生成的清单仍然被Unity调整,以确保配置正确。要完全控制清单,包括权限,您需要导出项目并修改Android Studio中的最终清单。 

Android权限:https://blog.csdn.net/YongshuangZhao/article/details/102875466

你可能感兴趣的:(Unity,Android权限)