Uniapp 打开外部的应用,包括常用URLscheme和代码示例

我们在开发 App 应用中,经常会遇到打开第三方程序的场景,比如打开手机淘宝、通过第三方浏览器打开一个 url 等等。

App不像网页可以使用http超链接互相跳转,但手机os设计了scheme机制,可以通过特殊的链接互相调起。

比如手机淘宝,其安装后会在手机os中会注册一个scheme协议,taobao://。

这种协议还支持参数,比如taobao://s.taobao.com/search?q=uni-app启动淘宝并打开搜索页面搜索uni-app。

在uni-app/5+App中,可以通过scheme呼起其他App,也支持给自己的App设置scheme参数。

这个功能小程序并不支持,属于App端的扩展API。

打开外部scheme的API是plus.runtime.openURL()。查看文档:http://www.html5plus.org/doc/zh_cn/runtime.html

打开第三方程序

打开第三方程序,我们需要使用 runtime 模块,下面我罗列两个相关的方法。其他操作请详读文档。

  • url: ( String ) 必选 要打开的URL地址
    字符串类型,各平台支持的地址类型存在差异,参考平台URL支持表。
  • errorCB: ( OpenErrorCallback ) 可选 打开URL地址失败的回调
    打开指定URL地址失败时回调,并返回失败信息。
  • identity: ( String ) 可选 指定打开URL地址的程序名称
    在iOS平台此参数被忽略,在Android平台为程序包名,如果指定的包名不存在,则打开URL地址失败。

2,调用第三方程序

  • appInf: ( ApplicationInf ) 必选 要启动第三方程序的描述信息
  • errorCB: ( LaunchErrorCallback ) 必选 启动第三方程序操作失败的回调函数
    启动第三方程序失败时回调,并返回失败信息。

    常用URLscheme

    更多实用例子

    除了简单的打开App,我们更多的时候想要直达。这里汇总了很多有用的直达案例:

    • 使用应用商店打开指定App,可用于引导评分
    • 强制使用应用宝打开指定App
    • 打开淘宝搜索页面。需要你要做淘宝客,需要向淘宝申请自己的scheme参数并传入。
    • 打开地图并指定地点
    • 打开qq并到指定聊天界面,可用于客服
      具体代码见下:

给自己的App设置scheme

可在manifest中可配置。

Android配置方法
iOS配置方法

 

本文部分内容转自:https://www.cnblogs.com/neo-java/p/11305711.html

发布者:柚子,转转请注明出处:https://ityouzi.com/archives/uniapp-open-app-code.html

发表评论

电子邮件地址不会被公开。 必填项已用*标注