标签: app-transfer

将使用 Apple Sign in 和 Firebase 的 iOS 应用转移到新的开发者帐户

作为应用程序收购的一部分,我们正在将一款应用程序从一个 Apple 开发者帐户转移到另一个帐户。该应用程序使用 Apple Sign in 和 Firebase 身份验证,并且似乎需要完成几个与为使用 Apple Sign in 注册的用户生成传输标识符相关的步骤。这在此处记录:

https://developer.apple.com/documentation/sign_in_with_apple/transferring_your_apps_and_users_to_another_team

但是,由于我们使用 Firebase 作为应用程序的后端,因此我们无法直接控制身份验证过程和 Apple 登录生成的用户 ID、它们如何存储在 Firebase Auth 中以及如何在应用程序传输后更新它们。

关于如何生成转移标识符的文档也很混乱,因为不清楚是否需要为所有用户生成转移标识符,以及如果用户在他们提到的 60 天内没有登录应用程序该怎么办转移后。

如果有人以前遇到过这个问题,我们将非常感谢您提供一些关于如何实现这一目标的建议。非常感谢!!

ios app-transfer firebase-authentication apple-sign-in

9
推荐指数
1
解决办法
2252
查看次数

转移具有应用内订阅的iOS应用

所以我在这里遇到了一些困境......我需要将应用程序从另一个组织的iTunes Connect(ITC)帐户转移到我自己组织的ITC帐户.

但问题在于,相关应用程序具有与之关联的应用程序内订阅,Apple不允许转移具有应用程序内订阅的应用程序(或曾经有过这些订阅).

因此,我建议采用循环方式进行此转移:

  1. 创建现有应用的新次要版本,以便我们可以为当前用户群提供有关我们打算推出新应用的一些有用信息

  2. 在旧的ITC帐户下发布此版本(显然),并将其作为次要版本进行版本控制

  3. 在新的ITC帐户中创建一个新应用程序,并将其命名为{oldAppName} -Test或类似名称

  4. 通过各种QA和内部测试,让这个新的"测试"应用程序准备好投入生产

  5. 拒绝旧ITC帐户中的当前应用程序,并在我们准备好将新应用程序投入生产时继续删除旧应用程序(这将释放应用程序名称以供其他ITC帐户使用)

  6. 删除当前应用后,我们可以将{oldAppName} -Test重命名为{oldAppName}并将其发布到App Store

当然,这种方法绝不是真正的转移,因为删除应用程序会丢失所有关联的数据和历史记录,但我们真的只需要接管应用程序及其名称,这样我们就可以提供完全重写的产品同名的.

我们正在从应用内订阅收入模式转向不同的收入模式,因此订阅数据和历史对我们来说无关紧要.

但是,我不禁觉得这是一个非常粗糙的方法.

有人对此有任何建议吗?或者希望我这样做更清洁?

在此提前感谢您提供的任何帮助.

app-store ios app-transfer

7
推荐指数
2
解决办法
1676
查看次数

如何从要在 iTunes Connect 中传输的应用程序中删除构建和测试程序?

我的一个 Apple 开发者帐户即将到期,我正在尝试将我现有的应用程序转移到新注册的帐户。

当我按下“传输应用程序”按钮时,它列出了我的应用程序必须满足的一组标准,其中一个待定标准是“您必须从要传输的应用程序中删除所有构建和测试程序,并清除测试下方的每个信息字段信息。”

但是,我来回浏览 iTunes Connect 页面,但找不到“删除所有版本”或“删除测试人员”的选项。关于如何做到这一点的任何想法?

app-store ios app-transfer app-store-connect

7
推荐指数
5
解决办法
5706
查看次数

删除对Passkit的引用是否允许我将App从One Developer Account转移到另一个Developer帐户?

我无法将我的iOS应用程序从一个开发人员帐户转移到另一个开发人员帐户,因为它包含引用PassKit.framework.如果我删除,是否可以转移应用程序PassKit.framework.

我的应用不包含任何类型的电子钱包权利.

ios passkit app-transfer wallet

7
推荐指数
0
解决办法
89
查看次数

应用程序传输钥匙串丢失:用户注销的解决方案

我将应用程序转移到新的开发者帐户。当我从新的开发者帐户上传构建并通过 Testflight 部署它时,我遇到用户从应用程序注销的情况。

\n

我认为这是由于钥匙串丢失造成的,因为Team ID发生了变化。因此,我联系了Apple,他们说无法访问新开发者帐户中的旧钥匙串,但我可以将应用程序转移回我的旧开发者帐户。

\n

这对我们来说确实很糟糕,因为我们在设备中保存了用户创建的数据,这些数据在注销时会丢失。我们还有匿名用户,他们甚至无法重新获得对其帐户的访问权限,因为没有登录凭据。这对我们来说是不可接受的,因为我们会丢失用户数据,但我们还需要将应用程序转移到新的开发者帐户......因此我们正在尝试寻找可能的解决方案。

\n

可能的解决方案#1

\n

远非理想:例如,继续使用旧的开发者帐户一个月,并显示一条警告,内容如下:

\n
\n

请保存/备份您的所有数据并注册(如果您有匿名\n帐户),因为由于迁移,所有未保存的数据将在[今天日期 + 1\n个月]丢失。带来不便敬请谅解。

\n
\n

一个月后,我们再次转账到新的开发者账户。当月没有看到该消息或没有保存数据的用户,再见数据\xe2\x80\xa6 可怕。

\n

可能的解决方案#2

\n

我不确定 Firebase Auth iOS SDK 是否具有执行以下操作的 API:

\n
    \n
  1. 将应用程序再次转移回旧的开发者帐户
  2. \n
  3. 从那里上传一个新版本,将 Firebase 身份验证状态(例如令牌)临时保存在文件中(我知道它不安全......也许我可以加密它)
  4. \n
  5. 再次将应用转移回新的开发者帐户
  6. \n
  7. 上传一个新版本,检查该文件是否存在,然后再次将身份验证状态复制到 Firebase 身份验证 SDK 中。这样用户仍然保持登录状态,就好像什么也没发生一样。
  8. \n
\n

第二种解决方案有点不安全、复杂且难以测试,但从用户的角度来看,它比第一种解决方案更理想(如果一切顺利的话)。

\n

所以,我的具体问题是:

\n
    \n
  1. 解决方案 #2 可以通过 Firebase Auth 实现吗?
  2. \n
  3. 有人对如何解决这个问题有更多的想法吗?我想传输应用程序(通过登录)是一个常见的用例!
  4. \n
\n

我们目前仅使用匿名和电子邮件/密码身份验证方法。

\n

谢谢!

\n

keychain ios app-transfer firebase-authentication

5
推荐指数
1
解决办法
1665
查看次数