打包并签署Playbook的BlackBerry WebWorks SDK应用程序时出错

时间:2011-03-25 02:33:05

标签: blackberry-playbook blackberry-webworks

我一直在尝试按照BlackBerry文档在命令行上签署WebWorks SDK应用程序并上传到App World。

以下是chart showing the high level picture,以下是the detailed instructions我想要关注的内容。

我成功完成了前几步:

C:\MyDir>blackberry-signer -csksetup -cskpass <mypwd>
CSK file created.

C:\MyDir>blackberry-signer -register -csjpin <mypin> -cskpass <mypwd> client-RDK-<snip>.csj
Successfully registered with server.

C:\MyDir>blackberry-keytool -genkeypair -keystore sigtool.p12 -storepass <mypwd> -dname "cn=<My Company>" -alias author
<No output!>

说明现在说我需要打包我的BAR文件。它链接到another web page,表示运行如下命令:

blackberry-airpackager -package output_filename project_name-app.xml project_name.swf any_other_project_files

虽然听起来它适用于AIR应用程序而不是WebWorks SDK但我还是尝试了,我收到错误:

C:\MyDir>blackberry-airpackager -package output\MyApp.bar config.xml input
C:\MyDir\config.xml: error 102: Invalid namespace http://www.w3.org/ns/widgets
Error: AIR validation failed

然后我看看blackberry-packagerblackberry-nativepackager命令中的任何一个是否正确。运行blackberry-nativepackager会产生此错误Error: not qnx tag or two manyblackberry-packager的使用似乎不合适,例如。

Usage:
  blackberry-packager -generatemanifest [<manifest-file>]
  blackberry-packager -verifymanifest <manifest-file>
  blackberry-packager -metafolder <META-INF folder> [-javafolder <java-folder>] [-datafolder <data-folder>] [-nativefolder <native-folder>] [-airfolder <air-folder>] [-nocompression] <barfile.bar> (<inputfile>)*

所以,我现在恢复打包,就像我最初在测试期间所做的那样,即我创建一个ZIP文件并使用bbwp.exe

C:\MyDir>bbwp.exe "MyApp.zip" -o "output"
[INFO]                  Parsing command line options
<snip>
[INFO]                  Packaging the bar file
[INFO]                  Bar packaging complete
[INFO]                  WebWorks application packaging complete

看起来不错,所以我进入最后两步,即:

blackberry-signer -verbose -cskpass <mypwd> -keystore sigtool.p12 -storepass <mypwd> output\MyApp.bar RDK
blackberry-signer -keystore sigtool.p12 -storepass <mypwd> output\MyApp.bar author

不幸的是,第一步失败了:

C:\MyDir>blackberry-signer -verbose -cskpass <mypwd> -keystore sigtool.p12 -storepass <mypwd> output\MyApp.bar RDK
<snip>
42 43 65 30 58 31 19 36 79 22 50 64 71 12 38 4e
74 68 78 34
Connecting to url http://www.rim.net/Websigner/servlet/RDK-Waterloo
Sending properties to server...
Properties of response := [
Version = 1
Response = Signature Response
Confirm = null
Error = Code signing request failed because Application-Development-Mode in Manifest is present and is not set to [false].
]
barsigner error: server error: Code signing request failed because Application-Development-Mode in Manifest is present and is not set to [false].

记录了here的确切错误及其解释:

  

代码签名请求失败,因为Manifest中的Application-Development-Mode存在且未设置为false
  的描述
  当您尝试签署.bar文件时,会出现此消息   以开发模式打包。   可能的解决方案
  重新打包.bar文件。如果你使用   blackberry-packager,或其他   命令行工具,不包括   在命令行中调试选项。

不幸的是,这对我没有任何帮助。我的理解是,WebWorks SDK中的config.xml文件取代了对MANIFEST.MF文件的需求。

有人可以帮我解决这个痛苦吗?

2 个答案:

答案 0 :(得分:1)

您可以尝试在BlackBerry Web Development支持论坛上发帖,有RIM工作人员监控该论坛: http://supportforums.blackberry.com/t5/Web-Development/bd-p/browser_dev

答案 1 :(得分:1)

我怀疑,我的问题似乎是我正在遵循AIR应用程序的签名说明,而不是WebWorks SDK应用程序。

Here are the WebWorks SDK instructions以及下面的摘要步骤。

blackberry-signer -csksetup -cskpass <mypwd> 
blackberry-signer -register -csjpin <mypin> -cskpass <mypwd> client-RDK-<snip>.csj    
blackberry-keytool -genkeypair -keystore sigtool.p12 -storepass <mypwd> -dname "cn=<My Company>" -alias author 
bbwp.exe "MyApp.zip" -gcsk <mypwd> -gp12 <mypwd> -o "output"

我最初成功地遵循了这些步骤,我的困惑开始了,因为BlackBerry在我第一次提交后给我发了一封电子邮件说:

  

另外,要使您的应用可用   下载,还有一个   步。每个应用程序必须“签名”并且   重新提交到BlackBerry App World;   如果您还没有签署申请   请查看我们的博文   包含所需的信息   签署您的申请。请签字   你的申请并重新提交给   BlackBerry App World。什么时候   重新提交添加“_signed”到最后   捆绑名称和放心   你不会失去你的位置   审查队列。

我给他们发了电子邮件,要求他们确认我的签名是否有问题,5天后我没有收到回复,所以我想我可能会按照错误的指示行事。 : - (

FTR,此问题与BlackBerry开发人员论坛here交叉发布。