У меня есть приложение для Android с этим утверждением, которое отправляет данные на сервер.
HttpResponse httpresponse = httpclient.execute(httppost);
Когда я запускаю приложение, этот оператор выполняется нормально. Я сделал мое приложение автоматически запускается после загрузки. Когда это загружается, я получаю IOEXCeption в этой строке с сообщением мое имя хоста. Хост работает все время, так как тот же оператор работает нормально, когда я запускаю приложение вручную. Эта проблема возникает только при загрузке телефона.
Кто-нибудь сталкивался с этой проблемой раньше?
CommansWare,
У меня есть этот новый метод в моем вызове onReceive для проверки сетевого подключения. С этим моя проблема решена, то есть она отправляет сообщение «in boot Completed» и продолжает успешно выполнять http-запрос, но похоже, что он не завершает работу, пока сообщение «not online» появляется бесконечно. Как это может случиться? Разве это не правильное решение?
public void onReceive(Context context, Intent intent)
{
while(!isOnline(context) )
{
Toast toast = Toast.makeText(context, "Not online", Toast.LENGTH_SHORT);
toast.show();
}
Toast toast = Toast.makeText(context, "in boot completed", Toast.LENGTH_SHORT);
toast.show();
}
}
protected boolean isOnline(Context context) {
ConnectivityManager cm = (ConnectivityManager)context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo netInfo = cm.getActiveNetworkInfo();
if (netInfo != null && netInfo.isConnected())
{
Toast toast = Toast.makeText(context, "returned true", Toast.LENGTH_SHORT);
toast.show();
return true;
}
else
{
Toast toast = Toast.makeText(context, "returned false", Toast.LENGTH_SHORT);
toast.show();
return false;
}
}