我在Cordova项目中使用以下插件:
com.vliesaputra.deviceinformation
以下是我的代码示例:
var deviceInfo = cordova.require('cordova/plugin/DeviceInformation');
deviceInfo.get(GotDeviceInfo, function () {
alert('error');
}
function GotDeviceInfo(result) {
var data = JSON.parse(result);
alert(data.phoneNo);
alert(data.simNo);
}
在我的三星Galaxy S5 SM-G900F(Android 5.0)上,我获得了有关手机和SIM卡号码的准确信息,但在我的TomTom PRO 8275(Android 4.3)上,我得到TM.ERROR
两个值。我认为TM意味着TelephonyManager,但除此之外,我没有明确的理由说明为什么这种方法适用于一台Android设备,而不是另一台设备。
我已经在两个设备中激活了SIM卡并测试了移动数据,这些数据再次正常运行。所以我知道SIM卡在两种设备上都有效。只是硬件不支持它吗?操作系统版本?
是否有人对如何使其发挥作用有任何明确的解决方案或想法,或者至少为什么没有?
答案 0 :(得分:1)
可能是因为制造商没有提供这些值可供android框架访问。几个android功能是制造商相关的,可以在不同的设备上返回不同的结果。