由于业务需要,需要将开发的App从一个账号(A账号)转移到另一个账号(B账号),这里简单介绍一下转让流程。主要包括两大步骤:

  1. 转让方(A账号)提出转让申请
  2. 接收方(B账号)接受转让App

如果不想看这篇流程,可以直接查看官方给出的一些资料,详情可参见这里。还可以看一下苹果官方就如何转让App给出的回复邮件

如果不想看上面的东西,那就继续往下浏览。

现在具体说一下两个步骤以及中间遇到的坑。

1. 转让方(A账号)提出转让申请

首先打开iTunes Connect,然后找到你要转让的App,点击App信息,如下图:



点击转让App,就会进入一个查看你的App是否支持转让的页面:



我在转让的过程中出现这种情况,提示“TestFlight Beta 版测试”选项没有通过,按照他的提示,你需要把TestFlight里面所有的构建版本都移除,并且清空测试信息里面的所有数据。因为我们一直使用TestFlight做beta测试分发,所以需要将这些构建版本删除,包括测试信息里面的数据。删除构建版本的方法如下,先找到这个页面:



然后点击构建版本进入新的页面:



点击“将构建版本设为过期”,然后确认之后你就将构建版本3删除了。按照上述方法,你要把所有的构建版本都删除最终看到这种页面为止:



记得构建版本下面的App信息中的测试信息内容也要清空(如果设置了多语言,也需要将其他语言里面的测试信息清空)。

这里可能是由于缓存的问题,我把所有清空完成之后再次进入是否支持转让页面时,依然提示“TestFlight Beta 版测试”选项没有通过。我退出登录,然后清除了一下缓存,再次进入发现一切都已经ok了。



接下来点击继续,会打开如下页面:



接下来按照要求填写即可。然后点击继续进入确认页面。查看转让信息以及转让协议,最后统一条款在确认转让即可。这是便会展示如下页面信息:

到此对账号A的操作完成。

2.接收方(B账号)接受转让APP

接下来你要做的不是等待,而是让B账号所有人在itunesconnect上登录B账号,登录完成之后你会看到如下页面:



然后点击“协议、税务和银行业务”,进入之后,然后按照下图的箭头点击:



然后会让你填写一些信息,具体内容如下:



这里按照要求填写响应内容即可。 这里我遇到的一个小问题就是手机号码加上了“+86”依然报错,最后多尝试了几次(在86后面+空格,将空格删掉等),才消除错误。

然后点选同意显示的条款,最后点击"Accept"按钮就ok了。这时你会发现此App已经成功转让到B账号了。

注:App Store里面显示的开发者更新会有延迟,我的是转让成功10分钟后才展示B账号的信息。

可能遇到的问题

由于你的App已经从A账号转让到了B账号,所以你发布新版本的时候就需要通过B账号来打包了。

这时如果该App有推送,你需要创建推送证书,然后更新证书。转让并不包含证书和配置文件。

你打包的时候也可能会遇到这种问题:

  1. Potential Loss of Keychain Access - The previous version of software has an application-identifier value of ['sdfasdfsd.com.xxxx.yyyy'] and the new version of software being submitted has an application-identifier of ['ggthtrhtf.com.xxxx.yyyy']. This will result in a loss of keychain access.

它的意思是由于Team变更,可能存在潜在的钥匙串访问丢失。这个只是一个警告。具体可以参见Resolving the Potential Loss of Keychain Access warning。里面会告诉你什么时候可以忽略这个警告,什么时候不能忽略以及如何解决这个问题。

还有关于推送证书,你将新版本发布之后需要将推送证书更新一下。因此这里可能会导致的问题就是同步问题,因为你App当前可用版本有可能包括老版本和新版本,所以发送的推送有的时候可能收不到。这里可以做个强制更新。

如果App里面包含老账号的信息(例如公司名称),需要你将信息更新为B账号的信息。

总结

以上便是对转让App的简单记录。总体来说转让一款App并不需要我们花费很长时间,一般10分钟内就能搞定。有什么疑问随时沟通(Q群:206613455)。

Reference Resource

  1. 官方Resources and Help
  2. 各种苹果官方联系电话
  3. Resolving the Potential Loss of Keychain Access warning

转赞请注明来源:http://www.cnblogs.com/zhanggui/p/8276152.html

记录一次APP的转让流程的更多相关文章

  1. IOS研究之App转让流程须知具体介绍

     网络上有非常多开发人员提问怎么转让App并想知道具体的流程.实际上Appstore的App转让流程还是比較简单的.以下特酷吧依据自己的实际操作总结下iOS Appstore中App的转让流程.供 ...

  2. iOS App转让流程详情教程篇

    最近对公司旗下两款app进行转让,正好记一下操作流程: 1.登录iTunes发布网站,找到app,查看App信息下方有个[转让 App] 按钮. 2.点进去,是如下界面,里面包含是否满足转让条件,理论 ...

  3. 移动应用/APP的测试流程及方法

    1. APP测试基本流程 1.1流程图 1.2测试周期 测试周期可按项目的开发周期来确定测试时间,一般测试时间为两三周(即15个工作日),根据项目情况以及版本质量可适当缩短或延长测试时间.正式测试前先 ...

  4. APP测试基本流程以及APP测试要点

    APP测试流程梳理 APP测试要点梳理 链接:http://pan.baidu.com/s/1gfaEZ1x 密码:07yt 1 APP测试基本流程 1.1流程图 1.2测试周期 测试周期可按项目的开 ...

  5. App测试基本流程详解

    1 APP测试基本流程 1.1流程图 1.2测试周期 测试周期可按项目的开发周期来确定测试时间,一般测试时间为两三周(即15个工作日),根据项目情况以及版本质量可适当缩短或延长测试时间. 1.3测试资 ...

  6. app上线具体流程

    前言:前两天有个同事问到我APP上传的问题,几个地方我竟然模糊不清了,查了些资料在这里整理一下.鄙人是一个懒猿,一直以来都是从各位大神的博客中汲取营养,却懒于写自己的.越来越觉得写博客对于一个开发者来 ...

  7. 移动APP项目研发流程及版本规划(转)

    一个移动APP项目研发规模可大可小,但都离不开以下几个成员:产品经理.ui设计师.前端开发.后端开发.测试等.如何合理安排项目成员工作.确保项目顺利进行呢?一个清晰合理的项目研发流程控制很重要. 项目 ...

  8. iOS app 上架的流程与注意点

    这里整理了两个关于苹果应用商店上架方面的资料: 一个是app上架的流程,里面包含各个环节的截图,比较详细. 流程介绍链接   (提取码:52a4) 第二个是app上架的一些注意点,这里面主要说的是上架 ...

  9. iOS开发基础:最新的APP打包上架流程

    之前有人留言让我更新部分文章,下面就为大家分享一下iOS的APP打包上架流程: 上传至apple developer 1.1 上传准备工作 更新上架和发布上架不同,在原始版本首次上架的时候就将描述文件 ...

随机推荐

  1. 经典面试题目——250M内存处理10G大小的log文件

    前言 周末逛知乎的时候,看到的一个经典面试题目:http://www.zhihu.com/question/26435483.非常经典的一道分而治之的题目. 题目描写叙述例如以下: 有次面试遇到一个问 ...

  2. Linux 高速操作IOport

    在嵌入式设备中对GPIO的操作是最主要的操作. 一般的做法是写一个单独驱动程序,网上大多数的样例都是这种.事实上linux以下有一个通用的GPIO操作接口.那就是我要介绍的 "/sys/cl ...

  3. this的指向问题

    在 ES5 中,其实 this 的指向,始终坚持一个原理:this 永远指向最后调用它的那个对象. 例 1: var name = "windowsName"; function ...

  4. Node.js显示页面

    首先我们先要下载并安装Nodejs,然后进入Node.js中安装supervisor, npm -g install supervisor -g表示全局模式 (无论windows哪一个用户登陆都可以使 ...

  5. 自学WPF之XAML(二)控件

    摘自<深入浅出WPF>. 在WPF中是数据驱动UI,数据是核心,是主动的,UI从属于数据,并表达数据,是被动的.UI是展示给用户操作的.响应UI操作的元素是控件(control).下面是我 ...

  6. javascript 面向对象设计之 Function 普通类

    var test = "Class01"; function Class01(privateValue, publicValue) { var _this = this; if ( ...

  7. Caused by: org.apache.ibatis.exceptions.TooManyResultsException: Expected one result (or null) to be returned by selectOne(), but found: 2

    异常信息 Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with na ...

  8. web前端学习就这9个阶段,你属于哪个阶段?

    第一阶段:HTML+CSS: HTML进阶.CSS进阶.div+css布局.HTML+css整站开发. JavaScript基础:Js基础教程.js内置对象常用方法.常见DOM树操作大全.ECMAsc ...

  9. 使用soap实现简单webservice

    在网上看到一些关于用soap实现简单webservice的一些知识,简单整理一下希望对大家有所帮助. 可以给大家看一下我的简单实现的列子,Soap,大家可以到Github上自行下载. 首先说一下web ...

  10. for in,Object.keys()与for of的区别

    for in 1.for in一般用于遍历对象的属性: 2.作用于数组的for in除了会遍历数组元素外,还会遍历自定义可枚举的属性,以及原型链上可枚举的属性:3.作用于数组的for in的遍历结果是 ...