我想同時運行後臺服務應用和UIApplication。怎樣才能同時運行後臺服務應用和UIApplication
是否可以在同一個項目中創建或需要創建單獨的單獨項目。
事實上,我很混淆在Event Thread中如何調用或啓動後臺服務。
我想同時運行後臺服務應用和UIApplication。怎樣才能同時運行後臺服務應用和UIApplication
是否可以在同一個項目中創建或需要創建單獨的單獨項目。
事實上,我很混淆在Event Thread中如何調用或啓動後臺服務。
黑莓開發論壇是全螺紋和示例代碼來完成這事。
個人而言,我使用備用入口點方法,將後臺應用程序作爲自動啓動UiApplication(不帶圖標)運行,但不使用MainScreen,但使用自己的調度線程拋出對話框或類似的通知,然後當實際的主圖標被按下/點擊時,我啓動Ui入口點與用戶一起玩。
這是你可以設置一個備用入口點的應用程序:
A-使用BlackBerry®Java®插件用於Eclipse®
爲創建項目後原始應用程序,創建一個備用入口點來啓動應用程序UI。
1-雙擊項目中的BlackBerry_App_Descriptor.xml。
2-檢查系統模塊並且不要在BlackBerry主屏幕上顯示應用程序圖標。
3在「Alternate Entry Point」選項卡上單擊。
4-單擊添加按鈕。
5-輸入入口點的標題並單擊確定。
6-指定將使用此備用入口點啓動應用程序的應用程序參數(例如:gui)。
7-進入「常用步驟」部分。
8修改原始項目的main()方法如下:
public static void main(String[] args) {
if (args != null && args.length > 0 && args[0].equals("gui")){
// code to initialize the app
theApp.enterEventDispatcher();
} else {
// code to launch the background thread }
}
}
B-使用BlackBerry JDE
原始應用程序創建項目後,您將不得不爲UI入口點創建另一個項目。假設要運行的線程與原始應用程序存在於同一項目中,請執行以下步驟:
1-右鍵單擊項目節點並選擇屬性。
2-在「屬性」窗口中,選擇「應用程序」選項卡。
3-確認選中了以下選項:啓動時自動運行,系統模塊(向系統註冊線程)。
4-在與原始項目相同的文件夾下創建另一個項目。右鍵單擊新項目節點並選擇「屬性」。
5-選擇應用程序選項卡,然後從項目類型下拉列表中選擇備用CLDC應用程序入口點。如附件所示,從Alternate入口點下拉列表中選擇原始項目的名稱(例如trafficreporter)。還要指定將使用此備用入口點啓動應用程序的參數(例如:gui)。 繼續進入通用步驟部分。
6-修改原始項目的main()方法如下:
public static void main(String[] args) {
if (args != null && args.length > 0 && args[0].equals("gui")){
// code to initialize the app
theApp.enterEventDispatcher();
} else {
// code to launch the background thread }
}
}
謝謝阿什拉夫,但我想從事件線程調用後臺服務。可能嗎?如果是的話,請告訴我如何? – 2011-04-26 07:41:27
使用UiApplication.requestForeground().....如果這些答案對您有幫助,請將其標記爲答案 – 2011-04-26 09:27:48
@AshrafBashir。可愛的解釋。 – 2012-06-22 06:25:31
由於丹,但我想從事件線程中調用後臺服務。可能嗎?如果是的話,請告訴我如何? – 2011-04-26 07:42:22
有兩種方法可以完成此操作 ---方法1.創建一個包含UI和後臺偵聽器的應用程序,並重寫close()方法,僅將其自身作爲後臺 - 它從不調用System.exit()也就是說。這可以完成所有的處理和UI,並且在元素之間有相當簡單的通信。實現可能會很痛苦,因爲您需要隨處請求BackBackground。 ---方法2:我使用上述的替代入口方法,並在啓動時將引用傳遞給我的自動運行Singleton偵聽器(使用RuntimeStore Singleton)到UI應用程序中。 – Dan 2011-04-26 18:29:19
嗨丹你可以顯示完整的代碼示例如何做到這一點? 我需要從UI應用程序安裝服務應用程序,請告訴我該怎麼做? – IamStalker 2011-08-07 06:43:55