-2
我想知道如果我使用异步任务5秒后反复发送HttpClient请求,它会产生任何问题。如果它产生任何问题,那么我应该如何以重复的方式将数据发送到我的服务器?如何在3-5秒后将数据从android发送到服务器?
我想知道如果我使用异步任务5秒后反复发送HttpClient请求,它会产生任何问题。如果它产生任何问题,那么我应该如何以重复的方式将数据发送到我的服务器?如何在3-5秒后将数据从android发送到服务器?
当应用程序试图在其主线程上执行联网操作时,您将获得NetworkOnMainThreadException。
尝试使用您的AsyncTask类中下面的代码或一个单独的线程并执行:
public static ScheduledExecutorService scheduleTaskExecutor;
scheduleTaskExecutor = Executors.newScheduledThreadPool(2);
private void startThreadOnce() {
scheduleTaskExecutor.scheduleAtFixedRate(new Runnable() {
@Override
public void run() {
// Send data here.
}
}, 0, 5, TimeUnit.SECONDS); // 0=initial delay, 5=interval, TimeUnit.SECONDS=time in seconds
}
也期待在这些问题的答案:
https://developer.android.com/reference/android/os/NetworkOnMainThreadException.html Periodically send data to server
那么它会消耗电池 – EpicPandaForce
请给我适当的解决方案。 –
我正在谈论这个解决方案。带定时器任务的异步任务。谢谢。 –