xcode 8.x 程序上传出现的问题记录

自从苹果升级xcode 8 和 iOS 10 系统以来,在安全保护隐私方面还是做了一些改变。因为公司业务需要,今天发布一个新app,结果却遇到了很多坑, 程序上传没有提示任何问题,但就是没有版本构建。为自己的无知做个记录吧!

一下是遇到几个问题

  • UI切图
    苹果对于App icon和启动图有严格的尺寸要求,不能有丝毫的差错。但是UI妹子给的切图标注的是符合要求,但实际上图片的大小却不是要求的大小,程序上传成功了,等了好长时间就是不能构建版本。苹果开发者邮件提醒,说是 App has one or more issues, 仔细查看才发现原来是App icon 的尺寸不匹配, 需要 120 x 120 但给的图片是 180 x 180。


    屏幕快照 2016-12-15 下午3.45.25.png

    Appicon 对于iPhone竖屏设备一般需要四组切图
    1 . iPhone Notification iOS 7 - 10 20pt [email protected][email protected];
    2 .iPhone Spotlight - iOS5,6 Settings - iOS 5-10 29pt [email protected][email protected];
    3 .iPhone Spotlight iOS 7 - 10 40pt [email protected] [email protected];
    4 .iPhone App iOS 7 - 10 60pt [email protected][email protected];

xcode 8.x 程序上传出现的问题记录_第1张图片
屏幕快照 2016-12-15 下午3.49.25.png
  • 把这个问题解决后,我信心满满的准备上传,上传成功后,没有等来构建版本,却等来了苹果提醒邮件。

Dear developer,
We have discovered one or more issues with your recent delivery for "xxx". To process your delivery, the following issues must be corrected:
This app attempts to access privacy-sensitive data without a usage description. The app's Info.plist must contain an NSBluetoothPeripheralUsageDescription key with a string value explaining to the user how the app uses this data.
Once these issues have been corrected, you can then redeliver the corrected binary.
Regards,

也就是说工程里面的info.plist 必须含有蓝牙使用蓝牙功能的意图描述,否则App将不予通过,查看官方文档里面是这样说:


xcode 8.x 程序上传出现的问题记录_第2张图片
屏幕快照 2016-12-15 下午4.09.05.png

大意是:NSBluetoothPeripheralUsageDescription这个字符串是用来描述你使用蓝牙的理由。这个理由当你尝试使用蓝牙的时候会以弹窗的形式展示给用户。这样做主要是为了保护用户的隐私,因此在iOS 10.0以后,如果要使用蓝牙接口就一定要在info.plist 文件中显式的做静态生命,否则当App尝试使用蓝牙的时候,程序将会退出。

其实,我的App里面并没有使用蓝牙,但不知道为什么也需要在info.plist 中声明,这是和以往很大的区别;我咨询了我的朋友,他们也遇到了这种问题,所以就把所有常用的涉及用户隐私的接口访问全部在info.plist中做了声明;
以下是App 涉及需要声明的字符串:

NSBluetoothPeripheralUsageDescription
NSCalendarsUsageDescription
NSCameraUsageDescription
NSContactsUsageDescription
NSLocationAlwaysUsageDescription
NSLocationWhenInUseUsageDescription
NSMicrophoneUsageDescription
NSPhotoLibraryUsageDescription
xcode 8.x 程序上传出现的问题记录_第3张图片
4C87900E7A8ED71CA2C47C1228C0F94A.png

详细请查看苹果官方文档Cocoa Keys

通过以上的修正,再次上传App,很快就收到了苹果可以构建版本的提醒,再次查看开发者账户 iTunes connect 看到了期待已久的构建界面


xcode 8.x 程序上传出现的问题记录_第4张图片
E8C3AE43BBCFE3BF0F9A2523CC574698.png
xcode 8.x 程序上传出现的问题记录_第5张图片
屏幕快照 2016-12-15 下午3.22.09.png

同时看到了前几次上传不符合要求的几个build版本,此时选择可用build版本,提交审核就OK了.

你可能感兴趣的:(xcode 8.x 程序上传出现的问题记录)