1

fetchxmlAsyncTaskであるメインのアクティビティにこのコードがあります。

String GroupID = PreferenceManager.getDefaultSharedPreferences(MainActivity.this).getString("GroupID","");
fetchxml.execute(GroupID);

では、次のdoInBackground(String... paras)とおりです。

protected String doInBackground(String...  paras) {
    Log.d("URL+ paras[0]", paras[0]);
    String xml = parser.getXmlFromUrl(URL+ paras[0]);
    return xml;
}

で値が得られなかったのはなぜparas[0]ですか?

4

2 に答える 2

2

値が null または空の文字列の場合、Log.d もタグを表示しません。sharedPreferences が値を返すことを確認してください。キー 'GroupID' が存在せず、sharedPreferences が空の文字列 "" であるデフォルト値を返すようです

于 2012-10-23T22:13:46.023 に答える
1

次のように拡張するクラスを定義していることを確認しますAsyncTask

private class Fetchxml extends AsyncTask<String, Integer, String>{ ...

ここで重要なのは、上記の最初のパラメーターが でString期待される値と一致する型であることを確認することdoInBackgroundです。

String GroupIDが null でないことも確認します。

于 2012-10-23T22:14:45.437 に答える