java -

  显示原文与译文双语对照的内容
0 0

我非常 new java和android开发和学习我想从一个应用程序收集数据和信息像munin一样。 我正在尝试在我的应用程序中加载"插件"。 这些插件已经在应用程序中,但是我不希望单独调用它们,但是能够迭代它们。 我曾尝试使用 serviceloader,但无法将 META-INF/服务放入我的apk中。 所以我想知道是否可以在android上使用 serviceloader
编辑:我问的是 java.util. ServiceLoader,我想应该是,但是我无法确定如何将我的服务文件夹放到上的META-INF

时间: 原作者:

0 0

META-INF 文件夹是故意排除ApkBuilderapk文件;唯一的评论在 ApkBuilder.java "我们需要排除其它文件夹( 比如/META-INF )"但没有其他解释。

即使在使用 Ant 添加 META-INF 之后,如果你想使用混淆器,也会遇到麻烦,因为它拒绝替换 META-INF/services/* 文件的内容或者将它的重命名为( 这是另一个故事,作者希望保持混淆者) 。

但是,使用 Maven的人可能想要检查 https://github.com/pa314159/maven-android-plugin ( 名为的分支"修改的"),这会尝试解决这两个问题。 这是一个从原来的"android-maven-plugin"我修改了一个月前我自己的。

它还为 Proguard-4.7 提供了补丁

希望这有帮助,欢迎任何反馈。

0 0

针对这个问题有一个打开的Bug 报告。 参见 https://code.google.com/p/android/issues/detail?id=59658 web

原作者:
0 0

ServiceLoader是Java语言中的内容,与Android无关。 我建议不要使用它。 如果你只想在. apk 中找到一个类的列表,那么可以使用各种方法来执行这个 --,该将XMl文件放入列表中,列出它们,使用反射,注释等等。

...