Je tente de lancer une nouvelle intention après le chargement des données. J'utilise un gestionnaire qui appelle une méthode lorsque le thread est terminé, puis dans cette méthode j'essaie de lancer une nouvelle intention mais mon application plante à chaque fois. Je l'ai réduit à la variable Context dans le constructeur Intent. Voici mon code:Impossible de comprendre le contexte lors du lancement d'une intention à partir d'une méthode d'achèvement de thread
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
pDialog = new ProgressDialog(this);
pDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
pDialog.setMessage("Loading...");
pDialog.setCancelable(false);
pDialog.show();
mHandler = new Handler();
checkUpdate.start();
}
private Thread checkUpdate = new Thread()
{
public void run()
{
try
{
//Do some stuff
mHandler.post(showUpdate);
}
catch(Exception e)
{
//Error case
}
}
};
private final Context context = this;
private Runnable showUpdate = new Runnable()
{
public void run()
{
//Do post process
pDialog.dismiss();
//This is the line it crashes on
Intent intent = new Intent(context, com.example.example1.TestListActivity.class);
startActivityForResult(intent, 0);
}
};
J'ai également essayé getApplicationContext() dans le constructeur Intent au lieu du contexte. Donc l'autre ligne serait: Intent mowerListIntent = new Intent (getApplicationContext(), com.example.example1.TestListActivity.class); – rplankenhorn
Pouvez-vous publier la sortie logcat – Vinay
Sans l'exception du journal, tout ce que nous pouvons faire est de spéculer. De même, comment avez-vous resserré ce qui causait le problème? Êtes-vous certain que ce n'est pas dans l'activité qui reçoit l'intention? – codelark