1

我在另一台机器上完成了一个由其他人创建的项目。

  • 我已经填写了签名密钥表格并将我的密钥通过电子邮件发送给我。
  • 我已经双击每个来安装它们:然后我转到 vmTools 文件夹中的签名工具。选择了我的 .cod 文件(今天构建)。
  • 然后,我在状态列中获取旁边带有“未注册”的 cod 文件列表。
  • 我点击了请求按钮并收到错误消息。'在此应用程序已向所有签名机构注册之前,无法请求签名。我错过了什么?
4

3 回答 3

1

听起来签名服务器可能已关闭,您可以在此处查看签名服务器的当前状态:

isthesigningserverdown.com

它始终是对签名进行故障排除的快速简便的开始。

于 2013-02-27T13:50:06.363 回答
0

请参阅此 blackberry.com 参考资料

为了防止这丢失链接腐烂,我粘贴了下面的重要内容。

注意:如果您使用的是 Eclipse 插件,而不是旧的 JDE,那么您将转到BlackBerry菜单,选择Sign,然后选择Install New KeysImport Existing Keys。您必须使用BlackBerry (RIM) 提供的所有三个文件。例如,要安装全新的密钥:

客户端-RBB-12341231.csi
客户端-RCR-12341231.csi
客户端-RRT-12341231.csi

或导入现有密钥:

sigtool.csk
sigtool.db


问题

在某些情况下,当您尝试使用 SignatureTool 应用程序对应用程序进行签名时,您会收到以下错误:

在此应用程序已向所有所需的签名机构注册之前,无法请求签名。

原因

您正在尝试为您的应用程序请求代码签名签名,但 SignatureTool 未向所有必需的签名机构注册。

RIM 代码签名框架签名有两种类型:

  • 必需的签名- 这由与 .cod 文件关联的 .csl 文件指定。在设备上加载您的应用程序需要一个必需的签名。

  • 可选签名- 这由与 .cod 文件关联的 .cso 文件指定。可选签名表示系统可以对应用程序执行运行时签名检查。如果应用程序未签名,则不允许执行预期的方法。

SignatureTool 会阻止您对应用程序进行签名,因为它会等到所有必需的签名都到位。必需的签名是应用程序在设备上成功加载所必需的。

解析度

有几种不同的情况,其中 SignatureTool 未向所需的代码签名服务器注册。

  • 场景 1 - 未在公共签名机构注册

共有三个公共签名机构(RBB、RRT 和 RCR),它们代表受控应用程序编程接口 (API) 的不同部分。当您收到代码签名密钥时,您会收到代表三个代码签名服务器的三个 .csi 文件。在所有三台服务器上注册很重要。要确定哪些签名密钥已成功安装和/或丢失,请查看本文

  • 场景 2 - 尝试使用受控签名机构

还有一个额外的公共签名机构,即 Certicom™ Crypto (RCC) 签名机构,用于控制对设备上 Certicom 加密功能的访问。有关在设备上访问 Certicom API 的更多信息,请访问 Certicom。

  • 场景 3 - 尝试使用不可访问的签名权限

Research In Motion® 维护自己的内部签名权限,以保护未公开的 API 或未公开的数据。无法访问这些签名权限,并且应从您的应用程序中删除对 Research In Motion 内部方法或数据的任何引用,以允许 SignatureTool 对您的应用程序进行签名。

注意:JDE 4.1 允许您在首选项下打开代码签名警告。这决定了您的应用程序中尝试使用来自每个签名机构的签名的区域。


这是 BlackBerry 网站上更有用的指南

于 2013-02-24T02:57:19.503 回答
0

RIM 的签名服务器有时会失败。我一次看过它好几个小时。

于 2013-02-24T04:24:26.123 回答