iOS 两种环境测试的相关知识

iOS 两种环境测试的相关知识

涉及到客户端和服务端,服务端的开发童鞋请往下翻一翻,看第二点。

 1, 客户端

1, )  客户端安装的 App 实际对应什么环境,是由打包 ipa 时候选择的证书决定的。

2, )  初始化时,apsForProduction:isProduction 必须和你打包选择的证书一一对应进行配置,虽然不是决定 App 环境的的因素,但若不一一对应后期可能会出问题,所以请一一对应。

3, )  AppStore 下载的、adhoc、in-house 等证书打包为生产环境。如果你是直接运行安装到测试设备(运行调试状态),那你的安装的应用的证书环境只有可能是开发环境或者通配的。

4, )  一个手机上安装的一个 App 只有一种环境,不可能同时拥有两种环境

5, )  在官网上测试推送,该 App 能收到哪一个环境的消息,则代表他此时就是什么环境的,则必然收不到另一个环境的消息。

生产环境测试,客户端的两种姿势:

1、打.ipa包出来,安装测试。

2、用 Xcode 将 App 安装到手机上,然后手动点击手机上的 App 图标让他运行,然后做推送测试。(强烈不建议这样测试生产环境,因为一般是做不到正确配置,且并不能看实时日志,也没有必要。)

重要说明:Xcode 里面的设置:

证书需要设置为发布证书;

run 也需要设置为 release,选了 release 以后就可以直接 run 一个生产证书的包;


设置成功的表现:

无法直接启动,只能手动点击 App 图标启动(如果不是这样的,说明你还是 debug 状态,最好就直接打包出来测试!)

在生产环境下启动,是 不能在控制台实时看到日志的


服务端

官网推送选择 生产环境、开发环境;推送成功后在推送历史-推送平台中 ios 代表开发环境,ios-product 代表生产环境

API 推送设置可选参数 options——环境参数 apns_production,true 为生产、false 是开发,请务必注意参数类型是 Boolean ,不是字符串或其他。

强烈建议手动配置该字段,而不是保持默认,各 SDK 的默认配置或许是不一样的。

推送消息后可以在官网-应用-推送历史-操作-详情展开看平台环境实际是什么(iOS-product 代表生产),如果与你认为的不一致,去检查你的代码。

你可能感兴趣的:(iOS 两种环境测试的相关知识)