自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

BlackBerry應用開發(fā)者指南 使用受控API

移動開發(fā)
本文為《BlackBerry應用開發(fā)者指南》之“使用受控API”。在本文中我們將描述的BlackBerry API訪問是受限制的.使用了受限API的應用程序可以在模擬器上運行.

我們給大家介紹過《簡介BlackBerry API》,在本指南中描述的BlackBerry API訪問是受限制的.使用了受限API的應用程序可以在模擬器上運行.盡管這樣,在將這些應用程序加載到BlackBerry設備之前,你必須從RIM(Reseach In Motion)獲得代碼簽名.

BlackBerry API包

描述

  1. net.rim.blackberry.api.browser 

此包允許應用程序可以調用BlackBerry瀏覽器.

  1. net.rim.blackberry.api.invoke 

此包允許應用程序調用BlackBerry應用程序,如任務,消息,備忘以及電話。

  1. net.rim.blackberry.api.mail 

此包允許應用程序和BlackBerry消息進行交互,發(fā)送,接收和打開消息.

  1. net.rim.blackberry.api.mail.event 

定義了消息事件以及監(jiān)聽者(Listener)接口來管理郵件事件。

  1. net.rim.blackberry.api.menuitem 

允許你增加客戶定制的菜單項到BlackBerry的應用程序中,例如地址本,日歷以及消息。

  1. net.rim.blackberry.api.options 

允許應用程序在BlackBerry設備的選項中增加選項條目。

  1. net.rim.blackberry.api.pdap 

允許應用程序和BlackBerry個人信息管理(PIM)交互,PIM包括地址本,任務,日歷。MIDP包javax.microedition.pim提供了大部分類似的功能.

  1. net.rim.blackberry.api.phone 

提供了訪問電話程序的高級特性的功能。

  1. net.rim.blackberry.api.phone.phonelogs 

提供了訪問電話呼叫歷史記錄的功能。

  1. net.rim.device.api.browser.field 

允許程序在界面上顯示瀏覽器的字段。

  1. net.rim.device.api.browser.plugin 

允許程序將對附加MIME類型的支持增加到BlackBerry瀏覽器上。

  1. net.rim.device.api.crypto.* 

這些包提供數(shù)據(jù)安全的能力,包括數(shù)據(jù)加密和解密,數(shù)字簽名,數(shù)據(jù)認證,以及認證管理.

  1. net.rim.device.api.io.http 

此包允許應用程序作為一個或多個URL的提供者注冊BlackBerry瀏覽器.

  1. net.rim.device.api.notification 

提供方法來觸發(fā)事件的通知以及響應系統(tǒng)和程序的事件.

  1. net.rim.device.api.servicebook 

允許程序增加,刪除,以及訪問服務預定接口.

  1. net.rim.device.api.synchronization 

此包允許應用程序執(zhí)行備份和恢復客戶數(shù)據(jù)的操作.

  1. net.rim.device.api.system 

此包提供了一些類,這些類支持一些功能,例如持久數(shù)據(jù)存儲,交互通信(interprocess communication),SMS,使用數(shù)據(jù)報的網(wǎng)絡連接,以及應用程序管理.#p#

代碼簽名

在BlackBerry JDE中,因為安全和導出原因,RIM跟蹤一些敏感API的使用.在API參考中,一個鎖住的圖標或者需要簽名的文本,指明了敏感的類或方法.在文檔中,對于一個包含簽名方法的類,在頁的頂部選擇或清除SHOW Signed選項來查看或隱藏簽名的方法.

如果你在你的應用程序中使用簽名的類和方法,那么在你將.cod文件加載到BlackBerry設備中之前,這些.cod文件必須數(shù)字化簽名.

(注: 在接收代碼簽名之前為了測試你的代碼,使用模擬器.為了部署到BlackBerry設備,代碼必須簽名。)

簽名工具和BlackBerry JDE一起安裝,使用此工具為你的.cod文件請求合適的簽名.

(注: 永遠不要將你的實際代碼發(fā)給RIM.簽名工具發(fā)送一個代碼文件的SHA-1哈希,以至簽名中心系統(tǒng)可以生成一個需要的簽名.)

代碼簽名驗證

代碼簽名驗證類型

描述

連接時(Linktime)驗證

當你加載一個簽名.cod文件到BlackBerry設備時,VM將此.cod文件域API庫連接,并且檢驗.cod文件是否需要簽名.如果沒有簽名,VM停止連接,并且不再加載應用程序.

運行時(Runtime)驗證

當用戶在BlackBerry設備上使用應用程序時,如果應用程序調用了一個需要簽名的方法時,VM驗證應用程序是否包含必要的簽名.如果簽名沒有提供,將會拋出一個ControlledAccessException異常,并且要求的操作也不會執(zhí)行.

為獲得更多關于.csi文件的信息,參看10頁的”注冊代碼簽名”。

代碼簽名請求過程

◆簽名工具打開一個和簽名認證系統(tǒng)的HTTP連接,并發(fā)送一個請求.這個請求包括了.csl和.cso文件中代碼的哈希.不會把實際的代碼發(fā)送到RIM.

◆簽名認證系統(tǒng)驗證請求是否有效,并且將一個RIM私有鍵應用到每個.cod文件的哈希上,以創(chuàng)建一個簽名.

◆簽名認證系統(tǒng)返回簽名給簽名工具,并關閉HTTP連接.

◆簽名工具將簽名加到每個.cod文件中.

當文件簽名以后,每個.cod文件的Status欄顯示Signed.

如果在簽名請求中有任何問題發(fā)生,Status欄顯示Failed-See Details.

當你的.cod文件簽名之后,你可以將它們加載到BlackBerry設備中.為獲得更多信息.

可選簽名

在沒有.cso文件簽名下,你可以將應用程序加載到BlackBerry設備上.如果它們對應的方法在運行時被調用,那么僅僅需要這些簽名.

當應用程序調用一個需要簽名的方法時,VM驗證應用程序是否有了這個認證.如果VM沒有發(fā)現(xiàn)這些可選的簽名,應用程序將會停止.

簽名限制

存在著有幾種情形,在這幾種情形里,代碼簽名處理不會完成:

客戶參數(shù)

簽名認證管理員通過指定使用時間或者頻率參數(shù)的限制,可以限制你訪問簽名.這些參數(shù)在你的.csi文件中有定義.當應用簽名時注意這些可能的限制.

參數(shù)

定義

# of Request

本參數(shù)設置你可以使用指定.csi文件請求的次數(shù).在使用了最大的請求次數(shù)之后,csi文件變?yōu)闊o效,并且你不可以再使用此文件請求簽名.聯(lián)系你的簽名認證管理員應用另外一個.csi文件.

因安全原因請求受限制,盡管如此, 簽名認證管理員可以允許你請求無限次.

Expiry Date

本參數(shù)設置你的csi文件的過期日期.在你的.csi文件過期后,你不能再使用此文件請求簽名. 聯(lián)系你的簽名認證管理員應用另外一個.csi文件.

為了請求改變這些.csi參數(shù), 聯(lián)系你的簽名認證管理員.

丟失數(shù)據(jù)

沒有.csi文件,你不能請求任何代碼簽名.你的注冊鍵在你的csi文件中存儲. 如果簽名工具不能找到此鍵,并通過此鍵處理你的請求,你的簽名請求沒有一個可以發(fā)送到簽名認證系統(tǒng).

如果你的系統(tǒng)停止響應,并且你丟失了數(shù)據(jù),甚至整個文件結構,你可能會發(fā)現(xiàn)你也失去了完成簽名請求的能力.如果你丟失了,csi文件,簽名工具不能和簽名認證系統(tǒng)進行通信,

如果你丟失了.csi文件,聯(lián)系你的簽名認證管理員,請求一個新的.

為代碼簽名注冊

對于每臺需要鍵的計算機,你需要一組獨立的代碼簽名鍵.一旦這些鍵安裝在一臺計算機上,你不能重新安裝或轉移到其他的計算機上.

為了為代碼簽名注冊,你必須有HTTP訪問Internet的能力.

◆為了激活你的帳戶,完成在BlackBerry開發(fā)區(qū)里的注冊表:

http://www.blackberry.com/developers.

◆當你在一個來自RIM的email里接收到.csi文件時,將它們保存到你本地計算機.

◆雙擊一個.csi文件

如果一個對話框顯示一個私有鍵不能找到,在繼續(xù)之前完成下面的操作

◆單擊Yes創(chuàng)建一個新的值對文件.

◆為你的私有鍵輸入一個密碼,重新輸入確認此密碼.

◆單擊OK.

◆移動你的鼠標,為新的私有值對生成數(shù)據(jù).

◆在Registration PIN域,輸入簽名請求表或者RIM提供的PIN值.

◆在Private Key Password域里,輸入至少8個字符的密碼.這就是你的私有密碼,它保護你的私有鍵.

(注:保護好你的私有鍵密碼. 如果你丟失了這個密碼,你必須在RIM重新注冊.如果你的密碼被偷了,立即聯(lián)系RIM撤銷你的鍵阻止其他人使用你的身份請求簽名.)

◆單擊Register.

◆單擊Exit.

修改你的私有鍵密碼

你必須有HTTP訪問Internet的能力,以至你能修改你的私有鍵密碼.

◆在BlackBerry JDE bin文件夾里,雙擊SignatureTool.jar.

◆在Old Password域里,輸入你當前的私有鍵密碼.

◆單擊Verify.

◆<輸入和確認新密碼.

◆單擊OK.

請求代碼簽名

在IDE中請求一個代碼簽名

◆編譯你的項目

在IDE里的Build菜單里,單擊Build All.IDE創(chuàng)建下列3個文件,它們放在和工程.jdp文件相同的目錄下面,對于每個項目:

文件擴展名描述

.cod文件  將加載到BlackBerry設備的已編譯的項目.

.csl文件  需要的連接時簽名列表.

.cso文件  如果應用程序調用受控API,可能在運行時需要的簽名列表.

◆在Build菜單,單擊Request signatures.

(警告: 如果你已經通過以前的SDK為代碼簽名注冊了,在安裝一個新的BlackBerry JDE版本之前,備份這些文件,它們在BlackBerry JDE bin目錄下.)

    l Sigtool.db

l Sigtool.csk

如果這些文件丟失,你必須通過RIM重新注冊.

◆單擊Add.

◆在Look In下拉列表里,單擊.cod文件所在的目錄.

◆單擊一個.cod文件.

◆單擊Open.

◆單擊Request

◆輸入私有鍵密碼.

◆單擊OK.

在命令行強求簽名

◆在命令行里,已到包含簽名工具軟件的目錄.

◆輸入下面的命令行

  1. java -jar SignatureTool.jar [-a] [-c] [-C] <file>: 

在這里:

[-a] 當你想程序自動請求簽名時使用.

[-c] 當你想程序在請求簽名沒有發(fā)生錯誤后關閉時使用.

[-C] 當你想程序不考慮它的 成功時關閉時使用.

<file> 可以為一個(僅有一個).csi文件,或一個或多個.cod文件的名字.

l  .csi:.csi文件包含了客戶注冊信息以及客戶允許應用的簽名列表.你僅可以一次使用一個.csi文件.

l  .cod:.cod文件時編譯的應用程序,在所以需要的簽名到位后,它可以加載到BlackBerry設備.你可以傳入你想要的.cod文件數(shù).

【編輯推薦】

  1. Java語言編寫B(tài)lackBerry應用程序
  2. 簡介BlackBerry Mobile數(shù)據(jù)系統(tǒng)
  3. 簡介BlackBerry應用程序開發(fā)方法
責任編輯:佚名 來源: 10086
相關推薦

2011-04-13 13:38:57

選項APIBlackBerry

2011-04-13 09:55:16

Mail APIBlackBerry

2011-04-13 11:31:06

PIM APIBlackBerry

2011-04-14 10:05:16

BlackBerry

2011-04-14 10:03:32

UI組件BlackBerry

2011-04-13 14:10:27

.alx文件BlackBerry

2011-04-14 10:34:08

BlackBerry

2011-04-18 11:00:34

使用音頻BlackBerry

2022-01-17 19:34:43

SentryWeb APISentry API

2010-05-22 16:57:09

BlackBerry開

2011-04-15 15:16:28

使用圖像對象畫圖BlackBerry

2011-07-19 09:51:32

性能優(yōu)化Designing FAndroid

2011-02-16 16:45:23

MWCRIMBlackBerry

2011-04-26 10:19:46

BlackBerry

2018-03-27 23:25:40

Paddle

2020-07-15 07:00:00

移動應用開發(fā)者指南

2013-08-29 13:41:42

Windows 8.1

2019-08-16 10:55:37

開發(fā)者技能AI

2024-05-07 08:45:16

OpenAILlamaIndex大語言模型

2024-02-01 09:37:42

Kubernetes服務網(wǎng)格? 命令
點贊
收藏

51CTO技術棧公眾號