0

私はAndroidアプリケーションに取り組んでいます。このメソッドを持つアクティビティがあります:

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);
}

メソッドでテキスト ファイルを解析していますが、onCreateこれは遅くなる可能性があります。

ObjectParsed基本クラスで定義されており、非常super.onCreate(savedInstanceState);に呼び出されるように設定する必要があります。

そして、それを正しく行っていますか?おそらくParse.parseFile(file)、別のメソッドまたは非同期タスクで実行できます。

ありがとう。

4

1 に答える 1

2

おそらく、 Parse.parseFile(file) は別のメソッドまたは非同期タスクで実行できます。

ご想像のとおり、無視できないほどの時間がかかる場合は、UI スレッドで実行するべきではありません。

于 2010-12-04T15:44:52.993 に答える