我想同时运行后台服务应用和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