java 插件式架构,java-通过服务替代方案的插件体系结构

Are there better ways to approach this problem?

您必须以源形式发送AIDL.那是一个接口.然后,您不必分别拥有另一层接口. AIDL中引用的Java类的实现可以在JAR中.

话虽这么说,由于版本管理,野马无法让我做您正在做的事情.

除非您计划用枪口手段阻止第三方,否则您不能强迫他们升级其JAR版本.因此,您要么:

>永远不能更改这些类别,或者

>必须非常仔细地管理版本控制,例如每个版本具有单独的IPC端点,以便您的核心代码可以处理具有JAR任意版本的第三方代码的任意版本

Are there demo projects out there that have already addressed this challenge (i.e. all 3 goals outlined above) successfully and can be used as a reference or tutorial?

您可以通过Android的任何IPC机制来实现您的目标:

>提议使用自定义类的绑定服务

>仅使用股票类的绑定服务,例如String和List and Bundle

>具有服务的命令模式(即,通过startService()发送命令)

>广播意图

>内容提供商

>活动

您遇到困难的关键在于以下假设:

I need to return my own classes

我将完全翻转为:您应该坚持用于实际IPC的标准Android类,您和第三方代码都可以识别并可以使用的类.

它仍然具有您需要执行的版本管理,但取决于更常规的“清理输入”逻辑,即您对任何Web服务或其他公开API进行处理的方式.而且,如果您想在源代码或JAR中附带一些“帮助程序”代码以简化API的使用,那很酷,因为您不再依赖于JAR中这些类的特定版本.

就“演示项目”而言,这完全取决于您要创建哪种API.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值