我要开发一个应用程序,它必须拦截WAP推送消息,然后/ 用信息做 /。我已尽可能多地阅读WAP和处理WAP等。我能够编写一个原型来解析作为WAP_PUSH_RECIEVED广播意图附加内容的一部分发送的二进制/十六进制字符串。
我也试过在这里阅读一些东西,但我似乎无法理解一些事情。
1)如何在Android中处理文本WAP消息?拦截是否相同,该信息是否也将作为广播中的数据发送?这意味着,当我们在android中编写用户代理时,我们可以简单地假设WAP消息,文本,wbxml或其他方式与WBXML表单一起处理和广播吗?
2)我一直在尝试收听WAP消息,特别是发送给GMail的消息,但没有检测到任何消息。这是否意味着这些邮件只是专门传递给Gmail UA,因此我们无法获取它们,或者我做错了什么?以下是我的清单。我也有适当的权限
<intent-filter android:priority="999" >
<action android:name="android.provider.Telephony.WAP_PUSH_RECEIVED" />
<data android:mimeType="application/*" />
<data android:mimeType="application/vnd.wap.emn+wbxml" />
<data android:mimeType="text/vnd.wap.emn+xml" />
<data android:mimeType="text/vnd.wap.emn" />
<data android:mimeType="text/vnd.wap.emnc" />
</intent-filter>
我尝试使用MMS作为mime类型并且能够使用它,但是WAP消息否则无法实现。
任何帮助将不胜感激。的Ta!
答案 0 :(得分:0)
以防万一有人在寻找我要求的类似信息:
1)是的,Android框架中有一个数据短信解析器负责解析任何传入的消息,并将其转换为紧凑的WBXML表单,作为广播的一部分。另外,我们可以使用kxml2库将WBXML转换回XML,无论是否需要为它创建文件。 kxml2有一些方法可以在内存中生成一个树来搜索。
2)Gmail WAP推送消息是专门发出的,我认为,一些声称Gmail推送消息功能的在线软件真正使用发出的广播,表明gmail收件箱发生了变化。当清单中提供了特定且正确的mimeType时,收到了其他WAP消息。谢谢!