react native之Linking API

前端之家收集整理的这篇文章主要介绍了react native之Linking API前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

作用:发起电话,发短信,发邮件,让外部应用打开我们app或者打开其他app等

注意:ios9以上HTTP不能访问看我的开源中国:https://my.oschina.net/u/3112095/blog/1543196

注意:以下几种功能有的在模拟器上无法测试,请用真机测试

具体详情看官网

一.导入API

import { Linking } from 'react-native';

二.基本用法:

要启动一个链接相对应的应用(打开浏览器、邮箱或者其它的应用),只需调用

Linking.openURL(url).catch(err => console.error('An error occurred',err));

如果想在打开链接前先检查是否安装了对应的应用,则调用以下方法

Linking.canOpenURL(url).then(supported => {
  if (!supported) {
    console.log('Can\'t handle url: ' + url);
  } else {
    return Linking.openURL(url);
  }
}).catch(err => console.error('An error occurred',err));

三.用外部浏览器等打开链接

url类型,比如url:

"https://www.baidu.com/?tn=90294326_hao_pg"

四.唤起手机发短信

url类型,比如url:

sms:13667377378

五.拨打号码

url类型,比如url:

tel:13667377378

六.发送邮件

url类型,比如url:

mailto:309623978@qq.com

七.打开其他地图app

这个url不一定,要看你安装了什么地图app。不同地图app的url打开不同

这里举例一个高德地图的:

这个url里面有position地理位置的信息,还有最后的参数callnative是否调用手机上安装的高德地图app

http://uri.amap.com/marker?position=121.287689,31.234527&name=park&src=mypage&coordinate=gaode&callnative=1

八.让外部其他app打开我们的app

Android配置:

在AndroidMainifest.xml中加入以下代码。这里我自己定义了一个URL(http://www.example.com/gizmos),供别人用此url打开

<intent-filter>
              <action android:name="android.intent.action.VIEW" />
              <category android:name="android.intent.category.DEFAULT" />
              <category android:name="android.intent.category.BROWSABLE" />
              <!-- Accepts URIs that begin with "http://www.example.com/gizmos” -->
              <data android:scheme="http"
                  android:host="www.example.com"
                  android:pathPrefix="/gizmos" />
          </intent-filter>

配置后url打开我们的app就为http://www.example.com/gizmos,可在自己项目中打开自己测试一下

猜你在找的React相关文章