正常情况,做好一个苹果的app,要想让大众用户下载安装使用,都是上传到app store,用户登录app store找到你开发的app下载安装 使用。
但是app能否成功出现在苹果的app store,还需要有一个时间段让苹果对你开发的app进行审核,如果审核有问题还要退回解决后重新上传,所以耗费周期有时很长。
现在问题出现,如果开发出app,先给周边的朋友、同事测试,假如这个人数有几十人到上百人,该如何办呢??
办法一:把每一台要安装app的ios设备的UDID号复制出来,加入到开发环境,编译好app后发给用户,让用户把ios设备连线到电脑,将收到的app拖到itunes,然后和ios设备同步安装。这些步骤在一个开发者看来再简单不过的操作,但是普通的用户就会说:太复杂,搞不定?
办法二:办法一不是太麻烦嘛!亮出第二招。
根据苹果发布的“Distributing Enterprise Apps for iOS 4 Devices”说明文件,苹果在iOS4中新增了一项功能,就是无线发布iOS App(installing apps wirelessly),——用户不需要经过iTunes,只用在Safari中点击一个链接就可以下载并安装应用。
实现起来只需两步:
1.创建HTML页面
该页面用于发布App,我们可以在这个页面添加诸如软件介绍,更新说明等信息…当然核心代码是这个:
<a href="itms-services://?action=download-manifest&url=http://iinterest.net/
anifest.plist">Install App</a>当用户使用Safari浏览器浏览这个页面并点击该链接时,iOS设备会自动识别,返回HOME界面下载并安装该App,就和我们在iTunes中点击下载按钮的效果一致。
2.创建manifest.plist文件
manifest.plist用于记录App的一些重要信息如:下载url、软件图标url、软件名称等,关于anifest.plist完整例子可以在苹果的开发文档中找到(在最后)。当然,其实并不需要那么详尽的软件信息,这里给个更为精简的例子:
<?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>items</key>
<array>
<dict>
<key>assets</key>
<array>
<dict>
<key>kind</key>
<string>software-package</string>
<key>url</key>
<string>http://www.iinterest.net/ipa/Everlight-3.1-Nathan1233.ipa</string>
</dict>
<dict>
<key>kind</key>
<string>display-image</string>
<key>needs-shine</key>
<true/>
<key>url</key>
<string>http://www.iinterest.net/webapp/images/ifw114.png</string>
</dict>
<dict>
<key>kind</key>
<string>full-size-image</string>
<key>needs-shine</key>
<true/>
<key>url</key>
<string>http://www.iinterest.net/webapp/images/ifw114.png</string>
</dict>
</array><key>metadata</key>
<dict>
<key>bundle-identifier</key>
<string>net.iinterest.www</string>
<key>bundle-version</key>
<string>8.0.3.99</string>
<key>kind</key>
<string>software</string>
<key>subtitle</key>
<string>Everlight</string>
<key>title</key>
<string>Everlight</string>
</dict>
</dict>
</array>
</dict>
</plist>
以上示例我也是借用这些大侠的劳动成果http://www.iinterest.net/2011/09/22/installing-apps-wirelessly-ipa/。办法二解决了用户侧的安装麻烦问题,但是开发者依然需要知道用户ios设备的UDID号,一百以内的还好管理,超过一百个UDID,管理起来就很麻烦,而且超过100个,开发者就要申请苹果的企业开发者账号了。
有没有不用UDID号,也能给上百台ios设备安装app的办法呢。当然是有地。且看办法三!
办法三:你可要花大价钱了
其实办法三,还是使用办法二的无线发布iOS App(installing apps wirelessly)套路,只是开发者需要去申请苹果的EDP(Enterprise developers Program)也就是企业开发者账户,这个一年的费是299美刀。
申请EDP还有一个前置的任务,开发者先要申请一个邓氏全球编码(D-U-N-S® Number),这个编码的申请网址是http://www.dnbregistered.com.cn,是国内代理公司。费用分为三个类别:
- 标准版 8600/两年 貌似国内大多使用这个
- 实地考查版 15800/两年 代理商极力推荐这个
- VIP版 21000/两年
这个报价是截止到2011年12月5日的报价,据说还要涨价,申请这个编码的目的就是为了获取苹果的认证,让苹果知道你是一家值得信赖的企业,苹果才准许你申请企业开发者账户。
有了邓氏全球编码,又成功申请了企业开发者账户,就可以使用installing apps wirelessly方式,向你的用户提供app的安装和下载了,而且你根本不用知道用户的UDID的。
如果你想测试完,将正式版app发布到app store上去,我要告诉你这个不行。因为苹果规定企业开发者账户下发布的app,是无法上传到app store供用户下载的,这个账户只能供内部人员使用,所以如果你想做成收费app,还是老实申请99美刀开发者账户。
办法四:testflight
这个办法,其实是国外一个创业项目 TestFlight,面向移动应用开发者,提供一站式超级简易的测试平台,让开发者的移动应用在上线之前通过真正的用户进行应用测试。
使用TestFlight,甚至不需要有苹果开发者账户,就可以测试APP。TestFlight提供了一个云端安装app的方案,可以大大降低目前iTunes同步的难度。TestFlight能做比云端安装app多得多的事情,它的另一大功能是:你可以把测试用户分成不同的群体,分别提供不同版本的app,比如向公司同事提供一个版本,投资人则是另一个版本。它可以追踪各个群体的统计数据,还可以帮助开发者招募测试人员。当然,这些都得受苹果公司的限制(需要标识符)。TestFlight一样可以用在iPad和iPod touch这些iOS设备上。对于想尝试一下的开发者它是免费的,同时也有一个还没有确定价格的企业版本。
他的基本工作原理是:
首先是采集用户信息:测试用户在接收到开发者 (Developer) 的 TestFlight 邀请之后,用户只需拿自己的 iPhone 打开邀请中的链接,注册账号,注册硬件 ( Register Device ) ,TestFlight 会自动采集用户 iPhone 的 UDID 、iOS 版本、硬件版本,并发送给开发者。
然后开发者将 IPA 上传到 TestFlight 网站,然后勾选合适的测试用户,点击确认,你就完事了。用户会马上收到TestFlight 的更新通知。然后,用户只需在她的 iPhone 上登录 TestFlight 网站, TestFlight 就会自动将测试 IPA 安装到她的 iPhone 上。
当然还可以实时监测 IPA 的安装情况。担心有的用户没有成功安装? TestFlight 能够实时给你反馈最新统计数据。
解决app在没有上传app store前大规模安装测试问题的一些办法与思路相关推荐
- iTunes Connect上传APP屏幕快照图片尺寸和屏幕分辨率大小
在我们app测试好要上架的时候,我们要进入iTunes Connect 后台进行app的填写和配置一些信息. 苹果上传APP审核需要上传APP屏幕快照或者还有一个视频录制,一般用优酷录制, 屏幕快照分 ...
- 将App通过XCode上传到AppStore 出现这个错误“An error occurred uploading to the iTunes Store”的解决方法
将App通过XCode上传到AppStore 出现这个错误"An error occurred uploading to the iTunes Store"的解决方法 参考文章: ...
- apple 上传app store
一.前言:二.准备: 一个已付费的开发者账号 一个已经开发完成的项目. 三.检查: 你的Xcode必须是正式版的,beta版本的Xcode是不能上传项目的. 上传使用的 Mac 的 OS X系统必须也 ...
- flash AIR开发的IOS app上传APP Store报错:ERROR ITMS-90086:missing 64-bit support.
在一次上传APP到 App Store的时候,突然遇到里这个问题,通过网络搜索发现相关的连接很多,所描述主要是XCODE中的设置问题,但是我们是用flash AIR 开发的,除了ANE扩展之外,没有 ...
- 解决Windows平台通过cURL上传APP到蒲公英pgyer平台时无法使用中文升级描述的问题...
解决Windows平台通过cURL上传APP到蒲公英pgyer平台时无法使用中文升级描述的问题 官方上传命令 curl -F file=@"315.apk" -F uKey=XXX ...
- IOS APP 使用别人的P12文件上传APP store
当使用客户的帐号打包上传时,只需要客户提供打包好的P12文件(钥匙串文件以及证书文件)和描述文件(mobileprovision).安装即可,打包过程如下: 选择Archive: 开始编译文件后出现: ...
- App Store 上传app后不能构建版本,构建版本发现不了已上传app , 没有➕号 一定要查看App Store账号邮箱
1.首先要看用什么工具上传的 第一次往App Store上传app最好用Application Loader 不要用xcode直接上传因为 xcode直接上传如果app当中有问题不会报错,比如icon ...
- 苹果证书(免费) + 打包ipa + 上传app store在Hbuilder里面打包ipa包到没越狱的手机上安装时,是需要p12文件跟.mobileprovision的证书的,这里可以超简单不需要
苹果证书(免费) + 打包ipa + 上传app store 在Hbuilder里面打包ipa包到没越狱的手机上安装时,是需要p12文件跟.mobileprovision的证书的,这里可以超简单不需要 ...
- xcode 上传app商店流程记录
目录 发布流程 疑难问题记录 iOS 上线APP时报错 App Store Connect Operation Error 上传app报错(Unable to download a software ...
最新文章
- poj1639(最小K度生成树)
- 基于 FPGA 的并行全比较排序算法,topK
- Android自定义Dialog及与Activity的交互
- 初识ABP vNext(9):ABP模块化开发-文件管理
- axis2 java demo_axis2 webservice实现
- 经典代码d359f1d82912ef1b1cd784bd28829325
- 艰难时局下电子发现蓬勃发展
- 全球第二和第四大航运公司加入物流巨头Maersk的区块链平台
- PrestaShop加速11招立刻加速PrestaShop外贸电子商务网站无额外插件
- 计算机管理器鼠标不见了怎么办,电脑的鼠标光标消失了
- elasticsearch索引health 健康状态变为yellow,red处理
- 原来ChatGPT可以充当这么多角色
- python中检测键盘(上下左右) 代码
- 如何设置分布式IO模块Profinet的地址
- 微信小程序开发和APP开发有哪些区别
- 如何精确的设置行与行之间的间距
- java每五分钟执行一次_Cron表达式每N分钟运行一次
- 【详解Vue中请求拦截器】
- Flink实践:跨境电商 Shopee 的实时数仓之路
- 【深入理解RabbitMQ原理】RabbitMQ 配置,生产者和消费者
热门文章
- 2022年报名PMI-ACP考试,只需满足两个条件
- 【综述】A Comprehensive Survey on Graph NeuralNetworks(3)
- Mybatis-Plus(入门篇 ==> 三分钟完成入门案例
- 标签云 tagCloud 简单实现原理(还算好看)
- oracle union all 乱,关于ORACLE UNION ALL 遇到的问题
- 利用数字孪生技术,使医疗行业快速进入,“元宇宙”
- 生动解析何为ERP以及与SAP的关系
- linux nd4j启动,ubuntu no nd4jcpu in java.library.path
- Python中的浅拷贝与深拷贝
- ChatGPT 一分钟教你做出非常炫酷的PPT