本问题已移至https://softwarerecs.stackexchange.com/questions/27841/plugins-architecture-for-an-android-app
我想为开源应用程序实现一个插件系统,因为它已经变得非常庞大,只有少数用户需要许多功能.发布不同的应用程序并不是一个好的解决方案,因为userA需要feature7和feature24而userB需要feature39和feature24.
我在哪里可以找到插件架构的好例子?
这是我想要一个插件能够做到的:
例如,其中一个插件必须在特定屏幕上添加一个按钮,单击此按钮会增加应用程序数据库中的值.据我所知,这对内容提供商和意图不可行.
我想避免让核心应用程序的代码复杂化,到处都是大量的钩子.
插件的形式可以是SD卡上的文件,应用程序或其他任何内容.
有没有proper/easy办法使用Gradle解决64k方法限制?
我的意思是一些自定义Gradle任务使用pre-dexed jar来创建单独的dex文件,而不是单个classes.dex.
谢谢
伊万
目前,我正在努力使用GMS:它引入了20k方法来使用Google Analytics.我使用Proguard去除不需要的东西,但仍然...... 72k方法和计数......
我可以classes.dex使用dx参数--multi-dex拆分两个文件.我实现了手动编辑
sdk/build-tools/android-4.4W/dx
Run Code Online (Sandbox Code Playgroud)
并编辑最后一行,如下所示:
exec java $javaOpts -jar "$jarpath" --multi-dex "$@"
Run Code Online (Sandbox Code Playgroud)
我的APK文件现在包含__classes.dex__ and __classes2.dex__.
我试图用几种方法动态加载第二个文件:
不幸的是仍然没有运气 我真的希望一些Google/Facebook/Square大师可以提供合适的解决方案.
我正在开发一个快速接近dex文件的64K方法限制的项目.这篇Android开发人员博客文章(2011年7月)解释了如何使用Ant驱动的命令行构建来动态加载类,但是没有探讨如何在IDE中使用它(除了说它在Eclipse中不起作用) ).
我环顾四周,找不到任何关于让这个系统在IntelliJ中工作的东西.IntelliJ是否支持使用多个dex文件构建应用程序?如果是这样,如何设置它?