2012-05-23 38 views
4

如何将不同的变量传入我的phonegap javascript,具体取决于我是否将xcode配置为调试或发布?最具体的现在,我希望能够切换应用程序连接到我的本地开发服务器还是连接到真正的云服务器。Phonegap - 在xcode中配置调试和发布版本

一个选项是,如果JavaScript可以检测到正在发生的构建类型,那么我可以将这两个url集合存储在.js代码中并进行适当的选择。

如果有一些地方可以在Xcode中存储不同的URL,比如可能在.plist之类的东西,那么会更好一些 - 我对XCode或Objective-C(因此phonegap)不是很好,不知道这是否是一种正常的做法。

理想情况下,我只能通过javascript和IDE配置更改来完成此操作。如果我需要更改Objective-C中的任何内容,答案必须非常具体。

+0

在C/C++有不同的宏对'DEBUG'和'RELEASE'模式集。在Objective-C中也应该有类似的东西。你可以用'#ifdef'来检查 –

回答

1

IN XCode我们有针对每个应用程序的目标。默认情况下,您为每个应用程序获取一个目标

使用xCode中的内置选项复制目标。所以一个用于本地测试,另一个用于实时模式。您也可以在这两个目标处于发布模式。

xCode中的每个目标都有单独的.plist文件来定义一些设置,并且是让您的代码库相同。现在把你的本地服务器url放到target_test的plist和真正的服务器url中。

您的代码应在运行时从相应的plist中读取。

Have a look

+0

那么我该如何从javascript读取plist? – Leopd

+0

您可能必须编写一个插件才能读取包中的plist文件。 – Futur

+1

@leopd没有找到解决此目的的插件。我会写一个,并用git url更新你.. – Futur

相关问题