Ich habe eine Anwendung geschrieben, die Ussd-Code verwendet. Ich möchte eine Anfrage für ein ussd senden, aber ich weiß nicht, wie man die Daten erhält und in einem String speichert.Wie bekomme ich eine Antwort vom USSD-Code von Android?
Beispielcode:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button btn = (Button) findViewById(R.id.button1);
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
String encodedHash = Uri.encode("#");
String ussd = "*141*1" + encodedHash;
startActivityForResult(new Intent("android.intent.action.CALL",
Uri.parse("tel:" + ussd)), 1);
}
});
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// TODO Auto-generated method stub
super.onActivityResult(requestCode, resultCode, data);
Toast.makeText(getApplicationContext(),
"USSD: " + requestCode + " " + resultCode + " ", 1).show();
if (requestCode == 1) {
if (resultCode == RESULT_OK) {
// String result=data.getStringExtra("result");
String dd = data.toString();
Toast.makeText(getApplicationContext(), dd, 1).show();
}
}
Screenshots Anwendung:
, wie mein Problem zu lösen?
Haben Sie den Weg gefunden, Ihr Problem zu lösen? – gkiko
Nein, ich weiß nicht ...... –
https://code.google.com/p/android/issues/detail?id=57120#c14 – gkiko