黑莓代码签名'无法请求签名......'

时间:2013-02-21 12:35:30

标签: blackberry blackberry-eclipse-plugin blackberry-jde

我在另一台机器上拍摄了其他人创建的项目。

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

3 个答案:

答案 0 :(得分:1)

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

isthesigningserverdown.com

对签名进行故障排除始终是一个快速而简单的开始。

答案 1 :(得分:0)

请参阅this blackberry.com reference

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

注意:如果您使用的是Eclipse插件,而不是旧的JDE,那么您可以转到 BlackBerry 菜单,选择签名,以及安装新密钥导入现有密钥。您必须使用BlackBerry(RIM)为您提供的所有三个文件。例如,要安装全新的密钥:

  

客户端-RBB-12341231.csi
  client-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™加密(RCC)签名机构,用于控制对设备上的Certicom加密功能的访问。有关访问设备上的Certicom API的更多信息,请访问Certicom。

  • 场景3 - 尝试使用无法访问的签名机构

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

注意:JDE 4.1允许您在“首选项”下启用代码签名警告。这将确定应用程序中尝试使用每个签名机构签名的区域。


Here's one more useful guide on the BlackBerry website

答案 2 :(得分:0)

RIM的签名服务器偶尔会失败。我一次看了几个小时。