在您的设备上安装暂存和生产iOS / Android应用程序

时间:2015-04-16 05:09:07

标签: android ios staging

我有一个应用程序,已在App Store和Play商店发布。发布的应用程序指向我的生产服务器。我想要做的是让我的设备安装一个指向我的登台服务器的“临时”应用程序,这样我就不会在开发期间搞砸真正的用户。基本上,我的设备将有两个我的应用程序 - MyApp和MyApp_Staging。登台应用程序必须能够分发给我的测试人员。

我使用Parse的推送通知功能。登台应用程序如何具有相同的功能?我是否需要另一个开发者帐户来暂存应用程序?

我一直在关注iOS Beta测试功能。在推送给我的测试人员之前,Apple似乎必须审查我的临时应用程序。如何跳过审核流程?对于Android,分阶段推出似乎是一个好主意,但分阶段的应用程序将取代生产应用程序。

有没有办法在设备上安装临时和生产应用程序?

2 个答案:

答案 0 :(得分:14)

  

对于iOS:

我在同一台设备上安装了适用于iOS的登台和制作应用。我无法为Android回答此问题,但这是我使用Parse推送通知设置的iOS。

  

答:同一台设备上的多个应用版本:

对于要在同一设备上安装的两个应用,他们需要具有不同的捆绑标识符。要做到这一点:

  1. 打开您的项目,然后转到目标的“信息”标签。
  2. 找到捆绑标识符
  3. 的设置
  4. 在标识符的末尾添加后缀,如下所示:com.MyApp$(BUNDLE_ID_SUFFIX)
  5. 现在打开“构建设置”选项卡并添加新的用户定义设置
  6. 将设置名称设为BUNDLE_ID_SUFFIX
  7. 为您拥有的每个构建配置添加不同的后缀。例如调试可以具有值.debug。将Release配置的后缀保留为空。我有3个不同后缀的构建配置。
    • 在我正在开发时调试测试
    • Adhoc将特别版本发布给测试人员。
    • 发布到App Store。
  8. 如果您遵循此路径,您会注意到您设备上安装的所有应用版本都具有相同的名称,并且很难区分它们。
  9. 要解决此问题,请返回“信息”标签,然后修改捆绑显示名称的设置,以说明${PRODUCT_NAME}${BUNDLE_DISPLAY_NAME_SUFFIX}
  10. 与上面的操作类似,创建一个名为BUNDLE_DISPLAY_NAME_SUFFIX的新用户定义设置,并为每个构建配置添加不同的值。例如我说α和β。
  11. 以上将允许您在单个设备上安装多个版本的应用程序。

      

    B:使用版本之间的解析设置推送通知。

    设置解析推送通知以适用于这些版本:按照Parse tutorial捆绑包标识符的每个创建证书和配置文件。例如我的3个包标识符有3个证书/配置文件:

    1. com.MyApp.debug是DEBUG的开发资料。
    2. com.MyApp.adhoc是Ad Hoc测试的AdHoc Production配置文件。
    3. com.MyApp是用于提交到App Store的AppStore Production配置文件。
    4. 确保在Build Settings中设置正确的配置文件,以便正确签署应用程序。

      将所有证书上传到Parse.com。 Parse允许您拥有6种不同的iOS推送证书。

        

      C:使用不同的制作和登台服务器。

      构建设置标签上设置预处理宏。搜索预处理器,并在 Apple LLVM 6.1 - 预处理下为预处理器宏设置每个构建配置的不同宏。例如对于调试ADHOC=1

      ,我要为Adhoc DEBUG=1

      然后,源代码中的某处具有如下内容:

      #if defined(DEBUG)
      
      #define SERVER <development server>
      
      #else
      
      #if defined(ADHOC)
      
      #define SERVER <staging server>
      
      #else
      
      #define SERVER <production server>
      
      #endif 
      
        

      D:向测试人员发送版本。

      此主题可能已多次涵盖。我不喜欢Apple的Beta测试流程。还有许多其他解决方案。我喜欢的是Crashlytics的 Beta

      您可以在此处阅读:http://try.crashlytics.com/beta/

      我将AdHoc构建配置部署到测试人员,因为它是使用Adhoc配置文件构建的,这允许我在没有Apple批准的情况下将其部署在100台设备上。

答案 1 :(得分:2)

  

对于Android

  • 要同时在同一设备上安装两者,请为应用程序使用不同的程序包名称

com.company.testapp - 适用于暂存的应用

com.company.live - 适用于实时模式的应用

  • 对于与服务器的交互,请在两个应用中使用不同的网址,例如将URL存储在某个文件中,并将其用作静态变量。

  • 在不同的服务器上部署GCM /推送通知代码。