我有一些统计数据需要从我的 Android 4.2+ 应用程序发送到我的服务器并等待响应。事实上,一些用户只运行一次,所以为了从他们那里获取数据,我需要在主 Activity 的 onStop 中发送它。
据我所知,请求必须是同步的:如果我在这里创建 http 工作线程,android 将继续运行并在执行 http 请求之前关闭应用程序。 假设只能进行一次发射,我不能指望在下一次发射时检查数据。 我什至考虑过在 onStop 中启动服务(以确保代码将在应用程序停止后执行)来处理这个请求,但它看起来很难看。
你是怎么做到这些的?
最佳答案
我建议使用 IntentService 或 WakeFullIntentService ,您可以在 onStop 中触发您的工作。
if I create http working thread here android will just run further and close app before http request performed.
不,android 不会立即终止你的应用程序进程,你可以启动服务,它会完成它的工作。实际上系统可能会终止您的应用程序,但您必须立即打开其他重型应用程序 - 如相机等。
为了避免你可以让你的服务前台,通过添加通知
关于java - 在应用程序的 onStop 中在 android 中发送 http 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33893224/