流星 - 检测Sim电话号码

时间:2015-08-21 12:11:33

标签: meteor meteor-accounts

使用Meteor时,有没有办法检测移动设备上的SIM卡号码? 此外,使用电话号码记录用户的正确行为和预防措施是什么(例如在Whatsapp或Viber中)?

提前谢谢。

2 个答案:

答案 0 :(得分:3)

目前无法通过网站或网络应用程序使用移动设备获取访客的电话号码。

我估计,这是非常不可能的。想象一下,如果访问手机上的网站允许网站所有者未经许可获取您的手机号码?

原生应用和混合应用是不同的,因为它们在设备上 ,允许他们访问该设备的api和硬件。

仅仅因为原生/混合应用 可以访问电话号码,这不是那么简单,请看一下this SO question以及关于打破ios t& c并让应用程序商店拒绝使用该功能的答案。

所以你的问题的答案是否定的,你现在不能这样做,而且非常不可能。

答案 1 :(得分:3)

这取决于它是Web应用程序还是混合应用程序

第一种情况,网络应用

如果您正在谈论网络上您将使用手机浏览器访问的Meteor应用程序,那么答案是(请参阅 atmd 的回答)

第二种情况,混合应用

如果您正在谈论使用Cordova构建的混合应用程序,即meteor run android,那么是可能的

如果你想更快,我编写了一个示例Meteor应用程序: https://github.com/Erdou/meteor-cordova-phonenumber-example

1。添加Android平台(如果尚未完成)

$ meteor add-platform android   

2。为Cordova添加电话号码插件

没有为Meteor准备的插件,因此您需要手动操作。我们将在这里使用这个: https://github.com/rotorgames/phonegap-telephonenumber-plugin

  • 获取.git路径(靠近Github的克隆按钮):https://github.com/rotorgames/phonegap-telephonenumber-plugin.git
  • 获取最新的提交哈希值。在Github中,单击最新提交号码,此号码将完整显示:ca0f55481fe8ea61e7857e96c1324591596271ee
  • 命令为:$ meteor add cordova:[a plugin name]@[.git path]#[commit hash]

在我们的案例中:

$ meteor add cordova:cordova-plugin-phonenumber@https://github.com/rotorgames/phonegap-telephonenumber-plugin.git#ca0f55481fe8ea61e7857e96c1324591596271ee

3。在您的应用中使用它

if (Meteor.isCordova) {
    TelephoneNumber.get(function(result) {
        console.log('Phone number: ' + result.line1Number);
      }, function() {
        console.log('Error. Do the phone have this feature? (Settings > About Phone > SIM > Number)');
      });
  }

4。运行混合应用程序

$ meteor run android

它应该工作! :)

作为建议的最终案例

正如 atmd 所说,不推荐使用此功能。如果你想知道用户的电话号码,最好的是实现Viber或WhatsApp使用的经典短信发送/确认,就像你猜的那样。

我没有测试它,但是甚至还有一个Meteor包: https://github.com/DispatchMe/meteor-accounts-sms