2017-05-31 104 views
0

我想让我的应用在手机拨打特定号码(代码)时采取一些措施,就像我们输入*#06#来显示IMEI一样( USSD代码)。我一直在研究超过2小时的解决方案,但无法找到。也许我使用了错误的关键词(英语不是我的母语),或者可能做不到。请,任何人都可以帮助我吗?我不是要求一个完整的解决方案,如果只有在可能的情况下才能告诉我,并指出这些指导将对我有很大帮助!谢谢!如何截取拨号号码(如ussd)

+0

[它看起来像有当进入一个特殊的代码是被发送广播(https://android.googlesource.com/platform/packages/apps/ Dialer/+/nougat-release/src/com/android/dialer/SpecialCharSequenceMgr.java#176),你可以尝试使用它。这是另一个有用的资源:http://simonmarquis.github.io/Android-SecretCodes/ –

+0

@AndrewSun,谢谢!我会看一下。 – Guybrush

+0

只是一个头 - 我在几年前的地方工作,获得了这项功能的专利(拨打号码时启动应用程序)。该专利现在由Nuance Communications拥有。即使你不知道如何付款,你也可能无法在法律上做到这一点。 –

回答

-1
String ussd = "*" + Uri.encode ("#")+"06"+Uri.encode ("#"); 
startActivity (new Intent("android.intent.action.CALL", Uri.parse ("tel:" + ussd))); 

你也需要使用android.permission.CALL_PHONE

+0

谢谢你的帮助!我会分析你的代码,并尝试在我的应用程序中使用它! – Guybrush