Xcode 8 打包上线 iTunes Connect 找不到构建版本

最近苹果推出新的mac操作系统(macOS Sierra 10.12),大家可能都已经升级了,作为一个开发者,小编肯定是第一时间升级。随之,开发工具 Xcode 也升级到了最新版 Xcode 8.0。

马上就到国庆了,想必很多人和小编一样在加班赶进度,上架项目。当我们把一切BUG解决完(当然这是不可能的),提交成功之后,欣喜的去 iTunes Connect 上发布版本时。

咦...哇...怎么回事?构建版本旁边没有出现我们预期的 “加号” 按钮,这让我们如何发布新版本。

网上搜了搜,很模糊,都指的是 iOS 10 权限问题,可是到底是什么权限问题,该怎么解决。这里小编就告诉大家:

1、如何解决iOS10权限设置问题

2、如何避免这样类似的问题


一:iOS 10 权限设置问题:

iOS 10的一大变化是更强的隐私数据保护。如果你不设置相应的权限就会crash(比如:大家最近遇到的选择相册、相机 crash问题)。解决办法是在 info.plist 文件中添加对应的Key-Value权限就可以了。

添加权限有两种方式:

方式一:

1、在工程找到 info.plist 文件:Supporting Files -> info.plist -> 右击 -> Open As -> Source Code ,打开plist文件。

2、根据项目权限需求,复制 以下 相应 Value 和 Key 到 plist文件中。

访问蓝牙:

<key>NSBluetoothPeripheralUsageDescription</key>

<string>访问蓝牙</string>

访问相机:

<key>NSCameraUsageDescription</key>

<string>访问相机</string>

使用期间访问位置:

<key>NSLocationWhenInUseUsageDescription</key>

<true/>

访问麦克风:

<key>NSMicrophoneUsageDescription<key/>

<string>访问麦克风</string>

访问相册:

<key>NSPhotoLibraryUsageDescription</key>

<string>访问相册</string>

始终访问位置:

<key>NSLocationAlwaysUsageDescription</key>

<true/>

访问通信录:

<key>NSContactsUsageDescription</key>

<string>访问通信录</string>

方式二:

在工程找到 info.plist 文件,打开plist文件,直接添加。

plist文件

Value部分的文字是展示给用户看的,小编试了一下是必填的(其他权限,希望大家积极评论)。

添加相册权限后的效果:

访问相册1

访问相册2

如果Value文字为空,运行是没有问题的。但是打包提交,会收到苹果的反馈邮件,如下:

苹果反馈邮件

二:如何避免类似问题

其实这种问题解决起来很简单(根据苹果的反馈邮件),只是我们发现这个问题的过程很难,为什么呢?

1、我们每次提交一个版本后,苹果都会给 “公司邮箱”(注册苹果开发者账号的邮箱)发一封邮件。作为开发者,如果能第一时间收到这个邮件(下图:苹果反馈邮件),那么我们会避免浪费很多时间。

2、可是往往开发者账号都是用公司邮箱注册的,不可能将邮箱密码授权给开发人员。所以,我们可以通过这种方式,在 iTunes Connect 里将自己添加为开发人员,这样每次苹果也会给你发一封提交反馈邮件。

通过下面的邮件,我们可以很清楚看到,工程中缺少什么权限

苹果反馈邮件

添加iTunes Connect 开发人员:

登录iTunes Connect -> 选择用户和职能 -> 添加 iTunes Connect 用户 -> 填写用户信息 -> 选择职能权限(如:开发人员) -> ... -> OK

1、选择用户和职能

2、添加 iTunes Connect 用户

3、填写用户信息

4、选择职能权限

这样你就是苹果的开发人员了,希望这篇文章对大家解决问题能有所帮助。

文/onefboy(简书作者)
原文链接:http://www.jianshu.com/p/95f4c0930c39
著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。

Xcode 8 打包上线 iTunes Connect 找不到构建版本的更多相关文章

  1. xcode的打包上线出问题:导入此构建版本时出错

    原因:升级mac系统到了High sierra(10.13,目前还是测试版,并没有正式版,全新的文件系统 APFS (Apple File System))发现没有这个问题,于是乎,所以给出这种解决方 ...

  2. 适配ios10(iTunes找不到构建版本)

    前两天上架App遇到一个比较神奇的问题,打包好的项目使用Application Loader上传成功,但是在iTunes里面却找不到构建版本,App的活动页面也没有相应的版本. 之前了解IOS10对用 ...

  3. react-native 在Xcode上传到iTunes Connect里报错

    在xcode里面点击“upload to app store”的时候,提示“the session's status is FAILED and the error description is 'C ...

  4. iosAPP打包上架xcode中Archive提交成功以后,不提示构建版本问题

    最近在项目更新时遇到Archive提交到开发者中心成功后,一直不提示构建版本信息,可能导致的原因是由于ios10以后对于APP中调用手机相册或摄像头麦克风时需要配置plist文件,配置如下内容或许会解 ...

  5. 使用 xcode 8 构建版本 iTunes Connect 获取不到应用程序的状态

    今天在提交 APP 审核版本的时候iTunes Connect 一直获取不到应用程序的状态,原因是,14号 xcode 8一出 直接升级使用 xcode 8 打包发布包,然后直接用 xcode8 构建 ...

  6. [Xcode 实际操作]九、实用进阶-(28)在iTunes Connect(苹果商店的管理后台)中创建一个新的新的APP

    目录:[Swift]Xcode实际操作 本文将演示如何在iTunes Connect(苹果商店的管理后台)中创建一个新的新的APP. 首先要做的是打开浏览器,并进入[iTunesConnect网站], ...

  7. iTunes Connect开发者指南中的一个疑问

    iTunes Connect Developer Guide     避免app版本出现在iClound中,我的疑问是对已经上架的版本不能设置,那么这个功能的真正意义在哪里? 大部分用户去应用页面下载 ...

  8. Xcode打包提交至itunes connect后,提交审核成功,随后出现二进制文件无效

    1.问题描述 Xcode打包提交至itunes connect后,提交审核成功,应用处于待审核状态,过了大概半个小时状态更改为二进制文件无效 2.原因分析 2.1 登陆在苹果中预留的邮箱 ---- 邮 ...

  9. 打包上传成功, itunes connect 不出现上传的版本

    由于有一次感觉build setting 里 code signing identity设置证书有点乱,有些已经用不到了,就想把那些删除 于是我找到了所有证书的那个文件夹(进入所有证书的那个文件夹), ...

随机推荐

  1. ps aux 查看进程信息

    [root@localhost Desktop]# ps auxUSER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMANDroot 1 0.0 0.3 ...

  2. 重命名myclipse中web项目名称的过程

    1 打开 myclipse2 最顶层项目上右键,Refactor,新名,3 最顶层项目上右键,propterties, MyEclipse, Web, context-root: /新名4 替换 .c ...

  3. 青岛理工大学第五届ACM交流赛 部分题解

    A:后缀维护si*pi的最小值,查询的时候二分,判断后缀和当前两个部分就行. #include <bits/stdc++.h> using namespace std; typedef l ...

  4. ServiceStack.OrmLite 笔记2 -增

    ServiceStack.OrmLite 笔记2 这篇主要介绍 增加 db.Insert(new Employee { Id = 1, Name = "Employee 1" }) ...

  5. C# WinForm程序添加引用后调用静态方法时报“Interfaces_Helper.Global”的类型初始值设定项引发异常。---> System.NullReferenceException: 未将对象引用设置到对象的实例。

    出现原因: 因为Global类初始化某个静态变量时没有成功则会抛 System.NullReferenceException 异常,具体代码: public static string connstr ...

  6. JMS【三】--ActiveMQ简单的HelloWorld实例

    第一篇博文JMS[一]--JMS基本概念,我们介绍了JMS的两种消息模型:点对点和发布订阅模型,以及消息被消费的两个方式:同步和异步,JMS编程模型的对象,最后说了JMS的优点. 第二篇博文JMS[二 ...

  7. php工具 phpstorm 的快捷键 的使用(待添加

    参考网址:http://www.cnblogs.com/jikey/p/3491798.html 1. ctrl+tab 键,可以切换各个选项卡 页面 2. shift+enter 键,无论光标在本行 ...

  8. NYOJ 93 汉诺塔(三)

    汉诺塔(三) 时间限制:3000 ms  |  内存限制:65535 KB 难度:3   描述 在印度,有这么一个古老的传说:在世界中心贝拿勒斯(在印度北部)的圣庙里,一块黄铜板上插着三根宝石针.印度 ...

  9. hibernate对象关系实现(四)继承实现

    继承实现方式分为三种:subclass; joined-subclass;union-subclass a.类中体现   b.库中体现分为三种: b.1:一种方式:人和学生公用一张表,添加一个辨别字段 ...

  10. [转载] HTTP 协议漫谈

    原文: http://blog.jobbole.com/88199/ 简介 网络上已经有不少介绍HTTP的的好文章.对HTTP的一些细节介绍的比较好,所以本篇文章不会对HTTP的细节进行深究,而是从够 ...