我在主Activity中有这个代码,其中fetchxml
是AsyncTask:
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]
中没有得到任何价值?
答案 0 :(得分:2)
当值为null或为空String时,Log.d也不会显示标记。确保sharedPreferences返回一个值。似乎键'GroupID'不存在,sharedPreferences返回默认值,这是一个空字符串“”
答案 1 :(得分:1)
确认您将类AsyncTask
定义为:
private class Fetchxml extends AsyncTask<String, Integer, String>{ ...
此处的重要部分是确保上面的第一个参数类型为String
,以与doInBackground
中预期的值保持一致。
同时确认String GroupID
不为空。