说明

本api主要用于从网页上打开SummerApp,并执行用户指定的方法和传递用户定义的参数

SummerApp中config.xml配置

在config.xml中新增节点
ios新增如下节点

  1. <urlScheme>testapp</urlScheme>:本App的Scheme(仅IOS可用)
  2. <queriesSchemes>wechat,qq</queriesSchemes>:本App可以打开的白名单App,即白名单中的应用可以被本应用打开,多个值用,隔开(仅IOS可用)

安卓新增如下节点

  1. <androidScheme>summerdemo</androidScheme>:在网页中打开Summer应用需要配置的androidScheme,主要此值必须全小写英文(仅Android可用)

支持的调用方式:
网页中新增如下跳转协议:即scheme://evaluateJavaScript?parameters=
注意:parameters参数需要使用url编码
如参数:
{"function":"open()","winId":"root","parameters":{"aa":"vv"}}
编码完成后是
%7B%22function%22:%22open()%22,%22winId%22:%22root%22,%22parameters%22:%7B%22aa%22:%22vv%22%7D%7D
则页面跳转写入如下代码即可实现跳转
scheme://evaluateJavaScript?parameters=%7B%22function%22:%22open()%22,%22frameId%22:%22newHome%22,%22winId%22:%22homePage%22,%22parameters%22:%7B%22aa%22:%22vv%22%7D%7D
参数说明:
scheme:协议名称,即用户在config.xml配置的App的(urlScheme|androidScheme)的值
function:打开app后调用的方法
winId:此参数为app配置的起始页,summerApp的起始页id为root,即此值必须为root
parameters:function中传递的参数
注意:
1、androidScheme的值只能为小写的英文字母
2、打开app若要传递参数,必须保证此方法存在于起始页root中

样例:
1、app配置config.xml增如下节点:

  1. <urlScheme>dongzhkapp</urlScheme>
  2. <androidScheme>dongzhkapp</androidScheme>


2、app配置打开App和winId和方法,这里只能用起始页root,起始页中的方法open(),open方法如下写法

  1. <script>
  2. function open(args) {
  3. alert("successOpenApp:" + JSON.stringify(args));
  4. }
  5. </script>


3、html页面写入如下代码:使用的参数为
{"function":"open()","winId":"root","parameters":{"aa":"vv"}}
页面地址为:http://mobile.yyuap.com/dongzhk/openapp.html

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta name="viewport" content="width=device-width, minimum-scale=1, maximum-scale=1">
  5. <meta charset="UTF-8">
  6. <title>打开APP</title>
  7. </head>
  8. <body>
  9. <a href="dongzhkapp://evaluateJavaScript?parameters=%7B%22function%22:%22open()%22,%22winId%22:%22root%22,%22parameters%22:%7B%22aa%22:%22vv%22%7D%7D%0A">打开dongzhkapp</a>
  10. </body>
  11. </html>

4、构建app,用访问html页面,点击打开app即可打开dongzhkapp,如果方法在起始页root中,会调用对应的open方法,并将参数{“aa”:”vv”}传递进去

样例下载

openapp样例代码

文档更新时间: 2018-06-26 15:16