2012-07-22 25 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