web-dev-qa-db-ja.com

Linking.openURLで電話を開くことができません

説明

Linking.openURL( 'tel:+123456789')で電話をかけることができません

環境

環境:OS:macOS High Sierra 10.13.4ノード:8.5.0ヤーン:見つかりませんnpm:5.8.0ウォッチマン:見つかりませんXcode:Xcode9.3ビルドバージョン9E145 Android Studio:2.3 AI- 162.4069837

パッケージ:(必要=>インストール済み)react:16.3.1 => 16.3.1 react-native: https://github.com/expo/react-native/archive/sdk-27.0.0.tar。 gz => 0.55.2 expo:27.0.1、

再現する手順

import ...
export default class App extends React.Component {

_pressCall=()=>{
    const url='tel:+123456789'
    Linking.openURL(url)
}

render() {
    return (
        <View style={styles.container}>
            <Button title='call' onPress={this._pressCall}/>
        </View>
    );
}
}

https://snack.expo.io/@kikoololmdrxdd/test-linking-phone-call

予想される行動

オープン電話

実際の動作

[Android]Error message
attempt to invoke virtual method 'boolean Java.lang.string.endsWith(Java.
lang.String)' on a null object reference
5
Riki Chou

私は解決策を見つけました:あなたは 'tel:'を 'tel://'に変換する必要があります

11
Riki Chou

tel:Androidで動作しました

tel://Iphoneに取り組んだ

3
ggDeGreat