npm i --save @global66/nativescript-sms-receiver
- 版本:1.1.2
- GitHub:
- NPM: https://npmjs.net.cn/package/%40global66%2Fnativescript-sms-receiver
- 下载
- 前一天:0
- 上周:0
- 上个月:6
nativescript-sms-receiver
这是一个简单的库,用于使用新的 SMS Retriever API 在 Android 中接收短信。
需求
最低 SDK 版本为 21。
安装
tns plugin add nativescript-sms-receiver
使用
步骤 1. 在清单文件中注册 SMSBroadcastReceiver
将以下代码添加到 {你的应用模块}/App_Resources/Android/src/main/AndroidManifest.xml
<receiver android:name="com.pravinkumarputta.android.smsreceiver.SMSBroadcastReceiver" android:exported="true">
<intent-filter>
<action android:name="com.google.android.gms.auth.api.phone.SMS_RETRIEVED"/>
</intent-filter>
</receiver>
步骤 2. 导入 SmsReceiver
import { SmsReceiver } from 'nativescript-sms-receiver';
步骤 3. 实例化 SmsReceiver
在开始 SMS 监听器之前调用此方法一次
SmsReceiver.getInstance();
注意:仅在页面加载后调用上述方法。
步骤 4. 开始 SMS 监听
// register Sms Listener to get SMS callbacks
SmsReceiver.getInstance().registerListeners(
function () {
// onSMSReceiverStarted
...
}.bind(this),
function (exception) {
// onSMSReceiverFailed
...
}.bind(this),
function (message) {
// onSMSReceived
...
// handle sms here
...
// deregister Sms Listener to avoid invalid operations
SmsReceiver.getInstance().deregisterListeners();
}.bind(this),
function () {
// onSMSReceiverTimeOut
...
}.bind(this)
);
// start sms receiver for single message
SmsReceiver.getInstance().startReceiver();
构造验证消息
您将发送到用户设备的验证消息。此消息必须
- 不超过 140 字节
- 以前缀 <#> 开头
- 包含客户端发送回您的服务器以完成验证流程的一次性代码(请参阅生成一次性代码)
- 以一个 11 位的哈希字符串结尾,该字符串标识您的应用程序(请参阅计算您的应用程序哈希字符串)
否则,验证消息的内容可以是您选择的任何内容。创建一个可以轻松提取一次性代码的消息很有用。例如,有效的验证消息可能如下所示
<#> Your ExampleApp code is: 123ABC78
FA+9qCX9VSu
(更多信息请访问 此处)
为您的应用程序生成 11 位的哈希字符串
使用以下方式实例化 SMSReceiver 以访问哈希字符串
SmsReceiver.getInstance().getHashString() // After instantiating SmsReceiver othersise it returns empty string
请求您的设备中保存的电话号码
SmsReceiver.getInstance().requestForPhoneNumber((phoneNumber) => {
// phoneNumber is null if no number is selected.
...
})
使用库
许可
Apache 许可版 2.0,2004 年 1 月