我正在使用 sendSynchronousRequest 从服务器获取数据。我知道同步将等到收到该请求的数据为止。
但是,当用户错误地输入一些不存在的网址并尝试获取响应时,就会出现问题。在这种情况下,如果用户进入后台而不是进入前台,则仅显示黑屏。它只显示状态栏。而且它没有显示任何后台应用程序。我必须按主页按钮才能退出我的应用程序。
在模拟器上,1 分钟多后,它向我显示“请求超时”消息(没有崩溃)。
在设备上,应用程序会在 1 分钟内崩溃。
任何建议。任何帮助。这在我的应用程序中确实是一个严重的问题。
Thanks.
正如朱利安所说,看门狗正在杀死你的应用程序。回答一些问题:
- 为什么这种情况只发生在模拟器上?
因为当您调试看门狗时,它不会影响您的应用程序,因此可能需要一些时间。
- 为什么只有当用户输入错误的网址时才会发生这种情况?
由于系统超时,如果找不到服务器,系统将继续尝试 60 秒。
- 那么问题是同步还是异步?
不,问题是线程,您可以在后台线程中执行相同的操作,只是不要在主线程上执行此操作,看门狗将不会打扰您。
- 为什么应用程序启动时屏幕黑屏?
请记住,您正在主线程(绘制的线程)上创建阻塞的东西......
希望这就是全部。如果我错过了什么,请告诉我。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)