提交苹果商店审核时,最好配置adhoc装到手机上测试一下,adhoc装的应用和发布者证书的配置基本上一样,发布者证书打的包是不能直接装到手机上的。adhoc证书(可以装100台制定uid的设备)却可以。
这是一个说明例子。
1. 打开苹果商店审核标志——因为我们的app暂时用的企业证书,苹果商店可以审核但是短期内不上架,所以对苹果的审核人员使用应用时根据版本后给予不同的响应操作,如:地图key,个推key,版本升级。一般的应用不需要做这个编译宏。 #ifndef APPSTORE_VISION //当发布app store 正式服务器时需要把下面一行加上,并删除FIR.framework库,防止苹果审核时发现有蒲公英的外部更新,而驳回应用 #define APPSTORE_VISION #endif 2. 关闭写日志开关--苹果商店的版本没有必要写日志,用户的日志你也收集不到,所以没有必要写日志。只在内部调测试时写日志。 #ifndef TEST_XCODE_COLORS //当发布正式服务器时需要把下面一行注释掉,就能关闭日志系统 //#define TEST_XCODE_COLORS #endif 3. 配置正式服务器配置——证书服务起用到域名,端口号,地图key,个推key //网络链接(正式) 20 服务器 #define kWebSiteURL @"https://www.test/server/" //socket网络请求地址 #define SOCKET_HOST @"www.test.host.cn" #define SOCKET_PORT 1234 ////高德地图 #define MAMAPKEY @"122***334" #define MAMAPKEYREVIEW @"135***56" =////个推 #define kGeXinAppId @"n3*d" #define kGeXinAppKey @"f*1" #define kGeXinAppSecret @"F**dd" 4. 关闭info.plist文件中的Application supports iTunes file sharing设置为NO——内部调测时可以把写到日志文件导出来分析问题,给苹果商店审核时不能开启该属性,不然他们不让你审核通过。 5. 修改Version,Build,Team,TARGETS的Code Signing中的证书 appcaocaodriver——更新版本号,构建版本号,证书团队,苹果商店的发布证书 6. 删除Frameworks文件夹下的fir库(FIR.framework)——苹果商店审核时发现你用了fir库,由于集成了蒲公英的日志收集,会在安装后外部更新,所以会被驳回,所以内测或用企业版本发布时不需要去掉该库,苹果审核时要去掉。 7. 注意SingleAsyncSocket.h中的 initData中的地图 sMAMapkey是否需要默认初始化值的修改。现在没有正式前不需要修改,由编译宏APPSTORE_VISION控制——由于企业证书和什么证书用到的Bundle Identifier不同,而地图key和Bundle Identifier唯一绑定,所以审核是指要注意地图key的初始化值是否正确。。 8. 替换为20发布证书——苹果商店版本的https证书和测试版本,企业版本的https证书不一致,所以要保证证书正确。 9. 注意修改Bundle Identifier:com.geely.CaoCaoDriver——苹果商店版本的Bundle Identifier和企业版本,研发内测版本的证书的Bundle Identifier不一致,要注意修改。