版权声明:本文为半吊子子全栈工匠(wireless_com,同公众号)原创文章,未经允许不得转载。 https://blog.csdn.net/wireless_com/article/details/6045563
如果手机支持BREW Debug 模式,可以在手机上键入“###BREWDEBUG#”即“###273933284#”来打开调试模式,手机厂商可能会改变这些输入间的值,因此不同手机金融调试模式的方法可能会有不同。在手机上输入不同的按键组合会产生不同的调试信息,如表16-3所示。
输入键值 | 功能描述 |
###0# | 清除所有的调试标识 |
###1# | 提供了BREW 库指针和堆栈的检验,例如是否指针为空,内存越界,堆节点损坏等等。该操作可能会使应用的UI显示变慢,显示的错误信息一般为“Application Error - Memory Access” ,“Application Error - Memory Corruption” 等 |
###2# | 能够指明当前的网络状态,包括PPP的状态和socket的状态,通过DIAG还可以获得读写操作网络时的错误代码以及ASCII格式的网络包的内容。 |
###3# | 用来显示当前可用的对内存信息,在手机屏幕的左上角会弹出一个小窗口,而且里面的内容会实时更新。 |
###4# | 可以同步的锁定DBGPRINTF(),能够在手机出现问题时正确地看到相应的消息 |
###5# | 给出所有的module列表 |
###6# | 给出所有的堆信息 |
###7# | 给出所有的资源缓存信息 |
###8# | 显示文件缓存信息 |
###9# | 关闭所有缓存的资源文件 |
###10# | 能够清除资源文件的缓存,允许这些资源文件被删除。 |
###11# | 用来测试BREW SMS的消息,并且没有//BREW 的前缀 |
###324# | 只有在BREW 3.1.5以上版本才支持,必须在应用中定义FEATURE_AEE_DEBUGSET,FARF可以显示OEM 和AEE 层的额外的调试信息。该指令可以显示FARF 的使用菜单,开发者可以选择一个或多个FARF 种类。 |
###69# | 软件重启 |
###666# | 硬件重启 |
###999# | 在重启时保存当前的选项设定 |
表 16-3:进入手机上调试模式的方法和操作指令
对于“###2#”指令而言,其中PPP的包内容需要QXDM工具的解析才能获知具体的含义,对于TCP/IP的包需要Ethereal等工具的解析,手机屏幕上所显示的符号如表16-4所示。
网络状态符号和含义 | |||
Socket 相关的网络状态符号 | PPP相关的网络状态符号 | ||
屏幕显示符号 | 含义 | ||
c | 正在连接 | ^ | 正在打开 |
C | 已经连接 | = | 已经打开 |
I | 空闲状态 | v | 正在关闭 |
b | 绑定 | # | 已经关闭 |
B | 被绑定 | < | 睡眠中 |
R | 读 | ~ | 已睡眠 |
W | 写 | > | 唤醒中 |
r | 接收 | ||
w | 发送 | ||
x | |||
X |
表 16-4:网络调试符号及相关含义