1.1.0 • Published 3 years ago

h5-openapp v1.1.0

Weekly downloads
8
License
MIT
Repository
-
Last release
3 years ago

h5-openapp

网页唤醒 APP

场景

网页中点击按钮后, 可打开 app 并进入对应功能 (需 android, iOS 配合), 没有下载 app 则跳转至下载

安装

npm install h5-openapp

or

yarn add h5-openapp

使用

在 vue 中

<template>
  <div>
    <button @click="clickBtn"/>  
  <div>
<template>

<script>
import openapp from 'h5-openapp'

export default {
  methods: {
    clickBtn() {
      // ... 如果对参数有其它逻辑处理, 在调用前处理
      openapp({
        scheme: 'myapp:///mypath?key1=value1&key2=value2', // eg: myapp:///mypath?key1=value1&key2=value2
        deepLink: 'https://mydomain.com/mypath?key1=value1&key2=value2', // 用于 iOS universal links (iOS 9+) 当前页面域名与深链接域名需要不一致
        download: { // 默认 scheme 跳转无效,便前往下载, 设置 onTimeout 回调时, 不执行下载逻辑
          ios: '', // ios 下载链接
          android: '', // android 下载链接
          other: '' // 其他渠道 下载链接
        },
        delay: 3000, // 等待时间, 超时后执行 onTimeout,  default: 3000
        disabledScheme: [], // scheme 被禁用的 APP, eg: ['MicroMessenger', 'DingTalk', '...'] (iOS 9+ 深链接不会被禁)
        onDisabled: function(appTag) { // 当打开网页的 APP 为 disabledApp 中的任一个,并且未设置深链接时
          if (appTag === 'MicroMessenger') {
            console.log('微信不支持 scheme 跳转')
          } else if (appTag === 'DingTalk') {
            console.log('钉钉不支持 scheme 跳转')
          } else {
            console.log(appTag)
          }
        },
        onBeforeOpen: function() {
          // 在执行打开 app 逻辑前触发
        },
        onTimeout: function() { // 触发打开 app 逻辑, 并且超过等待时间时触发, 未设置的情况下, 如果设置了下载链接, 则默认跳转下载链接
          console.log('自定义超时处理')
        }
      })
    }
  }
}
</script>

在 jquery 中

<script src="openapp.min.js"></script>
<script>
$('.btn').click(function() {
  $openapp({
    // ... 省略参数
  })
})
</script>

事件

事件名称说明回调参数
onDisabled不满足深链接跳转条件, 在 disabledScheme 参数中的 App 里打开时触发/
onBeforeOpen在触发打开 App 逻辑前触发disabledScheme 参数中的对应标示
onTimeout触发打开 App 逻辑后, 并且等待时间超过 delay, 未设置时, 默认跳转下载, 下载链接也未设置, 超时则无响应/

参数

参数说明类型默认值
schemescheme 跳转链接 (eg: myapp://path?key1=value1&key2=value2)String/
deepLinkiOS universal links (iOS 9+)String/
download默认超时会跳转下载链接 ({ ios: '', android: '', other: '' })Object/
delay等待时间Number3000
disabledSchemescheme 被禁用的 App 的浏览器标示Array/
1.1.0

3 years ago

1.0.10

4 years ago

1.0.9

4 years ago

1.0.8

4 years ago

1.0.7

4 years ago

1.0.6

4 years ago

1.0.5

4 years ago

1.0.3

4 years ago

1.0.2

4 years ago

1.0.1

4 years ago

1.0.0

4 years ago