微擎模块开发manifest.xml文件详解

微擎在安装或卸载模块时会根据manifest.xml生成(或删除)数据库中相应记录,并执行manifest.xml里指定的脚本。

  1. <application setting='true'>
  2. <name><![CDATA[壹应用]]></name>
  3. <identifie><![CDATA[jq_first]]></identifie>
  4. <version><![CDATA[1.4]]></version>
  5. <ability><![CDATA[第一个应用]]></ability>
  6. <type><![CDATA[other]]></type>
  7. <description><![CDATA[第一个应用]]></description>
  8. <author><![CDATA[zhiqiang]]></author>
  9. <url><![CDATA[]]></url>
  10. <setting><![CDATA[]]></setting>
  11. </application>
  12. <platform>
  13.     <!--定义此模块需要订阅的事件-->
  14.     <subscribes>
  15.         <message type='text' />
  16.         <message type='image' />
  17.         <message type='voice' />
  18.         <message type='video' />
  19.         <message type='shortvideo' />
  20.         <message type='location' />
  21.         <message type='link' />
  22.         <message type='subscribe' />
  23.         <message type='unsubscribe' />
  24.         <message type='qr' />
  25.         <message type='trace' />
  26.         <message type='click' />
  27.         <message type='view' />
  28.         <message type='merchant_order' />
  29.     </subscribes>
  30.     <!--定义此模块需要处理的事件-->
  31.     <handles>
  32.         <message type='text' />
  33.         <message type='image' />
  34.         <message type='voice' />
  35.         <message type='video' />
  36.         <message type='shortvideo' />
  37.         <message type='location' />
  38.         <message type='link' />
  39.         <message type='subscribe' />
  40.         <message type='qr' />
  41.         <message type='trace' />
  42.         <message type='click' />
  43.         <message type='merchant_order' />
  44.     </handles>
  45.     <!--定义此模块是否需要规则触发-->
  46.     <rule embed='false' />
  47.     <card embed='false' />
  48.     </platform>
  49. <bindings>
  50. <rule>
  51. <entry title='应用入口' do='enter' state='' direct='false' />
  52. </rule>
  53. <menu>
  54. <entry title='基本设置' do='setting' state='' direct='false' />
  55. </menu>
  56. <system_welcome>
  57. <entry title='壹应用' do='first' state='' direct='false' />
  58. </system_welcome>
  59. </bindings>
  60. <install><![CDATA[]]></install>
  61. <uninstall><![CDATA[]]></uninstall>
  62. <upgrade><![CDATA[]]></upgrade>

manifest.xml文件内容详细介绍如下:

manifest - xmlns *(新增)*

用来为此模块XML的命令空间,此处必须填写'[http://www.we7.cc](http://www.we7.cc/)'.

manifest - versionCode

用来说明当前模块适用于哪个版本的微擎, 用来保证模块的兼容性. 多个支持的版本请使用逗号隔开.

manifest - application 用来定义模块的基本设置属性

manifest - application - setting 用来说明此模块是否有针对模块的设置项, 设置项可以保存此模块需要的配置参数(此参数针对不同的公众号分别保存)

manifest - application - name

模块的名称

manifest - application - identifie

模块标识符, 应对应模块文件夹的名称, 微擎系统按照此标识符查找模块定义

manifest - application - version

模块当前版本, 此版本用于模块的版本更新

manifest - application - type *(新增)*

模块的类型,方便在左侧菜单中归类与显示, 目前分为 business(主要业务),customer(客户关系),activity(营销及活动),services(常用服务及工具),other(其他)

manifest - application - ability

模块功能描述, 使用简单的语言描述模块的作用, 来吸引用户

manifest - application - description

模块详细描述, 详细介绍模块的功能和使用方法

manifest - application - author

模块的作者, 留下你的大名吧

manifest - application - url

模块的发布页, 可以通过这个url来访问你的模块最新情况

manifest - platform

用来定义模块用以处理公众平台消息的设置项

manifest - platform - subscribes

消息订阅器定义(消息订阅器提供了一种处理公众平台消息的方式, 可以接受到指定类型的消息, 来进行分析和统计, 不能用以处理消息返回结果. 这种处理是并行的, 同一个消息会被每一个订阅它的模块接收到)

manifest - platform - subscribes - message

定义需要被订阅器订阅的消息类型, 这里的消息被 WeModuleReceiver 处理

manifest - platform - handles

消息处理器定义(消息处理器用于接收公众平台的消息, 并返回相应的处理结果. 这种处理是互斥的, 同一个消息只能从一个模块返回处理结果)

manifest - platform - handles - message

定义需要被处理器处理的消息类型, 这里的消息被 WeModuleProcessor 处理

manifest - platform - rule *(变更)*

定义此模块是否需要规则触发

manifest - platform - rule - embed

当前模块进行消息处理时需要定义规则, 是否使用规则路由. (使用规则路由必须要能处理text类型消息, handles节点中必须包含 )

manifest - bindings *(新增)*

定义此模块的封面,管理菜单,微站菜单及规则扩展菜单

manifest - bindings - cover

定义模块的封面入口,封面入口为单条图文信息即是模块需要对用户开放的**入口地址**.

manifest - bindings - cover - call

定义模块动态扩展菜单项, 此值对应 WeModuleSite 类中的方法, 返回的值结构与entry相同, 将成为此节点的菜单项.

manifest - bindings - cover - entry

模块绑定菜单的定义结构. 需要定义 title - 操作的名称, do - 模块操作入口, state - 附加的用户参数(定义于WeModuleSite)

manifest - bindings - rule

定义规则的附加操作, 每个entry代表一个附加操作.

manifest - bindings - menu

定义模块在左侧本模块菜单下拉列表中的附加菜单操作, 每一个entry代表一个菜单操作.

manifest - bindings - home

定义模块在微站首页的扩展菜单项, 每一个entry代表一个微站首页菜单项.

manifest - bindings - profile

定义模块在微站个人中心的扩展菜单项, 每一个entry代表一个微站个人中心菜单项.

manifest - bindings - shortcut

定义模块在微站快捷菜单的扩展菜单项, 每一个entry代表一个微站快捷菜单项.

manifest - install

安装执行脚本, 这里支持两种形式: php脚本和sql语句. 如果安装时只需要写入数据库相关内容, 可以在此直接定义sql语句. 也可以使用php文件, 例如: install.php 代表执行模块定义目录下的 install.php

manifest - uninstall

卸载执行脚本, 参上

manifest - upgrade

升级执行脚本, 参上

(0)

相关推荐

  • 微擎模块开发流程

    http://wq.90ckm.com/app/index.php?i=2&c=entry&eid=15 1 2 3 4 i:是公众号的站内id c=entry :应用入口 eid:用 ...

  • 一步一步教你,学习开发一款自己的微擎模块应用!

    第一步:在你的微擎系统addons文件夹下面,新建一个目录,命名为:zhiwu55_cn,这个就是微擎模块应用的标识,类拟人的身份证号一样,如下图所示. 第二步:刚才新建的zhiwu55_cn目录下面 ...

  • python测试开发django-11.模型models详解

    前言 Django 模型是与数据库相关的,与数据库相关的代码一般写在 models.py 中,Django 支持 sqlite3, MySQL, PostgreSQL等数据库 只需要在settings ...

  • 【诗词微塾】格律与写作06 详解律诗对仗工对与宽对的区别

    走进诗摘词选,品味诗意人生 诗摘词选投稿邮箱 mm0127m@163.com 诗词微塾 本文转载于网络,如有侵权请联系删除

  • 紫微斗数 | 擎羊入十二宫详解​

    文章来源:https://mp.weixin.qq.com/s/Qv4cqoTWn09f_bCIUDxqkA 紫微斗数之凶星擎羊入十二宫状态详解 (1)擎羊在命宫 ①性格.外貌.运气分析 擎羊入命者, ...

  • 系统C盘里的文件详解

    Documents and Settings是什么文件? 答案: 是系统用户设置文件夹,包括各个用户的文档.收藏夹.上网浏览信息.配置文件等. 补:这里面的东西不要随便删除,这保存着所有用户的文档和账 ...

  • 第二季【微课堂】瑜伽专业知识课程详解

    <瑜伽冥想> 很多人在学习瑜伽一段时间之后都会接触到瑜伽冥想,对于冥想这个话题很多人都非常感兴趣,大体的认识很神秘,深不可测.为什么会给大家这种感觉呢?这是因为很多书都没有涉及这个话题,而 ...

  • (九)Spring 事务开发、事务属性详解

    持久层 事务回顾 Spring 控制事务的开发 Spring 中的事务属性(Transaction Attribute) 隔离属性(ISOLATION) 传播属性(PROPAGATION) 只读属性( ...

  • 油润有光泽,鲜辣微回甜~四川豆瓣制作工艺详解

    一说起四川的豆瓣制品,大家首先想到的是郫县豆瓣,可行业上还有家常豆瓣.红油豆瓣.元红豆瓣.金钩豆瓣.阴豆瓣.河鲜专用豆瓣.火锅专用豆瓣等多种叫法.这里,我就对四川豆瓣的制作工艺做一个详细的介绍. 最重 ...