NativeScript-Telephony
一个Nativescript插件,用于获取设备的SIM数据(运营商名称、mcc mnc、国家代码、电话号码等)
npm i --save nativescript-telephony
- 版本:1.0.4
- GitHub: https://github.com/roblav96/nativescript-telephony
- NPM: https://npmjs.net.cn/package/nativescript-telephony
- 下载量
- 昨日:3
- 上周:4
- 上月:23
NativeScript-Telephony
这是一个Nativescript插件,可以获取SIM卡数据,如运营商名称、mcc、mnc和国家代码以及其他系统依赖的附加信息。
贡献者
Peter Bakondy,他的cordova-plugin-sim工作。基本上这是他的插件。我遵循了他的源代码作为指南。
支持的平台
- Android
- iOS
安装
tns plugin add nativescript-telephony
使用
Typescript
import {Telephony} from 'nativescript-telephony';
Telephony().then(function(resolved) {
console.log('resolved >', resolved)
console.dir(resolved);
}).catch(function(error) {
console.error('error >', error)
console.dir(error);
})
ES6 Promises
如果您不熟悉Promises,请阅读这些
iOS怪癖
Promise.Resolves
{
"carrierName": String,
"countryCode": String,
"mcc": String,
"mnc": String,
"allowsVOIP": Boolean,
}
遗憾的是,我们无法获取更多信息。
Promise.Rejects
当使用模拟器或不存在SIM卡时。
Android怪癖
所有权限对话框都内置在Telephony
函数中。
Promise.Resolves
当READ_PHONE_STATE
权限被DENIED
时
{
"countryCode": String,
"simOperator": String,
"carrierName": String,
"callState": Number,
"dataActivity": Number,
"networkType": Number,
"phoneType": Number,
"simState": Number,
"isNetworkRoaming": Boolean,
"mcc": String,
"mnc": String,
}
当READ_PHONE_STATE
权限被GRANTED
时
{
// START GRANTED PERMISSIONS
"phoneNumber": String,
"deviceId": String,
"deviceSoftwareVersion": String,
"simSerialNumber": String,
"subscriberId": String,
// END GRANTED PERMISSIONS
"countryCode": String,
"simOperator": String,
"carrierName": String,
"callState": Number,
"dataActivity": Number,
"networkType": Number,
"phoneType": Number,
"simState": Number,
"isNetworkRoaming": Boolean,
"mcc": String,
"mnc": String,
}
Promise.Rejects
永远不会。
演示
npm run setup
# iOS
npm run demo.ios
# Android
npm run demo.android
许可协议
此插件由Rob Laverty许可,许可协议为MIT