我正在开发一个使用套接字连接与服务器通信的 Android 应用程序。服务器和 Android 设备之间传输的数据采用 JSON 格式。
该应用程序在 WiFi 和 HSPA 移动数据连接上运行良好。但是当连接类型切换到 EDGE 时,应用程序会崩溃。
每当手机突然切换到 EDGE 时,就会捕获到以下异常...
[2012/06/03 18:47:26] ERROR - JSONManager.getJsonObjectFromStream : Unterminated string at character 202 of {"Messages":[{"RequestID":"c69421a4-34b1-4a55-828d-f0ab2aee80a6","OperationType":"GET","CategoryName":"Agent","RequestKey":"Revision","Params":null,"Channel":null,"EventID":null,"EventSource":null,"Even
以上是我为调试应用程序而创建的日志文件报告的异常。如您所见,异常被捕获并处理,但应用程序仍然崩溃。上面的错误是 JSON 不完整。但是,连接到 HSPA 或 WiFi 时不会弹出此问题。
关于可以通过 EDGE 连接传输的最大数据长度是否存在某种限制?
我能做些什么来解决这个问题?
如果没有,我是否至少有一种方法可以检测手机何时更改其与 EDGE 网络的连接?