每个XCode方案的权利/能力

时间:2015-10-06 19:21:12

标签: ios xcode

Apple Pay权利/功能仅在App Store中有效。我在App Store和Enterprise中发布了这个应用程序。

  • 如果选择了App Store Release方案,我希望XCode启用Apple Pay权利。
  • 如果选择了Enterprise Release方案,我希望XCode禁用Apple Pay权利。

3 个答案:

答案 0 :(得分:14)

您可以使用其他构建配置来实现所需的行为。

  1. 复制权利文件并根据需要进行调整,例如,删除企业分发的Apple Pay权利
  2. 在项目设置视图中选择项目
  3. 添加新的构建配置,例如AppStore Xcode project settings
  4. 切换到您的应用目标并调整新版本配置的值。 Target build settings
  5. 创建一个新方案,例如AppStore,然后在" Archive"中选择新的构建配置。方案设置部分 Scheme settings
  6. 通常,拥有单独的方案和构建配置是个好主意。这样您就可以根据需要支持多种不同的构建配置,例如企业分发,曲棍球测试,App Store等。

    如果您想让项目设置更易于维护,请考虑使用xcconfig文件来组织构建设置。

答案 1 :(得分:0)

一种可能的方法:

  1. 将不同方案的权利文件放在文件夹中
  2. 让您的项目或目标的“构建设置”>“代码签名权利”指向一个位置,例如$(PROJECT_DIR)/AppName/AppName.entitlements
  3. 在“编辑方案”>“构建”>“预操作”中,添加一个“运行脚本”操作,以将该方案的权利文件复制到您在步骤2中指定的位置。 cp ${PROJECT_DIR}/entitlements/DevScheme.entitlements ${PROJECT_DIR}/AppName/AppName.entitlements

答案 2 :(得分:0)

我已经做了一段时间了。我的解决方案基于git分支。我有四个分支:masterapp-storeenterprisefeature

其中app-storeenterprise是从master衍生而来的,它们各有不同,而feature用于开发中的新功能。

每次我完成功能构建并由质量检查人员完成验证时,我都会将其合并到master ,然后将master合并到app-storeenterprise

我不精通git,但是我设法工作顺利。


我检查了其他答案,意识到我的解决方案有点愚蠢:)。