xPlugin

Android 消息化插件框架
授权协议 Apache
开发语言 Java
所属分类 手机/移动开发、 Android UI 组件
软件类型 开源软件
地区 国产
投 递 者 郭皓
操作系统 Android
开源组织
适用人群 未知
 软件概览

一. 介绍

Android消息化插件框架 利用消息最大化解耦, 使插件在启动时可异步加载, 提高应用启动效率. 目前所有接口通过Android API [19, 30] 各版本兼容测试.

特性:

  1. 资源共享: 可指定Runtime Module, 其他Module可使用其提供的类型和资源.
  2. 资源隔离: 每个插件模块尽量使用自己内部的类型和资源, 避免类型和资源冲突问题.
  3. 消息通信: 模块间通过消息通信实现相互调用, 最大化的解耦, 延迟加载依赖, 在模块被调用时加载(可设置自动异步加载依赖模块).
  4. 接近原生: 接近原生方式使用系统API, 部分限制及解决方法参考如下信息.

限制:

  • Activity: 不支持外部应用直接启动, 如有需要建议在宿主中注册 或 实现自定义Activity进行跳转.
  • Service: 不支持外部应用直接启动, 使用场景有限, 更新不频繁, 如有需要建议在宿主中注册.
  • Broadcast: 使用动态注册实现, 需要应用处于运行状态, 如需实现静态注册建议在宿主中注册.
  • ContentProvider: 不支持外部应用直接启动, 如有需要建议在宿主中注册.
  • 系统进程资源问题: Notification等需要系统进程加载应用内资源的情况, 建议由应用包装包接口供插件使用.
  • overridePendingTransition动画资源问题: 类似系统进程资源问题, 但可以在宿主中添加同名资源, 或通过 ActivityHelper#registerOverridePendingTransitionAnimId 设置映射关系, 框架将自动处理加载过程.

二. 软件架构

image

注意: Demo工程中main模块编译完成后会在runtime目录输出其他Module依赖的资源文件, 使得其他Module可以使用Runtime Module提供的类型和资源.

三. 常用接口

  1. PluginRuntime: 插件初始化入口类, 在Application初始化时使用.
  2. Installer: 插件安装及加载的工具类, 从这里可以获取已安装和已加载的插件的信息.
  3. PluginMsg: 插件消息, 插件之间通信.
  4. PluginEntry: 消息注册的入口.
  5. Plugin: 宿主(Host)和子模块(Module)的父类, 通过 Plugin.getPlugin(插件中的类型或其实例) 可以获取对应插件的信息.

更多信息见: https://gitee.com/juefeng_com/xPlugin

  • mybatis-generator-xplugin 收集了很多mybatis-generator的插件,都是自己项目中用到的,为了方面使用,会上传到中心maven库,凡是用了其他人的插件,都会说明,如有冒犯,请告知,立马删除。邮箱:tryer@vip.qq.com 当初就是因为引用不方便,所以建了这个工程,集合了很多好用的插件,当前版本0.0.1 com.trytotry mybatis-gene

 相关资料
  • pre { white-space: pre-wrap; } jQuery EasyUI 插件 通过 $.messager.defaults 重写默认的 defaults。 消息框(messager)提供不同样式的消息框,包括警示(alert)、确认(confirm)、提示(prompt)、进展(progress)等等。所有的消息框都是异步的。用户可以在与消息框交互后使用回调函数来完成一些动作。

  • 在网页应用中,你经常需要在处理完表单或其它类型的用户输入后,显示一个通知消息(也叫做“flash message”)给用户。 对于这个功能,Django 提供基于Cookie 和会话的消息,无论是匿名用户还是认证的用户。其消息框架允许你临时将消息存储在请求中,并在接下来的请求(通常就是下一个请求)中提取它们并显示。每个消息都带有一个特定level 标签,表示其优先级(例如info、warning

  • 本文向大家介绍基于jQuery Tipso插件实现消息提示框特效,包括了基于jQuery Tipso插件实现消息提示框特效的使用技巧和注意事项,需要的朋友参考一下 基于jQuery Tipso插件实现消息提示框的特点是可以定义提示框的显示位置,以及动态改变提示框的提示内容,应该说是一款相当灵活的jQuery消息提示框插件,分享给大家供大家参考,具体内容如下 在线演示 源码下载 实现的代码: js代

  • 问题内容: 美好的一天! 我正在使用JavaFX SDK开发程序。我想有一个像C#一样的消息框: 我想使用JavaFX SDK拥有这样的功能。非常感谢您的回答。 问题答案: 更新资料 从Java8u40开始,核心JavaFX库包含对话框(消息框)功能。请参考以下类别的文档: 警报 对话框(和子类) 有关更长的教程,请参考Makery JavaFX对话框教程( 强烈 建议使用此教程)。 原始答案 这

  • 函数显示一个消息框,并等待用户点击一个按钮,然后根据用户点击的按钮执行相关的操作。 语法 参数说明 prompt - 必需的参数。在对话框中显示为消息的字符串。提示的最大长度大约为个字符。 如果消息扩展为多行,则可以使用每行之间的回车符()或换行符()来分隔行。 buttons - 可选参数。一个数字表达式,指定要显示的按钮的类型,要使用的图标样式,默认按钮的标识以及消息框的形式。如果留空,则按钮

  • 问题内容: 我不确定如何在我的方法中编写弹出消息框的代码。 我试图在我的方法中使用它,但是它不起作用: 问题答案: javax.swing.JOptionPane 这是我想弹出一个信息框时所调用的方法的代码,它将占据屏幕,直到被接受为止: 第一个参数(在此示例中)用于对齐对话框。使其在屏幕上居中,但是可以指定任何内容,而对话框将显示在屏幕中央。 我倾向于使用String来描述调用该框的代码在哪里,

  • MsgBox function显示一个消息框,等待用户单击按钮,然后根据用户单击的按钮执行操作。 语法 (Syntax) MsgBox(prompt[,buttons][,title][,helpfile,context]) 参数描述 (Parameter Description) Prompt - 必需参数。 在对话框中显示为消息的字符串。 提示的最大长度约为1024个字符。 如果消息扩展到多

  • 我正在尝试使用buckecord/Bukkit插件消息通道来接收关于玩家的数据(特别是他们在哪个聊天通道),首先从buk kit发送一个插件消息- 我在这里使用了教程,但服务器只是崩溃了,因为当从Bungee服务器接收到插件消息时,不会触发,所以不会触发。 以下是请求信息的代码: 下面是收到的插件消息的代码: 如果有一种方法可以做到这一点,而不需要等待服务器的其余部分(插件的其余部分可以在等待响应