阅读(4861) (8)

百度智能小程序 拨打电话

2020-08-13 16:20:20 更新

swan.makePhoneCall

在工具和真机中的实现有区别,详见 API 实现差异

解释:拨打电话。

Web 态说明:由于 Web 态环境安全策略限制,调用该 API 前必须要存在用户交互场景(点触),如果无用户交互场景下直接调用,会导致执行成功回调但实际功能未生效。因此建议在点击事件监听等用户交互场景下使用该 API。

方法参数

Object object

object 参数说明

属性名类型必填默认值说明

phoneNumber

String

需要拨打的电话号码
· 号码格式为:“区号-xxxx xxxx”或“(区号)xxxx xxxx”或“区号 xxxx xxxx”或“区号 xxxx xxxx”,其中“()”和“-”请使用英文符号。
· 可输入英文,将根据九键键盘自动转换成对应的数字进行拨号,例:TUV/WXYZ/JKL 对应号码为 895。

success

Function

接口调用成功的回调

fail

Function

接口调用失败的回调函数

complete

Function

接口调用结束的回调函数(调用成功、失败都会执行)

示例 

在开发者工具中打开



图片示例

代码示例 1: 模拟拨号盘用法

<view class="wrap">
    <view class="card-area">
        <input bind:input="phoneNumberInput" class="input border-bottom" type="number" placeholder="请输入电话号码"/>
        <button bind:tap="makePhoneCall" type="primary" hover-stop-propagation="true">拨打</button>
    </view>
</view>
Page({
    data: {
        phoneNumber: ''
    },

    phoneNumberInput(e) {
        this.setData('phoneNumber', e.detail.value);
    },

    makePhoneCall(e) {
        let phoneNumber = this.data.phoneNumber;
        if (!phoneNumber) {
            swan.showToast({
                title: '请输入电话号码',
                icon: 'none'
            });
            return;
        }
        swan.makePhoneCall({
            phoneNumber,
            // phoneNumber: '0313-xxxx xxxx',
            // phoneNumber: '(0313)xxxx xxxx',
            // phoneNumber: '0313 xxxx xxxx',
            // phoneNumber: 'txk0bkt', // 8950258
            fail: err => {
                swan.showModal({
                    title: '拨打失败',
                    content: '请检查是否输入了正确的电话号码',
                    showCancel: false
                });
            }
        });
    }
});

错误码

Android

错误码说明

201

解析失败,请检查调起协议是否合法。

202

解析失败,请检查参数是否正确。

302

找不到调起协议对应端能力方法

1001

执行失败

iOS

错误码说明

202

解析失败,请检查参数是否正确。