javascript - 用cordova制作的本地化ios应用程序的正确文件夹结构是什么
问题描述
没有给出完整答案的类似问题:
- 如何本地化 Cordova iOS 项目?
- 如何本地化 iOS info.plist 文件中的字符串?
- 如何为不同语言本地化 iphone 应用程序?
- 如何在 Cordova for iOS 中本地化应用程序名称?
问题
我目前正在开发的应用程序需要一些本地化字符串,但我很难找到正确的 cordova/apple 文档来准确地告诉我如何设置正确的文件目录。
我的理解
- 您需要为
InfoPlist.strings
应用程序中的每个区域设置一个资源文件。 - 此文件遵循
key = "value";
格式 - 您需要
CFBundleLocalizations
在 config.xml 中设置并列出应用程序中的语言环境:
<config-file parent="CFBundleLocalizations" target="*-Info.plist">
<array>
<string>en</string>
<string>es</string>
</array>
</config-file>
我不明白的是
是否有一些我需要添加的科尔多瓦配置可以正确设置我的文件夹结构?在 xcode 的项目编辑器中帮助它说明
在项目导航器中,每个本地化的资源都成为一个包含特定语言资源的组。对于用户界面文件,该组包含基本语言的用户界面文件和每种附加语言的字符串文件(字符串文件与用户界面文件同名,但文件扩展名为 .strings)。例如,如果您添加德语,Main.storyboard 将成为包含 Main.storyboard(基础)和 Main.strings(德语)的组。
在文件系统中,Xcode 会创建一个单独的语言文件夹来存储特定于语言的资源。文件夹的名称是语言 ID,后跟 .lproj 文件扩展名,例如 de.lproj。如果您从语言菜单中选择德语 (de)。Xcode 将每个用户界面文件的语言特定字符串文件添加到语言文件夹。Xcode 创建的字符串文件包含可本地化文本的占位符。稍后,您将导出和导入这些语言文件夹以进行本地化。
在 xcode(cordova 之外)中手动执行任何操作都违背了使用 cordova 自动执行此操作的目的。我目前的项目结构看起来像
package.json
config.xml
platforms/
ios/
cordova/
CordovaLib/
platform_www/
www/
dev-app.xcodeproj/
dev-app.xcworkspace/
dev-app/
config.xml
dev-app-Info.plist
Xcode 项目编辑器帮助为我提供了正确设置项目的图片,我如何使用cordova(可能是钩子,无论如何)来获取此设置?
解决方案
推荐阅读
- python - 如何根据另一个列表的内容删除一个列表中的列表元素?
- algorithm - codeforces 559C 的算法
- firebase - Spark 计划上的 Firebase Cloud Function 计划
- r - 如何更改一个图中的绘图顺序?
- html - 使用 flex-direction: row 使 flexbox 子填充可用的垂直空间
- vue.js - v-model 没有在 Android Chrome 浏览器上的输入更新
- java - 如何选择使用 angularjs 下载文件并将其发送到 java 类的路径?
- python-3.x - 在python中搜索二维列表中的出现
- r - 我在 R 中绘制我的数据,但图例不存在,尽管我在命令行中输入了
- java - 更改存储在 ArrayList 或 HashMap 中的对象属性的最佳方法是什么?