我需要创建.zip文件以便在Blackberry(App)World上传,但the Blackberry page上的说明似乎非常令人困惑。
我有3个捆绑包,支持OS版本4.6,支持OS版本4.7及更高版本,支持6.0及更高版本。我需要支持两种语言(英语和西班牙语)。
要做到这一点,我需要为每个操作系统版本创建2个捆绑包吗?一个用于英语,一个用于西班牙语?我还需要在每个包的每个.cod文件上添加一个后缀,以支持我需要支持的语言吗?
答案 0 :(得分:1)
...我是否需要为每个操作系统版本创建2个捆绑包?
这取决于你想要怎么做。
如果英语和西班牙语版本存在大差异,那么您可能会发现自己使用不同的图像,甚至可能使用不同的UI布局,只需更改文本的语言即可。在这种情况下,您可能希望为每种语言提供不同的包(因此您将拥有3个英语包和3个西班牙语包)。该文件结构可能如下所示:
- MyApp_2.0
- release.xml
- MyAppNoTouchEnglish_4.6.0.0
- devices.txt
- <.cod files go here>
+ MyAppNoTouchSpanish_4.6.0.0
+ MyAppTouchEnglish_4.7.0.0
+ MyAppTouchSpanish_4.7.0.0
+ MyAppTouchEnglish_6.0.0.0
+ MyAppTouchSpanish_6.0.0.0
然后,在顶级release.xml文件中,您需要identify the language codes of your bundles:
<?xml version="1.0" encoding="utf-8"?>
<Release version="x.x.x.x">
<ReleaseNotes>Release note text</ReleaseNotes>
<filebundle name="MyAppNoTouchEnglish_4.6.0.0">
<language>en</language>
</filebundle>
<filebundle name="MyAppNoTouchSpanish_4.6.0.0">
<language>es</language>
</filebundle>
<filebundle name="MyAppTouchEnglish_4.7.0.0">
<language>en</language>
</filebundle>
<filebundle name="MyAppTouchSpanish_4.7.0.0">
<language>es</language>
</filebundle>
<filebundle name="MyAppTouchEnglish_6.0.0.0">
<language>en</language>
</filebundle>
<filebundle name="MyAppTouchSpanish_6.0.0.0">
<language>es</language>
</filebundle>
</Release>
但是,如果您的应用版本(英语/西班牙语)之间存在不主要差异,并且您只是想让您的代码以用户支持的语言显示文字,我建议{{3 }}。这些将允许一个捆绑包支持英语和西班牙语。这样,您只需要3个捆绑包(MyAppNoTouch_4.6.0.0,MyAppTouch_4.7.0.0和MyAppTouch_6.0.0.0)。 using the BlackBerry localization APIs
如果你这样做,如果我没记错,你只是不在release.xml中包含<language></language>
元素,因为每个bundle都支持这两种语言。
我是否还需要在每个包的每个.cod文件上添加一个后缀,以支持我需要支持的语言?
不,你没有拥有,但实际上还有另一种方式来处理这个问题。你可以让一个“捆绑”支持英语和西班牙语。然后,在该捆绑包中,您可以拥有不同的.cod文件,这些文件分别支持英语或西班牙语:
- MyApp_2.0
- MyAppNoTouch_4.6.0.0
- MyApp_en.cod
- MyApp_es.cod
- MyApp-1_en.cod
- MyApp-1_es.cod
- MyApp-2_en.cod
- MyApp-2_es.cod
我个人没有使用过这种技术。这只是实现本地化的另一种方式,但您不必这样做。