2011-08-29 117 views
9

有誰知道如何運行USSD命令檢查手機的貸方餘額(數字是* 123#)並獲得結果(貸方餘額)以作進一步處理?謝謝如何在android上運行USSD命令?

+0

可能重複[如何在Android上執行USSD請求?](http://stackoverflow.com/questions/5477597/how-is-it-possible-to-do-do-do-ussd-requests-on-android) –

回答

22

您可以在Android設備上運行USSD代碼,但無法解析應用程序中的結果。此功能可能會在未來添加到Android SDK中,但現在,您將不得不尋找替代方案。

USSD可以使用簡單的調用意圖運行。請參閱示例:

String ussdCode = "*" + "123" + Uri.encode("#"); 
startActivity(new Intent(Intent.ACTION_CALL, Uri.parse("tel:" + ussdCode))); 

作爲評論的電話許可提到的,還需要

<uses-permission android:name="android.permission.CALL_PHONE"/
+0

謝謝Bosah ..有一個愉快的一天.. :) –

+3

可以用'Intent.ACTION_CALL' –

+0

替換''android.intent.action.CALL''你應該通過添加以下這行代碼來調用權限: ** <使用權限android:name =「android.permission.CALL_PHONE」/> ** –

2

您可以使用 「%23」 代替 「#」:

String ussdCode = "*" + "123"+"%23"; 
startActivity(new Intent("android.intent.action.CALL", Uri.parse("tel:" + ussdCode))); 

你應該還要爲您的Manifest文件添加權限:

<uses-permission android:name="android.permission.CALL_PHONE" /> 
+0

有沒有辦法解析ussd結果,我需要捕獲的平衡我的電話在定期間隔, –