ERROR ITMS-90168 MAC OSX 沙盒机制
来源:互联网 发布:java excel 日期格式 编辑:程序博客网 时间:2024/05/16 18:15
「上班第一天。祝大家新的一年工作顺利」
「摘要:OS X 沙箱机制 从OS X10.6之后引进该机制。在之前的OS X10.9之前没有做强制的要求。但是在OS X10.9 之后,提交到MAC APPStore的应用,必须遵守并且支持沙箱协议。沙箱对访问系统的资源做啦充分的限定说明。」
沙箱机制是什么
苹果引入沙箱机制后,要求上线到APP Store的MAC应用必须支持遵守沙箱机制。沙箱对应用访问的系统资源、硬件外设、文件、网络做啦严格的限制。这样防止恶意的APP攻击系统获得控制系统的权限,保证啦OS X的系统安全。
沙箱把每个应用分配一个独立的空间,每个应用只能在自己的小天地里面耍。要想获取自己空间之外的资源必须获得授权「如图」。
在应用中设置
应用开发完成提交到APP Store,必须设置沙盒机制,如果不设置则会报错「ERROR ITMS-90168 」。
切换到工程的target——->capabilities。
第一项就是APP Sandbox开关,点击ON,开始沙箱机制。
1、 Network: 网络访问控制
Incoming Connections(Server) :应用做为Server对外提供HTTP,FTP等服务时需要打开
Outgoing Connections(Client):做为客户端,访问服务器时需要打开
2、Hardware:硬件资源控制。
Camera : 摄像头
Micophone:麦克风
USB :USB接口
Printing: 打印功能
根据自己的APP进行设置。
3、APP Data:采集信息
Contacts:系统联系人
Location:位置
Calendar:日历
4、File Access:文件和用户目录的访问控制,分为禁止none,只读,读写3类
User Selected File:文档类应用或者需要用户选择打开某个文件时,需要选择合适的访问权限
Downloads Folder:下载文件夹
Pictures Folder:图库
Music Folder:音乐库
Movies Folder:电影库
沙盒设置表示应用需要连接服务器获取数据;应用菜单中有打印功能的菜单;允许用户打开文件并进行读写操作。
如果应用中不需要的权限项,一律不要打开。否则App Review团队会拒绝你的应用上架「ERROR ITMS-90168 」。
沙盒配置信息存储
沙盒中每个需要访问权限的项都对应一个key,对应的value,YES 或 NO表示是否允许访问。
选择配置了沙盒的访问控制信息后,Xcode会自动保存到一个扩展名为.entitlements的plist文件中
应用打包时会对这个文件进行签名
.entitlements文件是一个plist文件,里面存储了sandbox的访问权限配置项信息.
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"><plist version="1.0"><dict> <key>com.apple.security.app-sandbox</key> <true/> <key>com.apple.security.assets.pictures.read-write</key> <true/> <key>com.apple.security.device.usb</key> <true/> <key>com.apple.security.files.downloads.read-write</key> <true/> <key>com.apple.security.files.user-selected.read-write</key> <true/> <key>com.apple.security.network.client</key> <true/> <key>com.apple.security.network.server</key> <true/></dict></plist>
应用运行期间要获取某个权限时,系统都会通过.entitlements去检查应用是否有授权,如果没有就拒绝访问。
- ERROR ITMS-90168 MAC OSX 沙盒机制
- MAC OSX 沙盒机制
- ERROR ITMS-90168 错误处理
- Mac OSX Sierra installation upx Error:
- iOS打包上传 ERROR ITMS-90168解决方案
- error itms-90535,error itms-90163
- ERROR ITMS-90474 & ERROR ITMS-90475
- mac osx
- mac osx up brew xcrun: error: invalid active developer path
- ERROR ITMS-90022
- ERROR ITMS-90086
- ERROR ITMS-90529
- error itms-90535 tencentopen
- ERROR ITMS-90046:..............?
- ERROR ITMS-90086
- ERROR ITMS-90158:
- ERROR ITMS-90164
- ERROR ITMS-4238
- 安卓系统权限修改(基于tiny4412开发板)
- GSAP
- 修改Linux系统时间
- 网管的自我修养-信息系统
- CentOS 6、7下pptp vpn一键安装脚本
- ERROR ITMS-90168 MAC OSX 沙盒机制
- http和https80端口是为HTTP(HyperText Transport Protocol)即超文本传输协议开放的,此为上网冲浪使用次数最多的协议,主要用于WWW(World Wide Web
- 蓝桥杯基础练习 高精度加法
- mysql查询重复数据并保留一条
- G++和C++的区别(oj中)
- JDBC的工具类(简单实用,体现java封装特性)
- 安卓selinux权限修改(基于tiny4412开发板)
- lede 修改默认开启wifi 修改wan和lan口位置
- Unity 语音识别 详情版 和 发布过程中遇到的问题