【问题标题】:send phone number through emulator通过模拟器发送电话号码
【发布时间】:2012-07-20 21:51:12
【问题描述】:

我正在制作一个应用程序,我想检索设备电话号码并将其发送到服务器上。但我正在 android 模拟器上测试这个应用程序。谁能告诉我如何在模拟器和实际设备中设置或获取电话号码。

谢谢。

【问题讨论】:

  • 您无法在真机上获取电话号码。在模拟器上,它们是端口。比如emulator:5554,那么电话号码就是5554
  • 我的印象是您可以获得电话号码,但并非总是如此。是否可以通过调用 TelephonyManager.getLine1Number() 获取电话号码,这取决于电话子系统的状态及其与网络的连接。

标签: android android-emulator phone-number


【解决方案1】:

如果我们使用电话管理器,我们可以在模拟器中获取电话号码

TelephonyManager tm = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
    String phone = tm.getLine1Number();

    Toast toast = Toast.makeText(getApplicationContext(), phone, Toast.LENGTH_SHORT);
    toast.show();

在制作电话号码的祝酒词时,我们会得到电话号码,例如.. 15555215554

它还需要 android.permission.READ_PHONE_STATE 权限。 所以模拟器也有自己的电话号码。

【讨论】:

    【解决方案2】:

    DDMS 透视图中,您将看到 Emulator Control 选项卡,您可以从那里模拟调用。 如果您没有看到 Emulator Control 那里。使用 Window> Show /View > Emulator Control 使选项卡出现。

    要访问代码中的设备电话号码,请使用 telephonymanager.getLine1Number(); 为此,您需要在清单文件中设置 READ_PHONE_STATE 权限。

    【讨论】:

    • 在模拟器控制中,我们只能拨打模拟器来电,但无法获取设备自己的电话号码。
    【解决方案3】:

    您无法从您的设备调用模拟器。但是您可以调用两个模拟器。详情如何?您可以转到 DDMS 透视图,然后转到 Emulator Control 选项卡,您可以从那里调用其他模拟器。 http://developer.android.com/tools/devices/emulator.html

    【讨论】:

    • 我不是在谈论调用模拟器。我想检索模拟器的实际电话号码。
    • 可以在模拟器上看到模拟器的实际电话号码,它将是 4 位数字,例如:- 5544 或 5546
    猜你喜欢
    • 2015-08-02
    • 2016-04-15
    • 1970-01-01
    • 1970-01-01
    • 2011-07-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多