在Cordova构建中,我正在尝试为iOS应用程序添加设置。我已在Settings.bundle/Root.plist
文件中定义了设置。我想要的只是将Settings.bundle
及其子项复制到XCode项目中。
我正在尝试使用resource-file
语句执行此操作:
<platform name="ios">
<resource-file src="res/ios/Settings.bundle" />
...
</platform>
当我进行构建时,该文件夹将添加3次到我的项目而不是一次,并且该文件夹中的所有文件都不会被复制。我在日志输出中看到为此资源执行了3个CpResource
语句。
CpResource Anamnese\ mobil/Resources/res/ios/Settings.bundle build/emulator/Anamnese\ mobil.app/Settings.bundle
CpResource Anamnese\ mobil/Resources/res/ios/Settings.bundle build/emulator/Anamnese\ mobil.app/Settings.bundle
CpResource Anamnese\ mobil/Resources/res/ios/Settings.bundle build/emulator/Anamnese\ mobil.app/Settings.bundle
这与我在生成的XCode项目中看到的一致:文件夹有3次,但没有内容。我玩了一下Settings.bundle的位置和里面的文件数,看看是否与执行次数有关系,但无济于事。
所以,我的问题是,如何使用Cordova将设置正确添加到iOS应用程序?
或者,如果我保持这种分析水平:如何正确地将文件夹结构复制到iOS项目中?
答案 0 :(得分:1)
我没有找到为什么resource-file
添加了Settings.bundle三次。但我想出了另一种方法将它集成到应用程序中:我必须声明一个自己的cordova插件,列出了这个Settings.bundle。
David Souther在这里写了详细的说明:Cordova Phonegap IOS App Settings.Bundle Possible?
要安装me.apla.cordova.app-preferences我还必须将此行包含在我的cordova.xml
<plugin name="cordova-plugin-app-preferences" spec="https://github.com/apla/me.apla.cordova.app-preferences" />