本文摘抄
1、前言
苹果企业签名关于 iOS 安装 App 的方法,相信熟悉 iOS 的朋友都知道,如果是越狱设备,随便搞。但是,现实中,大部分用户都是小白,不会自己去越狱,安全是一方面。所以,普通情况下,AppStore 一家独大,企业账号可以玩一玩的情况,这也是苹果优秀的地方! 今天就是想说说,关于新出的玩法~
2、账号证书类型
账号类型 价格 发布到AppStore? 支持安装设置数量 申请条件 个人账号 $99 可以 100 无限制 公司账号 $99 可以 100 DUNS编码 企业账号 $299 不可以 无限制 DUNS编码 教育账号 $0 可以 100 教育机构
通过这个表,就知道普通情况下,如果让用户安装App,只能是企业账号可行,而企业账号苹果当初只是想让那些只流通在企业内部使用的App使用,现在发展成了,非AppStore渠道的安装方式! 灰产和各大第三方渠道xx装机xx助手。当然,这个不是今天的主题,以后有机会在慢慢说~
3、新安装方式
通过上面的表格,除了企业账号,其它类型的账号,也是可以安装App到设备上,缺点有2个:
要先添加 UDID 到证书一年只能添加一百台设备且删除不恢复
基于这2点,正常情况下,没有人会想到用这样的方法提供安装App,但现在的情况不一样,苹果今天的审核已经很严格,基本过不了审核,另一方面企业账号,被苹果封杀和难申请,已经15万元都买不到!
现在,这终于成为新的安装方式!那就要解决上面说到的 2 个缺点, UDID 获取,如果让普通用户自己获取,然后提交在,在添加证书,在,,,, 这个流程太长!! 所以,还是有解决方案! 而,100台设备限制无解,只能多准备n个开发者账号啊!!
原理:
通过网页,用户接受授权就拿到iOS设备的UDID ,然后把你的UDID添加到他们的证书里面,用这个新证书重新签名原来的IPA包,此时,你的UDID在IPA包的证书里面,这样,你的iOS设备就能下载这个IPA包啊
4、UDID 获取
UDID (Unique Device Identifier),唯一标示符,是iOS设备的一个唯一识别码,每台iOS设备都有一个独一无二的编码,UDID其实也是在设备量产的时候,生成随机的UUID写入到iOS设备硬件或者某一块存储器中,所以变成了固定的完全不会改变的一个标识,用来区别每一个唯一的iOS设备,包括 iPhones, iPads, 以及 iPod touches。
MDM
iOS支持企业级的MDM(Mobile Device Managment),也就是所谓的移动设备管理,目的就是让企业能够方便的管理 iPhone、iPad等移动设备。具体的做法是通过在系统中安装配置文件(Profiles)的方式实现各种功能,设备管理,设备安全,获取设备信息,设备配置,备份和恢复等几类功能,可以根据不同应用场景实现很多具体小功能。
通过 Safari 浏览器获取iOS设备UDID步骤
苹果公司允许开发者通过iOS设备和Web服务器之间的某个操作(其实就是MDM的获取设备信息功能),来获得IOS设备的UDID(包括其他的一些参数)。以下为简要概述: 1、在你的Web服务器上创建一个.mobileconfig的XML格式的描述文件; 2、用户在所有操作之前必须通过某个点击操作完成.mobileconfig描述文件的安装; 3、服务器需要的数据,比如:UDID,需要在.mobileconfig描述文件中配置好,以及服务器接收数据的URL地址; 4、当用户设备完成数据的手机后,返回提示给客户端用户;
具体流程可参考文章:
通过Safari浏览器获取iOS设备UDID(设备唯一标识符)-天狐博客
具体后台开发代码可参考:
shaojiankui/iOS-UDID-Safari: iOS-UDID-Safari,(不能上架Appstore!!!)通过Safari获取iOS设备真实UDID,use safari and mobileconfig get ios device real udid
添加 UDID 到证书fastlane/spaceship at master · fastlane/fastlaneIPA 包重签名fastlane/sigh at master · fastlane/fastlane(微导流)从 Safari 安装 IPA 包atelierdumobile/appdeploy: AppDeploy is the fastest way to get info on your mobile app & deploy it OTA without specific server configuration