首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Android上的OSGI

Android上的OSGI
EN

Stack Overflow用户
提问于 2012-05-24 02:55:09
回答 3查看 3.3K关注 0票数 0

我读到了很多关于OSGI和Android的想法,但我的问题仍然没有得到回答。我目前正在为Desktop开发一个小应用程序,使用basicly equinox作为OSGI实现。对于通用功能,我创建了一个自己的OSGI-Bundle,并使用服务注册表来获取实现,其余的就是普通的pojo。

我想问一下,有没有可能用apache-felix在android上运行普通的OSGI-Bundles?

我之所以问这个问题,是因为我试图在android上启动apache felix,但是仍然得到了一个异常: java.lang.NoClassDefFoundError: org/apache/felix/main/Main

非常感谢

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-05-24 20:22:29

您是否使用了Apache-Felix的正确版本?这是要求在Android上,有所有的jars初步转换为dex格式。这是Android的Dalvik VM唯一能理解的格式,否则你最终会得到这个java.lang.NoClassDefFoundError。

票数 1
EN

Stack Overflow用户

发布于 2012-05-24 17:53:26

看一看EZDroid

(还请注意,ProSyst有一个android OSGi framework,但我不确定它是否如您所问的那样是Felix )

一些链接:

  • http://luminis-technologies.com/technologies/ezdroid/
  • http://felix.apache.org/site/presentations.data/Apache%20Felix%20on%20Androids.pdf
  • http://felix.apache.org/site/presentations.data/OSGi%20on%20Google%20Android%20using%20Apache%20Felix.pdf
  • http://lsd.luminis.nl/osgi-on-google-android-using-apache-felix/
票数 1
EN

Stack Overflow用户

发布于 2012-06-15 15:58:24

关于Felix在安卓上的位置,将其放在/data文件夹和/sdcard中有很大的不同。不是真的熟悉Felix for Android的最新端口,但他们可能需要一些基于位置的权限。我建议在这里张贴你观察到的异常的Logcat的一部分,以便尝试为你提供一个解决方案。正如您所说,由于您的OSGi不依赖于Felix特定的API,因此我建议您查看适用于安卓的ProSyst API运行时。它可以在安卓市场上免费获得:OSGi Mobile。您可以将捆绑包放在SD卡上,然后通过UI安装它们。希望这能有所帮助!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10726134

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档