首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >我无法将应用程序上传到BlackBerry世界,原因是应用程序名为umlauts

我无法将应用程序上传到BlackBerry世界,原因是应用程序名为umlauts
EN

Stack Overflow用户
提问于 2013-05-22 13:46:51
回答 2查看 600关注 0票数 3

我有安卓应用程序(.apk包)。应用程序名称包含乌姆拉。我正在尝试将.apk包转换为.bar (BlackBerry 10)。我正在使用BlackBerry为Eclipse重新打包工具插件。

在重新打包和签名后,MANIFEST.MF包中的.bar文件中的应用程序名包含“?”标志而不是空话。由于这个原因,我无法将.bar包上传到BlackBerry世界。当我试图上传它时,我得到了一个错误:

不允许System.exit调用Manifest主属性的无效签名文件摘要!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-06-12 21:41:39

米克尔,你自己的回答不正确。BAR文件是经过签名和验证的,但是如果我将最终应用程序安装到实际的Z10设备上,则有"App \u00FCr BlackBerry“作为应用程序名称(直接打印转义序列)。

我在这里找到了简单的解决方案:在将Android应用程序移植到黑莓时,Cyrillic应用程序名被错误地编码

问题在于BlackBerry命令工具使用的编码。唯一需要的就是添加

代码语言:javascript
运行
复制
-Dfile.encoding=utf-8

参数输入到apk2bar和黑莓-签署者批处理命令中。例如:

代码语言:javascript
运行
复制
java -Djava.awt.headless=true -Dfile.encoding=utf-8 -Xmx512M -cp "$LIB/BarPackager.jar:$LIB/Apk2Bar.jar"...

然后,您可以直接从使用BlackBerry签名。

票数 1
EN

Stack Overflow用户

发布于 2013-06-10 11:31:31

我想我找到了解决办法。

比方说,我们有一个安卓应用程序(.APK),它的名称是umlauts,例如:"App für BlackBerry"。如果我们想成功地将其转换为BlackBerry应用程序(.BAR),请对其进行签名并上传到BlackBerry世界,那么接下来我们必须做以下工作:

  1. 在我们的安卓项目的AndroidManifest.xml文件中用unicode转义序列替换应用程序名称中的umlauts。因此,我们将有"App f\u00FCr BlackBerry"。构建我们的应用程序(这将创建.APK文件)。
  2. 使用apk2bar实用程序将.APK转换为.BAR (这将在与.APK文件相同的文件夹中创建.BAR文件): apk2bar <通向.APK file>的路径
  3. 将.BAR文件的文件扩展名更改为.ZIP (或在.BAR之后添加.ZIP )。用任何存档管理器解压缩文件。我们应该在归档文件夹中看到下一个文件: android/..APK META-INF/MANIFEST.MF 我们需要打开META/MANIFEST.MF文件,并检查“应用程序名称”和“入口点名称”行。如果它们看起来像: 应用程序-名称: App für BlackBerry Entry-Point-名称: App für BlackBerry 然后,我们需要将MANIFEST.MF文件复制到与.APK文件相同的文件夹中,并用unicode转义序列替换这些行中的umlauts: 应用程序名称: App f\u00FCr BlackBerry入口点-名称: App f\u00FCr BlackBerry 在这一步之后,我们可以删除.ZIP文件和解压缩文件夹。
  4. 再次使用apk2bar实用程序并附加选项: apk2bar <通向我们的.APK file> -m的路径 在这一步之后,我们将使用unicode转义序列的.BAR文件,而不是内部MANIFEST.MF文件中的umlauts。 注意:不要更新内部MANIFEST.MF文件,不要将解压缩文件夹压缩,并将归档扩展名从.ZIP更改为.BAR。这可能会损坏.BAR文件。所以是给我的。
  5. 签署我们的.BAR文件与黑莓-签署实用程序。
代码语言:javascript
运行
复制
- If our p12 and CSK passwords are the same then we could use:

黑莓-签字人-storepass <我们的P12/CSK password> <通向.BAR file>的路径

-如果我们的p12和CSK密码不一样,那么我们应该使用:黑莓-签署者-keystore -storepass作者和:

黑莓-签署者-verbose -cskpass -keystore -storepass <路径到我们的.BAR file> RDK

  1. 验证我们的.BAR文件: 黑莓-签署者-verify <通向我们的.BAR file>的路径

如果这个命令没有显示错误,那么我们可以将.BAR文件上传到BlackBerry世界。

就这样。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16693494

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档