2010-02-15 36 views
3

我寫了一些黑莓應用程序,但現在我試圖寫一個必須以低級別的方式訪問硬件(鍵盤)的程序,而且我似乎無法找到一種方法來實現它,也沒有任何幫助在'官方'的董事會。如何創建訪問低級硬件的BlackBerry App?

事情是,我需要知道什麼時候在黑莓鍵盤上按'$'鍵,所以我的應用程序(或常駐服務)可以捕獲它,停止顯示'$'字符,並且如果用戶接下來按下一個元音,然後給該元音添加一個口音......並且如果它按下另一個鍵,則只發送'$'字符+另一個字符。

即「$」 +「A」 = A

換句話說,我需要創建的「$」鍵轉換成音符鍵,就像典型的非美國PC鍵盤的應用程序或服務作品。

現在的問題是:整個Blackberry OS在Java虛擬機(使JVM成爲真正的操作系統)的基礎上工作。正如你所想象的,爲它編寫的每個應用程序都是用Java編寫的。

在他們的Java實現中顯然有一組特殊的blackberry api庫,因此開發人員能夠訪問特定的Blackberry功能和特性......但是,似乎並沒有我可以用來實現特定功能的事情任務。

但是,那麼也許有,我還沒有找到它,因爲我還是黑莓編程的新手。

所以,在那個筆記,任何幫助或評論將不勝感激。

-Gabriel Alonso。

+0

您先從RIM申請工作開始。 –

回答

0

黑莓不允許執行應用程序,如果他們使用某些API,更不用提低級編程。

您可以在應用程序中使用鍵盤處理的所有功能 - 這是Java的可能性。像KeyListener接口和Keypad類一樣。

1

屏幕需要有焦點才能獲得關鍵事件。

出於安全原因,RIM不允許低級別訪問其硬件。

按住字母鍵並滾動拇指滾輪,滾動瀏覽國際/重音字符,公式符號和其他標記。

Here is the source

+0

謝謝,Livinloud。我的客戶意識到這一點,然而,這是一個非常繁瑣的方式來輸入商務電子郵件等重要人物。這只是不夠快。 這就是爲什麼我被賦予編碼這種功能的任務。 – gaboalonso

+0

@gaboalonso如果您想要更好地解答此問題,我建議您直接聯繫RIM。 –

0

這是一個非常晚的答覆,但是......

您可以使用keyChar(屏幕的成員,KeyListenerInterface的)攔截任何鍵 - 首字母,捕捉關鍵按下。如果是「$」,則不要調用super.keyChar。在下一個keyChar(或沒有輸入的延遲)之後,如果以前按下$,則執行映射,並將設計的字符代碼發送到super.keyChar調用。如果keyChar存在實現問題,可以使用keyDown和keyUp。