Question

Je travaille sur une application Android. J'ai une activité qui a cette méthode:

protected void onCreate(Bundle savedInstanceState)
{
    Bundle extraData = getIntent().getExtras();
    if (extraData == null) {
        throw new NullPointerException("We need a bundle object.");
    }
    else {
        String modelFileName = extraData.getString(Constants.MODEL_FILE_NAME);
        try {
            FileInputStream file = new FileInputStream(new File(modelFileName));
            ObjectParsed = Parse.parseFile(file);
        } catch (FileNotFoundException e) {
            return;
        }
    }
    // Call the base class version to initialize QCAR and setup
    // the required view:
    super.onCreate(savedInstanceState);
}

Je l'analyse d'un fichier texte sur la méthode de onCreate cela peut être lent.

Le ObjectParsed est défini sur la classe de base et il doit être très instated super.onCreate(savedInstanceState); sera appelée.

Et faire droit? Peut-être que Parse.parseFile(file) peut être fait dans une autre méthode ou par une tâche asynchrone.

Merci.

Était-ce utile?

La solution

  

Peut-être Parse.parseFile (fichier) peut être fait dans une autre méthode ou par une tâche asynchrone.

Vous l'avez deviné -. Si cela prend du temps non négligeable, vous ne devriez pas faire sur le thread d'interface utilisateur

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top