2012-07-22 68 views
3

我在制作应用程序,并且想要检索设备电话号码并将其发送到服务器上。但我在android模拟器上测试这个应用程序。任何人都可以告诉我如何设置或获取模拟器和实际设备中的电话号码。通过仿真器发送电话号码

谢谢。

+2

您无法获得真实设备上的电话号码。在模拟器上,它们是端口。例如'emulator:5554',那么电话号码是'5554'。 – 2012-07-22 10:16:32

+0

我的印象是,你可以得到电话号码,但并非总是如此。如果您可以通过调用TelephonyManager.getLine1Number()获取电话号码,则它取决于电话子系统的状态及其与网络的连接。 – wojciii 2012-07-22 11:17:13

回答

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权限。 So Emulator也有自己的电话号码。

+0

如果答案对您有用,那么您应该投票 – 2013-04-17 06:45:04

0

DDMS perspective你会看到模拟器控制选项卡,你可以从那里模拟呼叫。 如果您在那里看不到Emulator Control。使用“窗口”>“显示/查看”>“模拟器控制”使选项卡显示。

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

+0

在模拟器控制中,我们只能对模拟器进行呼入,但我们无法获取设备自己的电话号码。 – 2012-07-22 10:15:20

0

你不能从你的设备调用模拟器。但是你可以拨打两个模拟器。有关如何的详细信息?你可以去DDMS的角度,然后模拟器控制选项卡,你可以从那里打电话给其他模拟器。 http://developer.android.com/tools/devices/emulator.html

+0

我不是在说要给模拟器打电话。我想检索模拟器的实际电话号码。 – 2012-07-22 10:16:51

+0

仿真器的实际电话号码可以在仿真器上看到它将是4位数字例如: - 5544或5546 – Ali 2012-07-22 10:24:52