2017-07-30 70 views
-2

我想知道如果我使用异步任务5秒后反复发送HttpClient请求,它会产生任何问题。如果它产生任何问题,那么我应该如何以重复的方式将数据发送到我的服务器?如何在3-5秒后将数据从android发送到服务器?

+1

那么它会消耗电池 – EpicPandaForce

+0

请给我适当的解决方案。 –

+0

我正在谈论这个解决方案。带定时器任务的异步任务。谢谢。 –

回答

1

当应用程序试图在其主线程上执行联网操作时,您将获得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

相关问题