Added workaround for Android emulator bug. Closes #2

git-svn-id: https://forja.rediris.es/svn/cusl6-swadroid/trunk@43 5bc14d19-1e4b-4ba2-aa50-860af135f48c
This commit is contained in:
Juan Miguel Boyero Corral 2011-11-22 22:02:54 +00:00
parent 00c1fb3060
commit af4e4fa982
5 changed files with 27 additions and 6 deletions

View File

@ -33,6 +33,7 @@ public final class R {
public static final int close_dialog=0x7f050003;
public static final int errorCopyMsg_DB=0x7f050016;
public static final int errorMsgLaunchingActivity=0x7f050014;
public static final int errorMsgWorkaroundEmulator=0x7f050015;
public static final int functionsTitle_menu=0x7f05000f;
public static final int loginModuleLabel=0x7f050001;
public static final int loginProgressDescription=0x7f050013;

View File

@ -20,5 +20,8 @@
<string name="loginTitle_menu">Conectar</string>
<string name="loginProgressTitle">Identificación</string>
<string name="loginProgressDescription">Conectando...</string>
<string name="errorMsgLaunchingActivity">Ha ocurrido un error durante la ejecución de la operación</string><string name="upgradeMsg_DB">Actualizando base de datos...</string><string name="errorCopyMsg_DB">Error copiando base de datos</string>
</resources>
<string name="errorMsgLaunchingActivity">Ha ocurrido un error durante la ejecución de la operación</string>
<string name="upgradeMsg_DB">Actualizando base de datos...</string><string name="errorCopyMsg_DB">Error copiando base de datos</string>
<string name="errorMsgLaunchingActivity">Ha ocurrido un error durante la ejecución de la operación</string>
<string name="errorMsgWorkaroundEmulator">Mierda. Ese bug del emulador de Android ha vuelto a aparecer. Reintentando...</string>
</resources>

View File

@ -21,6 +21,7 @@
<string name="loginProgressTitle">Login</string>
<string name="loginProgressDescription">Connecting...</string>
<string name="errorMsgLaunchingActivity">An error occurred during the execution of the operation</string>
<string name="upgradeMsg_DB">Upgrading database...</string>
<string name="errorCopyMsg_DB">Error copying database</string>
</resources>
<string name="upgradeMsg_DB">Upgrading database...</string>
<string name="errorCopyMsg_DB">Error copying database</string>
<string name="errorMsgWorkaroundEmulator">Damn. That Android emulator bug appeared again. Retrying...</string>
</resources>

View File

@ -72,4 +72,8 @@ public class Global {
* Table name for for relationship between test's questions and tags
*/
public static final String DB_TABLE_TEST_QUESTIONS_TAGS = "tst_questions_tags";
/*
* Class Module's tag name for Logcat
*/
public static final String MODULE_TAG = "Module";
}

View File

@ -22,6 +22,8 @@ package es.ugr.swad.swadroid.modules;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.util.Log;
import es.ugr.swad.swadroid.Global;
import es.ugr.swad.swadroid.Preferences;
import es.ugr.swad.swadroid.R;
import java.io.IOException;
@ -209,7 +211,17 @@ public class Module extends Activity {
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
envelope.setOutputSoapObject(request);
HttpTransportSE androidHttpTransport = new HttpTransportSE(URL);
androidHttpTransport.call(SOAP_ACTION, envelope);
//If an XmlPullParserException occurs, retry once in order to workaround an Android emulator bug
try {
androidHttpTransport.call(SOAP_ACTION, envelope);
} catch(XmlPullParserException ex) {
Log.e(Global.MODULE_TAG, ex.getLocalizedMessage());
ex.printStackTrace();
Log.e(Global.MODULE_TAG, getString(R.string.errorMsgWorkaroundEmulator));
androidHttpTransport.call(SOAP_ACTION, envelope);
}
result = (SoapObject) envelope.getResponse();
}