首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我正在尝试从adb shell拨键盘上的密码,如*#*#0808#*#*。

我正在尝试从adb shell拨键盘上的密码,如*#*#0808#*#*。
EN

Stack Overflow用户
提问于 2019-05-28 23:57:01
回答 2查看 3.5K关注 0票数 0

我想通过android拨号器拨一个号码,后者打开键盘/拨号器,然后使用亚行命令拨号。

我试图使用以下亚行shell命令拨打该号码:

adb shell am start -a android.intent.action.CALL -d tel:*#*#0808#*#*

但这拨的号码OTA作为一个MMI代码,这不是我们想要的。

我被告知,代码##0808##是一个启动隐藏菜单的秘密代码,它必须通过拨号程序拨号。

我发现命令:

adb shell monkey -p com.android.dialer -c android.intent.category.LAUNCHER 1

启动手机应用程序(但不是num键盘)。

于是,我试着用命令拨号:

adb shell monkey -p com.android.dialer/com.android.incallui.InCallActivity -c android.intent.category.LAUNCHER 1 *#*#0808#*#*

但那不管用。

有人能帮我解释一下为什么不起作用吗?我怎么才能启动拨号器并拨那个号码呢?

谢谢!

EN

回答 2

Stack Overflow用户

发布于 2019-05-29 07:57:29

你到底想达到什么目的?这些代码被称为USSD代码(尝试代码)。在每个设备上都是不同的。好吧,他们中的一些人在大部分手机上工作,但这不是规则。请对这些代码非常小心,因为其中一些代码可能会对设备进行工厂重置或设置不当。

当通过亚行执行这些代码时,您需要对它们进行url编码(请检查https://www.degraeve.com/reference/urlencoding.php),因此在您的示例中,*%2A#%23

代码语言:javascript
复制
adb shell am start -a android.intent.action.CALL -d tel:%2A%23%2A%230808%23%2A%23%2A

但是,如果代码在通过拨号程序插入时对您不起作用,则这两者都不起作用。我用Android6.0在我的索尼Xperia Z5上尝试了你的代码,但是它没有工作:

BTW usb设置可以通过Settings>Developer Options>USB配置访问。

票数 0
EN

Stack Overflow用户

发布于 2019-06-14 19:31:23

我计算出了我需要从命令提示符发出的命令,使用亚行shell来完成我想要的任务。

代码语言:javascript
复制
adb shell input keyevent KEYCODE_HOME

adb shell input tap 197 2523 #enter the dialer 

adb shell input tap 1272 2467 #enter the dialer keypad

adb shell input text "*#*#4412#*#*"

这些类型的数字称为USSD代码/MMI命令。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56351426

复制
相关文章

相似问题

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