場所が変更されたときに、現在のユーザーの場所をリモート URL に送信する必要があるアプリケーションがあります。次のコードを使用して、いくつかのパラメーターで url を呼び出しています。しかし、次のコードは 1 回しか機能しません。2 回目は何も起こりません。サーバー ログに 1 つの要求が表示されますが、要求が受信されません。
public String sendRequest(String url){
InputStream content = null;
try {
HttpResponse response = httpclient.execute(new HttpGet(url));
response.setHeader("Cache-Control", "no-cache");
content = response.getEntity().getContent();
content.close();
} catch (Exception e) {
try {
content.close();
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
return content;
}
- 複数のリクエストを url に送信する最良の方法は何ですか?
- 上記のコードを使用して複数のリクエストを送信できないのはなぜですか?
注: エミュレーターを使用しており、場所を手動で送信しています。
メソッドを2回目に呼び出そうとしたときのエラーログは次のとおりです
03-30 16:48:15.205: E/ActivityThread(645): Service com.android.exchange.ExchangeService has leaked ServiceConnection com.android.emailcommon.service.ServiceProxy$ProxyConnection@40ceef60 that was originally bound here
03-30 16:48:15.205: E/ActivityThread(645): android.app.ServiceConnectionLeaked: Service com.android.exchange.ExchangeService has leaked ServiceConnection com.android.emailcommon.service.ServiceProxy$ProxyConnection@40ceef60 that was originally bound here
03-30 16:48:15.205: E/ActivityThread(645): at android.app.LoadedApk$ServiceDispatcher.<init>(LoadedApk.java:969)
03-30 16:48:15.205: E/ActivityThread(645): at android.app.LoadedApk.getServiceDispatcher(LoadedApk.java:863)
03-30 16:48:15.205: E/ActivityThread(645): at android.app.ContextImpl.bindService(ContextImpl.java:1418)
03-30 16:48:15.205: E/ActivityThread(645): at android.app.ContextImpl.bindService(ContextImpl.java:1407)
03-30 16:48:15.205: E/ActivityThread(645): at android.content.ContextWrapper.bindService(ContextWrapper.java:473)
03-30 16:48:15.205: E/ActivityThread(645): at com.android.emailcommon.service.ServiceProxy.setTask(ServiceProxy.java:157)
03-30 16:48:15.205: E/ActivityThread(645): at com.android.emailcommon.service.ServiceProxy.setTask(ServiceProxy.java:145)
03-30 16:48:15.205: E/ActivityThread(645): at com.android.emailcommon.service.AccountServiceProxy.getDeviceId(AccountServiceProxy.java:116)
03-30 16:48:15.205: E/ActivityThread(645): at com.android.exchange.ExchangeService.getDeviceId(ExchangeService.java:1249)
03-30 16:48:15.205: E/ActivityThread(645): at com.android.exchange.ExchangeService$7.run(ExchangeService.java:1856)
03-30 16:48:15.205: E/ActivityThread(645): at com.android.emailcommon.utility.Utility$2.doInBackground(Utility.java:551)
03-30 16:48:15.205: E/ActivityThread(645): at com.android.emailcommon.utility.Utility$2.doInBackground(Utility.java:549)
03-30 16:48:15.205: E/ActivityThread(645): at android.os.AsyncTask$2.call(AsyncTask.java:287)
03-30 16:48:15.205: E/ActivityThread(645): at java.util.concurrent.FutureTask.run(FutureTask.java:234)
03-30 16:48:15.205: E/ActivityThread(645): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080)
03-30 16:48:15.205: E/ActivityThread(645): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573)
03-30 16:48:15.205: E/ActivityThread(645): at java.lang.Thread.run(Thread.java:856)
03-30 16:48:15.225: E/StrictMode(645): null
03-30 16:48:15.225: E/StrictMode(645): android.app.ServiceConnectionLeaked: Service com.android.exchange.ExchangeService has leaked ServiceConnection com.android.emailcommon.service.ServiceProxy$ProxyConnection@40ceef60 that was originally bound here
03-30 16:48:15.225: E/StrictMode(645): at android.app.LoadedApk$ServiceDispatcher.<init>(LoadedApk.java:969)
03-30 16:48:15.225: E/StrictMode(645): at android.app.LoadedApk.getServiceDispatcher(LoadedApk.java:863)
03-30 16:48:15.225: E/StrictMode(645): at android.app.ContextImpl.bindService(ContextImpl.java:1418)
03-30 16:48:15.225: E/StrictMode(645): at android.app.ContextImpl.bindService(ContextImpl.java:1407)
03-30 16:48:15.225: E/StrictMode(645): at android.content.ContextWrapper.bindService(ContextWrapper.java:473)
03-30 16:48:15.225: E/StrictMode(645): at com.android.emailcommon.service.ServiceProxy.setTask(ServiceProxy.java:157)
03-30 16:48:15.225: E/StrictMode(645): at com.android.emailcommon.service.ServiceProxy.setTask(ServiceProxy.java:145)
03-30 16:48:15.225: E/StrictMode(645): at com.android.emailcommon.service.AccountServiceProxy.getDeviceId(AccountServiceProxy.java:116)
03-30 16:48:15.225: E/StrictMode(645): at com.android.exchange.ExchangeService.getDeviceId(ExchangeService.java:1249)
03-30 16:48:15.225: E/StrictMode(645): at com.android.exchange.ExchangeService$7.run(ExchangeService.java:1856)
03-30 16:48:15.225: E/StrictMode(645): at com.android.emailcommon.utility.Utility$2.doInBackground(Utility.java:551)
03-30 16:48:15.225: E/StrictMode(645): at com.android.emailcommon.utility.Utility$2.doInBackground(Utility.java:549)
03-30 16:48:15.225: E/StrictMode(645): at android.os.AsyncTask$2.call(AsyncTask.java:287)
03-30 16:48:15.225: E/StrictMode(645): at java.util.concurrent.FutureTask.run(FutureTask.java:234)
03-30 16:48:15.225: E/StrictMode(645): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080)
03-30 16:48:15.225: E/StrictMode(645): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573)
03-30 16:48:15.225: E/StrictMode(645): at java.lang.Thread.run(Thread.java:856)
03-30 16:48:15.225: W/ActivityManager(275): Unbind failed: could not find connection for android.os.BinderProxy@4100e3e8
03-30 16:48:15.246: E/ActivityThread(645): Service com.android.exchange.ExchangeService has leaked ServiceConnection com.android.emailcommon.service.ServiceProxy$ProxyConnection@40d2cc28 that was originally bound here
03-30 16:48:15.246: E/ActivityThread(645): android.app.ServiceConnectionLeaked: Service com.android.exchange.ExchangeService has leaked ServiceConnection com.android.emailcommon.service.ServiceProxy$ProxyConnection@40d2cc28 that was originally bound here
03-30 16:48:15.246: E/ActivityThread(645): at android.app.LoadedApk$ServiceDispatcher.<init>(LoadedApk.java:969)
03-30 16:48:15.246: E/ActivityThread(645): at android.app.LoadedApk.getServiceDispatcher(LoadedApk.java:863)
03-30 16:48:15.246: E/ActivityThread(645): at android.app.ContextImpl.bindService(ContextImpl.java:1418)
03-30 16:48:15.246: E/ActivityThread(645): at android.app.ContextImpl.bindService(ContextImpl.java:1407)
03-30 16:48:15.246: E/ActivityThread(645): at android.content.ContextWrapper.bindService(ContextWrapper.java:473)
03-30 16:48:15.246: E/ActivityThread(645): at com.android.emailcommon.service.ServiceProxy.setTask(ServiceProxy.java:157)
03-30 16:48:15.246: E/ActivityThread(645): at com.android.emailcommon.service.ServiceProxy.setTask(ServiceProxy.java:145)
03-30 16:48:15.246: E/ActivityThread(645): at com.android.emailcommon.service.ServiceProxy.test(ServiceProxy.java:191)
03-30 16:48:15.246: E/ActivityThread(645): at com.android.exchange.ExchangeService$7.run(ExchangeService.java:1850)
03-30 16:48:15.246: E/ActivityThread(645): at com.android.emailcommon.utility.Utility$2.doInBackground(Utility.java:551)
03-30 16:48:15.246: E/ActivityThread(645): at com.android.emailcommon.utility.Utility$2.doInBackground(Utility.java:549)
03-30 16:48:15.246: E/ActivityThread(645): at android.os.AsyncTask$2.call(AsyncTask.java:287)
03-30 16:48:15.246: E/ActivityThread(645): at java.util.concurrent.FutureTask.run(FutureTask.java:234)
03-30 16:48:15.246: E/ActivityThread(645): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080)
03-30 16:48:15.246: E/ActivityThread(645): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573)
03-30 16:48:15.246: E/ActivityThread(645): at java.lang.Thread.run(Thread.java:856)
03-30 16:48:15.265: E/StrictMode(645): null
03-30 16:48:15.265: E/StrictMode(645): android.app.ServiceConnectionLeaked: Service com.android.exchange.ExchangeService has leaked ServiceConnection com.android.emailcommon.service.ServiceProxy$ProxyConnection@40d2cc28 that was originally bound here
03-30 16:48:15.265: E/StrictMode(645): at android.app.LoadedApk$ServiceDispatcher.<init>(LoadedApk.java:969)
03-30 16:48:15.265: E/StrictMode(645): at android.app.LoadedApk.getServiceDispatcher(LoadedApk.java:863)
03-30 16:48:15.265: E/StrictMode(645): at android.app.ContextImpl.bindService(ContextImpl.java:1418)
03-30 16:48:15.265: E/StrictMode(645): at android.app.ContextImpl.bindService(ContextImpl.java:1407)
03-30 16:48:15.265: E/StrictMode(645): at android.content.ContextWrapper.bindService(ContextWrapper.java:473)
03-30 16:48:15.265: E/StrictMode(645): at com.android.emailcommon.service.ServiceProxy.setTask(ServiceProxy.java:157)
03-30 16:48:15.265: E/StrictMode(645): at com.android.emailcommon.service.ServiceProxy.setTask(ServiceProxy.java:145)
03-30 16:48:15.265: E/StrictMode(645): at com.android.emailcommon.service.ServiceProxy.test(ServiceProxy.java:191)
03-30 16:48:15.265: E/StrictMode(645): at com.android.exchange.ExchangeService$7.run(ExchangeService.java:1850)
03-30 16:48:15.265: E/StrictMode(645): at com.android.emailcommon.utility.Utility$2.doInBackground(Utility.java:551)
問題がわかりました。追加する必要があります
HttpGet getter = new HttpGet(url);
getter.setHeader("Cache-Control", "no-cache");