本文介绍基础类WVBase相关的JS API,供您在通过跨平台DevOps创建H5端应用或者小程序时参考。基础类WVBase相关JS API提供版本号获取、版本号对比、文本复制粘贴、界面UI背景颜色、安装指导应用程序、当前版本API是否支持等能力。

WVBase.checkWindVaneSDK

说明

该API仅适用于WindVane iOS。

判断指定版本号与当前WindVaneSDK版本号的大小关系。

输入参数

  • [string] v:要判断的版本号,例如'5.3.0'

回调参数

回调参数将会在回调方法中传递,如果成功比较版本号,则进入success回调,否则进入failure回调。

  • [string] isHigher:指定版本号与当前WindVaneSDK版本号的大小关系,可能的值为:

    • '1' :指定版本号高于当前WindVaneSDK版本号。

    • '0' :指定版本号与当前WindVaneSDK版本号相同。

    • '-1' :指定版本号低于当前WindVaneSDK版本号。

var params = {
        // 要判断的版本号
        v: '5.3.0'
};
window.WindVane.call('WVBase', 'checkWindVaneSDK', params, function(e) {
        alert('success: ' + JSON.stringify(e));
}, function(e) {
        alert('failure: ' + JSON.stringify(e));
});

WVBase.copyToClipboard

将指定的文本复制到剪贴板。

输入参数

  • [string]text:要复制到剪贴板中的文本。

回调参数

无回调参数,如果成功复制到剪贴板,则进入success回调,否则进入failure回调。

var params = {
        text: "text to copy"
};
window.WindVane.call('WVBase', 'copyToClipboard', params, function(e) {
        alert('success' + JSON.stringify(e));
}, function(e) {
        alert('failure' + JSON.stringify(e));
});

WVBase.isInstall

判断是否已安装指定的应用程序。

说明

在 iOS 9或更高版本系统中,只有在info.plistLSApplicationQueriesSchemes中配置过的scheme,才能够正确判断引用是否安装。

输入参数

  • [string] ios:iOS平台的应用程序标记,使用的是schema,例如 'taobao://'

  • [string] android:Android 平台的应用程序标记,使用的是包名,例如 'com.taobao.taobao'

回调参数

无回调参数,如果已安装指定应用程序,则进入success 回调,否则进入failure 回调。

var params = {
        // iOS 平台的应用程序标记
        ios: 'taobao://',
        // Android 平台的应用程序标记
        android: 'com.taobao.taobao'
};
window.WindVane.call('WVBase', 'isInstall', params, function(e) {
        alert('success');
}, function(e) {
        alert('failure');
});

WVBase.isAppsInstalled

判断是否已安装指定的多个应用程序。

说明

在 iOS 9或更高版本系统中,只有在info.plistLSApplicationQueriesSchemes中配置过的scheme,才能够正确判断引用是否安装。

输入参数

  • [object] appName:要判断是否安装的App,其值是一个对象,包含以下属性:

    • [string] ios:iOS平台的应用程序标记,使用的是 schema,例如'taobao://'

    • [string] android:Android平台的应用程序标记,使用的是包名,例如'com.taobao.taobao'

回调参数

回调参数将会在回调方法中传递,如果成功检测应用程序是否安装,则进入success回调,否则进入failure回调。

  • [boolean] appName:之前传递的App是否安装。

var params = {
        taobao: {
                ios: 'taobao://',
                android: 'com.taobao.taobao'
        },
        tmall: {
                ios: 'tmall://',
                android: 'com.tmall.tmall'
        }
};
window.WindVane.call('WVBase', 'isAppsInstalled', params, function(e) {
        alert('success: ' + JSON.stringify(e));
}, function(e) {
        alert('failure: ' + JSON.stringify(e));
});

WVBase.isWindVaneSDK

用于获取当前WindVaneSDK的版本,该参数的替代方法是自己从UA中获取到WindVane的SDK版本号。

输入参数

无输入参数。

回调参数

回调参数将会在回调方法中传递,如果成功获取WindVaneSDK的版本,则进入success回调,否则进入 failure回调。

  • [string] os:平台类型('ios'/'android')。

  • [string] version:WindVaneSDK 的版本号。

  • [string] env:客户端环境('release'/'pre'/'daily'VER.WindVane iOS 8.1.0 或更高

  • [string] container:容器类型('WVWebView'/'WVWKWebView'/'WVUCWebView'/'Weex'VER.WindVane 8.1.0 或更高

window.WindVane.call('WVBase', 'isWindVaneSDK', {}, function(e) {
        alert('success: ' + JSON.stringify(e));
}, function(e) {
        alert('failure: ' + JSON.stringify(e));
});

WVBase.notify

说明

该API仅适用于WindVane iOS。

document引发指定名称和参数的事件。

输入参数

  • [string] event:要引发的事件名称。

  • [object] param:要引发的事件参数。

回调参数

无回调参数,也不会进入successfailure回调。

监听事件

event 指定的事件,事件参数为param指定的对象。

document.addEventListener('MyNotifyName', function(e) {
        alert(JSON.stringify(e.param));
}, false);

var params = {
        // 要引发的事件名称
        event: 'MyNotifyName',
        // 要引发的事件参数
        param: { MyEventParam: 'paramValue' }
};
window.WindVane.call('WVBase', 'notify', params);

WVBase.openBrowser

说明

该API仅适用于WindVane iOS。

打开指定URL的Safari新窗口。

输入参数

  • [string] url:要在Safari中显示的URL。

重要

仅需要确保在Safari中打开的URL,才使用此JSBridge。其它情况都请直接使用<a>链接、设置location.href或者iframe 的方式进行跳转。

回调参数

无回调参数,如果成功打开了指定URL,则进入success回调,否则进入failure回调。

var params = {
        // 要在浏览器中显示的 URL
        url: 'http://www.baidu.com'
};
window.WindVane.call('WVBase', 'openBrowser', params, function(e) {
}, function(e) {
        alert('failure: ' + JSON.stringify(e));
});

WVBase.setBackgroundColor

说明

该API仅适用于WindVane iOS。

设置WebView的背景颜色。

输入参数

  • [string] color:WebView 背景颜色的十六进制颜色值,支持0X#前缀。

  • [number] alpha:*[可选]*WebView 背景不透明度,有效范围为 [0, 1]

回调参数

无回调参数,如果成功设置背景透明度,则进入success回调,否则进入failure回调。

var params = {
        color: 'FF0000',
        alpha: 0.3
};
window.WindVane.call('WVBase', 'setBackgroundColor', params, function(e) {
        alert('success: ' + JSON.stringify(e));
}, function(e) {
        alert('failure: ' + JSON.stringify(e));
});

WVBase.canIUse

说明

该API只在Windvane Android 1.0.3.4以上版本有效。

判断传入的API在当前版本是否支持。

输入参数

  • [string] api:API的名称,如WVBase,WVMotion等。

  • [string] method:*[可选]* api中的方法,如isWindVaneSDK,copyToClipboard等。如果不传入method,则只判断当前版本是否支持API。

回调参数

  • [boolean] canUse:true代表当前版本支持传入的API,false代表不支持。

var params = {
        api: 'WVMotion',
        method: 'vibrate'
};
window.WindVane.call('WVBase', 'canIUse', params, function(e) {
        alert('success: ' + JSON.stringify(e));
}, function(e) {
        alert('failure: ' + JSON.stringify(e));
});