1

尝试将 playbook 应用程序更新上传到 BlackBerry World 时,我开始收到奇怪的错误消息。我认为这个问题是在安装 1.6.1 版的 eclipse 插件后开始的。

错误信息:

“signals_playbook 的 .bar 清单文件中的包版本必须高于以前的版本,但低于添加到供应商门户的任何下一个版本。你的 .bar 清单文件包版本必须大于 3.0。更正你的.bar 清单文件,然后重试以继续。”

我的 AndroidManifest.xml 包含:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="ca.rcp.mobile.cror.signals"
android:versionCode="7"
android:versionName="3.1" >

BAR 中包含的清单文件显示以下信息:

Archive-Manifest-Version: 1.1
Archive-Created-By: Apk2Bar version 1.6.1

Package-Author: xxxxxxxx
Package-Author-Id: some hash xxxxxxxxx
Package-Name: xxxxx.cror.signals
Package-Id: some hash xxxxxxxxx
Package-Version: 1.0.7.1
Package-Version-Id: some hash xxxxxxxx
Package-Type: application
Package-Architecture: armle-v7
Package-Author-Certificate-Hash: some hash xxxxx

Application-Name: Railway Signals
Application-Id: some hash xxxxxxxx
Application-Version: 1.0.7.1
Application-Version-Id: some hash xxxxxxxxxxx
Application-Requires-System: Tablet OS/2.0.0.7109

我的系统:

Windows 7 x64 使用带有最新 ADT 和更新的 Eclipse 3.7.2。

我明白为什么黑莓世界在抱怨,它认为版本号是 1.0.7.1。如何让它显示 3.1.0.0?

我尝试编辑包含在栏中的清单文件,保存并重新提交。但这不起作用(不认为会但值得一试)。

有谁知道 1.0.7.1 来自哪里?我可以覆盖它吗?

谢谢罗伯

4

3 回答 3

4

我们突然开始在构建时遇到同样的问题。显然,黑莓构建工具发生了一些变化。尝试将应用程序的android:versionName属性设置为 4 部分值(例如3.1.0.1)。黑莓一直使用这种格式 (major.minor.micro.build) 用于原生应用程序。似乎除非您的 Android 清单具有相同的格式,否则 BlackBerry 构建工具无法解析 versionName 属性并使用回退。据我所知,回退是android:versionCode在默认应用程序版本代码中使用 的值作为微版本;也就是说,它将 .bar 文件清单中的应用程序版本设置为

1.0.<android:versionCode value>.1

(我当然不想成为必须为实施这种行为辩护的工程师。)

另一种方法是创建具有所需应用程序版本的自定义清单文件。MANIFEST.MF在同一目录中创建一个名为AndroidManifest.xml. 然后添加您想要的特定 .bar 清单条目。例如,它可能是:

Archive-Manifest-Version: 1.1

Package-Version: 3.1.0.0
Application-Version: 3.1.0.0

然后在 Eclipse 中打开项目属性,导航到 BlackBerry,并在“Custom BAR Manifest”下拉列表中选择“Add custom values (merge)”。

于 2014-01-30T21:04:58.017 回答
0

我也遇到了同样的问题,但我通过在我的 Android 清单文件 android:versionCode="30" 中添加这一行来修复它,之前我有 android:versionCode="29" 所以将它升级了一个。问题得到了解决。

于 2014-09-18T04:41:18.370 回答
0

谢谢你,特德!

关于这个主题还有另一个链接; http://supportforums.blackberry.com/t5/BlackBerry-World-Development/The-package-version-in-your-bar-manifest-file-for-New-Bundle/td-p/2754567

迁移到 Gradle 后我们开始注意到问题:

AndroidManifest.xml:

android:versionCode="1312310309" android:versionName="2.28.4"

清单.MF:

Application-Version: 14.1231.309.0

AndroidManifest.xml:

android:versionCode="134" android:versionName="2.30.31402271059"

清单文件

Application-Version: 1.0.134.0
于 2014-03-12T15:27:21.530 回答