0812-真机相关
真机调试
开发者账号(01-购买开发者账号)
- xcode7.0以前真机测试必须开发者账号
- 个人开发者账号申请简单,两三年前人民币大概六百多的样子
- 企业开发者账号申请周期比较长,申请时需要先申请公司的邓白氏编码(DUNS Number),大概两周左右,价格和个人的一样都是99美元,功能的比个人多一个可管理团队开发,把别人的appId加入进来
- 商业开发者账号最贵,299美元,但是不能上架,申请时也需要填写公司的邓白氏编码(DUNS Number),用于给企业内部开发应用软件
真机调试(02-真机调试证书配置)
- 配置cer证书,让Mac具有真机调试能力
cer的开发者证书只能配置两个,发布者证书只能配置三个,所以多人开发的话可以从证书里导出p12文件再安装就行了。这里有时候会产生一个bug,刚把一个证书删掉的时候他还会认为你有两个,这时候只有把两个证书都删掉才行。
- appId,让该App可以真机调试
AppId
当程序已经发布后该AppId是删不掉的
bundleId起模糊的时候虽然方便使用,但是购买和内购,远程推送等很多功能不能用,教程里说调试一般还是选择模糊,但是我觉得还是选精确模式,因为这样会提供完整的功能,方便配置发布证书的时候就也用这个AppId一步到位
- 注册真机设备,让iPhone可以真机调试
deviceId只能设置一百次(即删了也算),需要UDID(苹果设备的唯一标识)
- 生成描述文件,描述文件的作用是把前面3个综合起来进行描述的一个文件
生成测试打包文件是选发布证书的第二个选项
- 最后上面全部步骤走完电脑会有两个文件,一个cer,一个描述文件,前者安在🔑→登录→证书里,后者安在xcode里。这样我这台电脑我这个手机就可以真机调试了。若要让别人也可以真机调试,首先需要在本机上用cer导出p12证书,然后再把描述文件也复制给他,这里要注意该描述文件需要含了别人的手机的UDID,不包含就重新生成一个。
Xcode7以后只需要一个appleId就可以真机调试了(甚至不需要加入开发者计划),然后在xcode里第一次运行会进行配置,这里实际上就是在配置描述文件。
发布程序
- 在xcode里设置APPIcon,这个是必须的,不然上传会失败。
- 设置启动图片,这个不是必须的。
- 设置General→launch的两个选项。
- 这里需要注意的是,如果没有设置启动图片的话,屏幕会被拉伸,所有的约束都会失效,这是因为系统原本是根据LaunchScreen.xib里的图片通过截屏来设置屏幕适配
- 配置cer
- AppId可以就用调试的
- device不用选
- 配置描述文件
- 去🍎开发者中心→iTunesConnect里填写应用程序配置信息
- 起名称的时候最好不要超过5个字,否则到时候会显示省略号
- 如果App里需要登录注册,则隐私策略网址是一定需要的,否则会被拒
- icon必须是1024X1024的,且不能有alpha通道(即alpha=1.0)
内购
1. 🍎App的三种赚钱方式:
- App直接收费
- 广告:O2O---online推广,online交易,闭环
- 内购:🍎要求与应用程序相关的商品必须内购不能使用第三方支付否则不能上架(比如游戏道具),分钱三七开,🍎占三
- 第三方支付:商品与应用程序物管(比如外卖),分钱只需要给很少给第三方平台
2. 做内购的步骤
-
一个明确的(不是模糊)AppId
-
配置和内购相关的项目
- 配置内购商品
- 消耗品
- 非消耗品
- 配置测试账号
- 银行相关(要填一个银行ID需要非常麻烦)
- 配置内购商品
-
代码实现(内购流程,🍎这里扮演类似收银台的角色)
- App向🍎申请可卖的商品
- 用户选择商品后由App开给用户票据
- 用户凭票据去苹果结账
-
用户凭结账结果去App领商品
-
几个注意点(08-内购的代码实现)
-
KVC居然可以这样直接取数组里的字典的键值对放到生成另一个数组
// 去自己的服务器请求所有想卖商品的ProductIds
NSString *filePath = [[NSBundle mainBundle] pathForResource:@"iapdemo.plist" ofType:nil];
NSArray *productArray = [NSArray arrayWithContentsOfFile:filePath];
NSArray *productIdArray = [productArray valueForKeyPath:@"productId"];
- 尽量避让用户非主观意愿下多次点击一个商品生成多个票据(比如双击)
- 非消耗品同一个账号再次购买后实际上是不会扣钱的
广告
注意要点:
- 一些特殊框架比如广告这个iAD框架就不属于UIKit框架,需要单独导入
- 也需要配置银行信息
测试打包
与发布程序的大部分步骤都相同,只有描述文件需要单独生成。打包生成的ipa是release版本,手机直接用xcode跑可以选择release也可以选择debug版本
网友评论