一、沙盒
IOSApp都是在沙盒里运行,这样可以确保App运行在一个受限和安全的空间里,通常情况下App只能访问沙盒里的文件系统,当App需要访问系统资源的时候,必须通过权限管理模块授权,常用授权有以下几类:
001 照相机,麦克风以及传感去等硬件
002 网络访问
003 联系人,日程表盒邮件系统App的数据
004 地理位置信息,推送通知,Healthkit以及HomeKit等服务
当 App 需要访问各种资源的时候,iOS 系统会询问 App 一些重要的问题来判断是否能通过权限检查。那谁能提供这些信息呢?答案是 Provisioning Profile。可以这么说,Provisioning Profile 能回答下面的几大“哲学”问题。
001 你是谁 Provisioning Profile可以获得Team ID等信息 知道开发者是谁
002 你要干嘛 关联Entitlement能否告诉IOS系统该App需要访问那些系统资源
003 你要去哪里 Provisioning Profile 离的设备列表能否告诉IOS系统能否安装该App
004 我能相信你吗 这里涉及到签名,通过签名就能证明这个App的签名主题,并能证明这个app有没有非法改装。