如何在android中读取USSD消息响应

时间:2016-04-28 10:50:05

标签: java android android-studio ussd

我想将余额存储在sqlite数据库中,我已成功拨打USSD

String balance_check="*444";
String encodedHash = Uri.encode("#");
  String ussd = balance_check + encodedHash;
 startActivityForResult(new Intent("android.intent.action.CALL",Uri.parse("tel:" + ussd)), 1);  

这是onActivityResult函数

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    if (requestCode == 1) {
    if (resultCode == RESULT_OK) {
            String dd = data.toString();
            Log.d("myussdmessage", data.toString());}}

但我无法得到字符串到底是怎么做的。我想将对话的余额存储到我的数据库中。任何人都可以建议我怎么做。

1 个答案:

答案 0 :(得分:3)

您需要构建一个AccessibilityService,以便在下面的链接中阅读AccessibilityService的文档 https://developer.android.com/reference/android/accessibilityservice/AccessibilityService.html

这个问题对我有帮助

Prevent USSD dialog and read USSD response?