1. 程式人生 > >RN-呼叫系統的電話、簡訊、郵件、瀏覽器

RN-呼叫系統的電話、簡訊、郵件、瀏覽器

第一種方法:
Linking:呼叫系統的電話、簡訊、郵件、瀏覽器等功能http://www.jianshu.com/p/3217b5ec7242

        Linking.canOpenURL(this.props.url).then(supported => {

          if (!supported) {

            console.log('Can\'t handle url: ' + this.props.url);

          } else {

            return Linking.openURL(this.props.url);

          }

        }).catch(err
=>
console.error('An error occurred', err)); 呼叫系統的電話功能 tel:10086 Android:直接到轉到系統撥號頁面,沒有問題 iOS:彈出一個alert,顯示電話號碼,一個取消按鈕,一個確定按鈕 點選確定撥打電話,沒有問題 點選取消不打電話,程式崩潰提示錯誤(我看不懂),有問題,贊為解決 NO2.呼叫系統的簡訊功能 smsto:10086 Android:跳轉發簡訊介面,沒有問題 iOS:無法跳轉到發簡訊介面,一直提示沒有許可權 然而打電話、發簡訊、Safari瀏覽器並不需要許可權,有問題,暫未解決 NO3.呼叫系統的郵件功能 mailto:
[email protected]
Android:沒有問題 iOS:沒有問題 NO4.呼叫系統的瀏覽器功能 http://www.baidu.com Android:沒有問題 iOS:沒有問題

有人說ReactNative和原生的進行互動,RN將引數傳給原生的,然後呼叫原生的進行操作
這也是一個辦法,但是我還不會RN和原生互動,暫且不表

第二種方法:
三方元件:react-native-communications
地址:https://github.com/anarchicknight/react-native-communications


網址裡面的 README.md 寫的非常的清楚,而且還有例子可供參考,相當方便,iOS和Android親測沒有問題
強烈推薦大家看一下

使用很簡單

npm install react-native-communications

import Communications from 'react-native-communications';

render() {
    return (
      <View style={styles.container}>
        <TouchableOpacity style={{height:40,marginTop:40}}
                          onPress={()=>{
                                Communications.phonecall('10086', false);

        }}>

          <Text>呼叫系統打電話功能</Text>

        </TouchableOpacity><TouchableOpacity style={{height:40,marginTop:40}}
                                             onPress={()=>{

                                Communications.text('10086','要傳送的內容');
                                Communications.textWithoutEncoding('10086','要傳送的內容encoding');//這種方法需要將內容encoding



        }}>

        <Text>呼叫系統發簡訊功能</Text>

      </TouchableOpacity><TouchableOpacity style={{height:40,marginTop:40}}
                                           onPress={()=>{
                                             Communications.email(['emailAddress1', 'emailAddress2'],null,null,'My Subject','My body text')
        }}>

        <Text>呼叫系統發郵件功能</Text>

      </TouchableOpacity><TouchableOpacity style={{height:40,marginTop:40}}
                                           onPress={()=>{
                                             Communications.web('https://github.com/facebook/react-native')
        }}>

        <Text>呼叫系統開啟網頁功能</Text>

      </TouchableOpacity>


      </View>
    );
  }

相關推薦

RN-呼叫系統電話簡訊郵件瀏覽器

第一種方法: Linking:呼叫系統的電話、簡訊、郵件、瀏覽器等功能http://www.jianshu.com/p/3217b5ec7242 Linking.canOpenURL(this.props.url).then(supported =>

Python基礎筆記_Day12_Python元類type動態建立類Python動態建立方法Python運算子Python發郵件簡訊

Day12_Python元類、type動態建立類、Python動態建立方法、Python運算子過載、Python發郵件、簡訊 12.01_Python語言基礎(類物件)(熟悉) 12.02_Python語言基礎(動態建立類)(熟練) 12.03_Python語言基礎(type建立類)(熟

Android開發-呼叫系統自帶軟體傳送郵件或分享文字-常用操作

一、實現效果     呼叫系統自帶的郵件軟體傳送郵件,同時設定收件人郵箱、郵件標題、和文字內容。 二、傳送郵件 Intent data=new Intent(Int

APP撥打電話&發簡訊&發郵件

在移動開發中我們會經常需要呼叫手機的撥打電話功能、發簡訊功能和發郵件功能,以下是我總結的方法://1.打電話 //方法1 最常用方法 NSURL *telUrl = [NSURL URLWithString:"tel://13161906451"]; UIWebView

移動端網頁站點呼叫撥打電話傳送簡訊等功能

1. 打電話在android的瀏覽器中,如果電話號碼是 XXX-XXX-XXXX的型式的話,使用者點選的時候,撥號面板會啟用,但是如果不是這一特定的格式,那麼撥號功能是不會啟動的。其實可以通過連結的方式啟用撥號面板。(1) IPhone的寫法[phone_number] 就

呼叫系統打電話發簡訊介面以及程式內發簡訊

一、呼叫系統功能 在iOS中開啟系統本身的打電話和發簡訊功能還是比較簡單的,之前在SSO中也提了一嘴,iOS中可以由一個應用開啟另一個應用,只需要一行程式碼,打電話,發簡訊,發email,開網頁也是一樣的 ,只是用的協議不一樣。 1.打電話 這個還是比較簡單的,下

iOS開發之呼叫系統打電話發簡訊介面以及程式內發簡訊

  在本篇部落格開頭呢,先說一下寫本篇的部落格的原因吧。目前在做一個小專案,要用到在本應用程式內發驗證碼給其他使用者,怎麼在應用內傳送簡訊的具體細節想不大起來了,於是就百度了一下,發現也有關於這方面的部落格,點進去看了看,個人感到有點小失望,寫的太不詳細,只是簡單的程式碼

阿里雲簡訊驗證碼簡訊服務SDKJava使用方法

阿里雲Java簡訊服務SDK 在這裡小小推薦下我的個人部落格 簡書:雷園的簡書 1. 首先在maven中新增依賴 <dependency> <groupId>com.aliyun<

iOS應用呼叫系統打電話簡訊和發郵件功能

摘要: 在應用程式內,呼叫系統的功能來實現打電話、發簡訊和發郵件,通過電話號碼或者郵箱,直接跳轉到系統的功能介面。 PS:除錯好像只能真機除錯,模擬器沒有反應,真機就可以跳轉,不知道是不是必須真機,但方法肯定是可行的。 1、打電話 應用內呼叫系統打電話有兩種方式: 1

呼叫撥打電話介面直接撥打電話呼叫傳送簡訊的介面呼叫系統瀏覽器

呼叫撥打電話介面 主要程式碼如下: //Intent.ACTION_DIAL= "android.intent.action.DIAL"; //不需要什麼許可權 Intent intent =

iOS 適配 iOS11,會引起呼叫系統相簿分享郵件系統介面上移問題

適配 iOS11,避免滾動檢視頂部出現20的空白,全域性設定了UIScrollView。 if (@available(iOS 11.0, *)) {   [[UIScrollView appearance] setContentInsetAdjustmentBehavior:UIScrollView

12_小米監控Open-Falcon郵件簡訊電話傳送介面

小米監控Open-Falcon 郵件、簡訊、電話傳送介面更多幹貨一、 介紹監控系統產生報警事件之後需要傳送報警郵件或者報警簡訊,各個公司可能有自己的郵件伺服器,有自己的郵件傳送方法;有自己的簡訊通道,有自己的簡訊傳送方法。falcon為了適配各個公司,在接入方案上做了一個規範

OC_呼叫系統簡訊_郵件_電話

//我們應用中也是常常會用到這些應用,這裡說一些常用且好理解的方法! #import "NewViewController.h" #import <MessageUI/MessageUI.h> @interface NewViewController ()&

SimplePhotoPicker:呼叫系統相機相簿的輕量框架

SimplePhotoPicker 一個進入相簿,呼叫相機的可高度定製化的框架,持續維護中… 效果圖 那些你所擔心但是已經幫你解決的問題 1.Android6.0**隱私許可權**請求問題—>已判斷並處理 2.Android7.0 Fi

OCiOS開發:發簡訊郵件打電話及搖一搖實現

簡介 在iOS開發中,可能會用到發簡訊、發郵件、打電話及搖一搖等功能,比如在應用程式的‘關於’介面,我們可能會留下電話號碼或郵箱等聯絡方式,為了方便使用者直接在應用程式中做操作,提升使用者體驗,我們會設計一些互動動作,讓使用者輕鬆的去發簡訊、打電話或發郵件等。

Android拍照及圖片裁剪呼叫系統相簿(相容6.0以上許可權處理及7.0以上檔案管理)

前言: 最近工作修改較舊的專案時,涉及到了圖片相關功能 ,在使用安卓6.0手機及7.1手機拍照時,遇到了因許可權及檔案管理導致程式崩潰等問題。 剛好把功能修改完,把程式碼簡單地貼一下,方便以後使用。 本文demo包含以下要點: Android6.0執

iOS呼叫系統傳送簡訊郵件分享

  //傳送郵件 -(void)sendMail:(NSString*)subject content:(NSString*)content{ MFMailComposeViewController*controller = [[[MFMailComposeViewCon

Android呼叫系統相機自定義相機處理大圖片

Android呼叫系統相機和自定義相機例項 本博文主要是介紹了android上使用相機進行拍照並顯示的兩種方式,並且由於涉及到要把拍到 的照片顯示出來,該例子也會涉及到Android載入大圖片時候的處理(避免OOM),還有簡要提一下有些人SurfaceView出現黑屏的原因。 An

Android7.0呼叫系統相機拍照訪問相簿問題。

關於Android7.0呼叫系統相機拍照、訪問相簿的一些問題: 在Android6.0中Google提出了動態申請許可權的Api,呼叫相機拍照,訪問SDcard等操作都需要先申請對應的許可權如下: <uses-permission android:name="and