3

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

这是一张显示高级图片的图表,这是我试图遵循的详细说明。

我成功地运行了前几步:

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 文件。它链接到另一个网页,上面写着要运行这样的命令:

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-packagerorblackberry-nativepackager命令中的任何一个是否是正确的。运行会blackberry-nativepackager产生这个错误Error: not qnx tag or two many,并且使用blackberry-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].

此处记录了该确切错误以及对此的解释:

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

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

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

4

2 回答 2

1

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

于 2011-03-28T17:27:36.947 回答
1

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

以下是要遵循的 WebWorks SDK 说明,以及下面的摘要步骤。

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 App World;如果您尚未签署您的申请,请查看我们的博客文章,其中包含签署您的申请所需的信息。请签署您的申请并重新提交至 BlackBerry App World。重新提交时,将“_signed”添加到捆绑包名称的末尾,请放心,您不会失去您在审核队列中的位置。

我给他们发了电子邮件,要求他们确认我的签名是否有问题,但我在 5 天后没有得到回复,所以我认为我可能遵循了错误的指示。:-(

FTR,这个问题与这里的黑莓开发者论坛交叉发布。

于 2011-03-29T03:24:42.387 回答