# 插件结构

# 安装包格式

MT插件安装包后缀为 mtp (MT Plugin),其和 apk 一样本质上是一个 zip 文件,我们可以使用 MT 的 ZIP 查看功能打开它。

# 安装包结构

通过前面的快速开始,相信你已经对插件安装包的结构有了一定了解,这边再做下详细说明:

  • src/ 插件的源码目录,存放使用 Java 编写的代码文件。
  • assets/ 插件的附件目录,存放一些会使用到的资源文件。
  • libs/ 插件的第三方库目录,当插件使用了第三方 jar 时,需要把 jar 放在这个目录下。
  • manifest.json 插件的清单文件,和 apk 的 AndrodiManifest.xml 文件类似,包含了插件名称、插件描述等信息。
  • icon.png 或者 icon.jpg 插件的图标文件,如果两个文件都不存在则显示默认图标。

其中 manifest.json 是必须包含的文件

# 清单文件说明

清单文件使用 json 文本格式,样例如下:

{
  // MT插件系统SDK版本
  // 高版本插件无法安装在低版本插件系统中
  // 目前均填2
  pluginSdkVersion: 2,

  // 插件ID,插件的唯一标识,类似于packageName
  // 只能由字母、数字、下划线和点组成
  pluginID: "bin.mt.plugin.demo",

  // 插件版本号,低版本插件无法覆盖安装高版本插件
  versionCode: 1,

  // 插件版本名称
  versionName: "v1.0",

  // 插件名称
  name: "插件名称",

  // 插件描述
  description: "插件描述",

  // 对外接口,接口类型会自动判断
  interfaces: [
    "接口1类名",
    "接口2类名",
    "....",
    "接口N类名"
  ],

  // 主设置界面,可选
  mainPreference: "设置界面接口类名"
}
  • 其中 name 和 description 可以通过 "{key}" 的格式实现本地化文本
  • 除了 mainPreference 外,其它都是必填属性。