首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > BlackBerry >

blackberry的两个程序之间互相调用,该如何处理

2012-03-20 
blackberry的两个程序之间互相调用问:RT blackberry的两个程序之间互相调用,如何调用的,涉及到传参是否可

blackberry的两个程序之间互相调用
问:
   
  RT blackberry的两个程序之间互相调用,如何调用的,涉及到传参是否可以完成。

  具体是这个样子的,在blackberry后台启动一个程序,用来监听用户的活动,当用户执行了某些特殊操作时,这个监听程

序将调用,另一个程序启动,并展示相应的页面给用户。


  这个功能是否能够实现,具体实现方法是什么啊?请黑莓大牛,帮忙解决,3q

[解决办法]
How To - Launch a third-party application from another third-party application
http://www.blackberry.com/knowledgecenterpublic/livelink.exe/fetch/2000/348583/800332/800620/How_To_-_Launch_a_third-party_application_from_another_third-party_application.html?nodeid=1094023&vernum=0
[解决办法]
你问的问题应该是后台线程如何启动UI界面吧。

下面这个方法可以把自己的screen 移到前台。
 ApplicationManager.getApplicationManager().requestForeground(getProcessId());


参考:开发工具内置的例子程序:ActiveTextFieldsDemo 

[解决办法]
简单的方法是,一个BlackBerry project,修改BlackBerry_App_Descriptor.xml,配置为两个甚至多个entry point,一个主程序,在main()方法里面根据entry point传过来的命令行参数生成不同java运行实例(实例效果等同于程序)。


参考例子代码
******************************************************************************************/
public static void main(String[] args) {
if( args != null && args.length > 0) { //entry point是有参数的,那么打开GUI窗口
ECLApplication theApp = new ECLApplication();
theApp.enterEventDispatcher();
}
else { //entry point是没有参数的,那么启动PushedDataListener线程在后台运行,监听push来的数据
PushedDataListener.waitForSingleton().start();
}
}

[解决办法]
你可以用黑莓专有的invoke,可以用chapi,这种互操作可以实现的途径很多。
[解决办法]
第一个问题:

可以。
http://www.blackberryforums.com/developer-forum/81119-sharing-persistent-object.html


第二个问题:
我要告诉你不可以,相信你可以在网上找到很多干这个事情的东西。
不过alx是应用配置数据库,你把alx文件打开就知道了,标准的alx是不允许干这事的,一个ALX是对应一个应用的。

下次问问题可以新开一个帖子。

热点排行