我正在开发一个将在“内部”分发的iPad应用程序,即仅在企业内部。他们问我是否可以在同一台iPad上安装同一个应用程序的2个不同版本。
第一个将与生产服务器通信,而第二个将使用沙盒服务器,用户将使用它来学习系统。服务器网址将在应用设置中更改。
他们告诉我用图标和标题来区分这些版本(当然,也可以通过导航栏中的标题来区分)。实现这一目标避免重复项目的最佳方法是什么?
答案 0 :(得分:2)
听起来你有3个变量:
一个想法可能是添加一个单独的构建配置,称之为“Sandbox”。以下是how to create a new build configuration的示例。然后,有两个单独的Info.plist文件,指定“Bundle display name”和“Icon files”。复制现有的Info.plist并将其命名为“Sandbox-Info.plist”。
然后,在项目的设置中,选择目标(在左侧)和“构建设置”选项卡。搜索“Info.plist文件”,然后展开它。对于Sandbox条目(您之前设置的构建配置的名称),将此条目更改为您创建的Sandbox-Info.plist文件。
这包括名称和图标设置。对于API地址,请在“构建设置”选项卡中搜索“其他C标志”。展开它。对于每一行,添加如下值:
-DAPI_URI=@\"http://api.example.com\"
对于Sandbox条目,无论你的沙箱URI是什么,都要改变它。
最后,在您的代码中,请参阅API_URI作为API地址的字符串。
希望这有帮助!