npm i --save nativescript-sms-receiver
- 版本:1.0.1
- GitHub:
- NPM: https://npmjs.net.cn/package/nativescript-sms-receiver
- 下载
- 昨日:1
- 上周:2
- 上月:13
nativescript-sms-receiver
这是一个简单的库,用于使用新的 SMS Retriever API 在 Android 上接收短信。
要求
最低 SDK 版本为 21。
安装
tns plugin add nativescript-sms-receiver
使用方法
步骤 1. 在清单文件中注册 SMSBroadcastReceiver
将以下代码添加到 {your-app-module}/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 月