appStore提交上线那点事
提交指南可以参考:http://www.jianshu.com/p/6c75a6e53605
上述文章中很详细的写了提交流程,受益匪浅,感谢作者,之后打包并不顺利,在此就我遇到的一些问题和一些注意事项做一个总结,希望能帮到有需要的人。
注意事项:
1.APP取名字:
尽量不要用数字和汉字开头来命名
app的名字很重要,因为和bundleID有关,在打包上传的时候,这个ID必须和iTunes Connect中的套装ID一致。
问题就在于,用数字或者汉字来命名,会被识别为‘-’,比如51cby,在bundleId中显示为xxx.-1cby,打包的时候总是提示bundleID有误,因为这个ID要唯一标识一个应用,不能有‘-’这样的通用符号出现。
迫不得已将名字改了,改名字的文章很多,可以参考如下网址:
http://blog.csdn.net/tanhailong198801/article/details/40148525
改完之后依然有其他问题,最后不得已又重新创建工程,导入文件。
2.下载和设置证书
步骤就不提了,有很多介绍很详细的文章。需要注意的是生成发布证书的时候有一个选项,选APP ID的,事先要在app IDs中设置好,必须与Xcode的bundleID一致,这个id 也是iTunes connnect中要选则的ID。
遇到的问题及解决办法:
1.找不到头文件,运行时候正常,打包就找不到.h文件
解决办法:1>先确定文件是否在工程中而不是只有一个连接,就是在导入文件的时候是否选上了copy if nended选项,在工程中的右边栏中查看一下full path,文件路径,也可以拷到另一台电脑上测试一下
2>重点问题:
原因:这是由于直接编译时使用的是你的系统的头文件目录,而archive时使用的时SDK下的头文件目录,一般情况下这两者时一致的,但是有些特殊库的头文件,如xxx,在系统下/usr/include/xxx是包含在头文件自动搜索范围内的,而SDK中这个目录不在自动搜索范围内,所以就会报一个”file not found””
方法:工程->build setting,搜索header search paths,添加你需要手动添加的头文件目录,如/usr/include/xxx
2.上传iTunes connect之后,发现有bug,将app版本一栏,删除后,再次打包上传会报错,因为上传之后,是删除不了二进制文件的
解决办法:将xcode ->general ->build 下面的版本号更改一下,再次打包,上传就可以了
3. 在Xcode中的u.xcassets图片包中的icon图片,一定要按照要求的尺寸添加,还要添加iPad 的图片(我只添加的76*76)的那套图片,否则会报错
4. verify之后upload非常慢,还爆出种种奇葩问题:
解决:检查一下网络,再次上传。索性就开手机热点吧,这个比WiFi上传快 多了,感觉很不科学啊,可就是能解决问题
例如这些问题(后续再补充):
1>cannot verify client.(3000)
2> authen问题
5.iTunesconnect上提交审核提示“工具链无效。新 App 和 App 更新必须使用公共(GM)版 Xcode 6 或更高版本以及 iOS”
原因:This is because even though the app has been built with the compatible version of Xcode and the correct iOS SDK, the app contains the build version of the OS that built the app,原来打包还与Mac OS的版本有关,也不能是Beta版本,是不是感觉好神奇
解决:将打包的ipa文件,显示包内容,步骤如下:
1.在Build好的程式按右键,Find in finder->
2.找到档案後再按右键,显示包内容->
3.再进Products → Applications → xxx.app 再按右键,显示包内容
4.打开Info.plist 有一个 BuildMachineOSBuild 是 15B17c ,把
它成是用Yosemite OS的代号 14F27
5.存档,关掉,上传就可以了.
感谢好多人的分享帮助我打包完成,有什么问题再添加。。。