当我们想要实现J2ME调用原生移动应用程序接口所不提供的功能时,是否可以使用J2ME编写移动应用程序?(有点像使用.NET所做的那样,每当您需要未提供的东西时,只需从.NET平台调用Win32应用程序接口即可)。
发布于 2009-06-04 11:51:15
不是的。这在Java ME中是不可能的。
发布于 2009-06-04 14:11:35
虽然JNI在J2ME中没有得到官方支持,但J2ME的Symbian实现显然使用了非常类似的东西。
由于大多数Symbian API都有相应的Symbian OS C++ API,所以Symbian所做的(很多)就是在两者之间开发适配层。
在此与IBM API虚拟机的新模块化体系结构(从API第三版feature Pack2开始)之间,在技术上可以向虚拟机添加新的J9,而实际上不需要重新编译大多数手机固件。
然而,如果没有手机制造商的大量帮助,第三方开发人员是不被允许这样做的。
回送套接字连接是人们已经实现的跨越语言障碍传输数据的解决方案。然而,大规模部署并不是最容易的任务,因为从技术上讲,您需要在设备上安装2个应用程序。一旦你理解了塞班J2ME实现的线程模型,你就会意识到它是多么丑陋和低效。
当您遇到这样的问题时,是时候学习Symbian OS C++并做正确的事情了。
发布于 2009-06-04 12:45:15
只有一种。实际上,这是可能的,但不是直接的。您可以编写一个本地服务器来侦听本地套接字,并从您的Java向它发送请求。有人甚至发布了一个名为MIDP-JNI的框架来实现这一点(与真正的JNI相对)。显然,解决方案的形式对您可以使用它做的事情施加了一些限制,但这实际上并不是不可能的。
请注意,使用此方法可能会使应用程序的调试变得更加复杂。
https://stackoverflow.com/questions/950023
复制相似问题