首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在后台调用USSD代码(并获取其响应)?

在后台调用USSD代码(并获取其响应)?
EN

Stack Overflow用户
提问于 2010-11-16 18:50:05
回答 8查看 34.3K关注 0票数 19

我想写一个小工具显示用户的预付余额,剩余数据等。

我正在考虑自动调用USSD代码,它返回这些数据(每个网络必须有一个正则表达式),间隔(不经常,以节省电池)。这将不得不在后台完成。目前我有一个应用程序,它运行ussd代码并返回结果,所以我认为这应该是可能的-但我不确定它将如何在后台完成。

我已经看到了呼叫号码的意图,但我不确定如何获得结果,我也在想,这种意图会导致呼叫屏幕出现在前台吗?

另一种选择是通过屏幕抓取运营商网站/ wap网站的结果来获取数据,但这将导致用户的数据费,所以我更喜欢使用USSD代码的解决方案。

提前感谢大家的帮助-今天才开始了解android,所以有很多东西需要学习:)

EN

Stack Overflow用户

发布于 2012-02-23 14:00:36

你可以使用下面的代码来调用android手机上的ussd代码来检查余额等......

代码语言:javascript
复制
   String s=calledittext.getText.toString();//calledittext is editText on the 
  //screen   from  which  can get the number
          if((s.startsWith("*"))&&(s.endsWith("#"))){
            //if true then it is a USSD call----
            callstring=s.substring(0, s.length()-1);
            callstring=callstring+Uri.encode("#");

    Log.d("CALL TYPE---------->", "USSD CALL"); 
        }else{
            callstring=s;   
    Log.d("CALL TYPE---------->", "Not a USSD CALL");   
    //Intent i=new Intent(android.content.Intent.ACTION_CALL,Uri.parse("tel:"+output.getText().toString()));
    //startActivity(i);
        }
    Intent i=new Intent(android.content.Intent.ACTION_CALL,Uri.parse("tel:"+callstring));
    startActivity(i);
票数 6
EN
查看全部 8 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4193343

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档