为什么无法在 asynktask 内的位图数组列表中添加位图。
public static class YourMoves_Players extends AsyncTask<String, String, String> {
// static String yourmove_players[];
@Override
protected String doInBackground(String... args) {
boolean failure = false;
// TODO Auto-generated method stub
// Check for success tag
int success;
Log.d("login.on create","YOURMOVE_PLAYERS Background");
try {
// Building Parameters
List<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(new BasicNameValuePair("playerid", fb_id));//player_id
Log.d("request!", "starting");
//Posting user data to script
JSONObject json = jsonParser.makeHttpRequest(
GETYOURMOVE_URL, "POST", params);
if(json == null)
{
Log.d("json","json returning null");
return null;
}
success = json.getInt(TAG_SUCCESS);
if (success == 1) {
products = json.getJSONArray(TAG_PRODUCTS);
Log.d("Notification","BEFORE FOR LOOP");
Log.d("",products.length()+" LENGTH");
for (int i = 0; i < products.length(); i++) {
JSONObject c = products.getJSONObject(i);
String yourmove_pid = c.getString(TAG_YOURMOVE_ID);
String player_name = c.getString(TAG_YOURMOVE_NAME);
// yourmove_pic.add(Get_FB_Image.getFBImage(yourmove_pid));
Players player=new Players(yourmove_pid,player_name);
yourmove_list.add(player);
yourmove_id.add(yourmove_pid);
yourmove.add(player_name);
Log.d("Vs_facebook","going to add bitmap facebook image");
yourmove_pic.add(Get_FB_Image.getFBImage(yourmove_pid));
Log.d("Vs_facebook"," facebook image added");
Log.d("User Created!", json.toString()+"CONGRETS");
}
Log.d("","AFTER FOR LOOP yourmove_id "+yourmove_id);
return json.getString(TAG_MESSAGE);
}else{
Log.d("Login Failure!", "SUCCESS FAILED");
return json.getString(TAG_MESSAGE);
}
} catch (JSONException e) {
e.printStackTrace();
}
catch(Exception e){}
return null;
}
/**
* After completing background task Dismiss the progress dialog
* **/
}
“yourmove_pic”是一个位图数组列表,“Get_FB_Image.getFBImage(yourmove_pid)”是获取用户 facebook 个人资料图像的方法。但我的应用程序在执行此行之前卡住了。在执行此行之前收到我正在打印的日志消息。
所以是什么问题请帮忙
我的 Logcat 消息 ----->
09-19 10:21:48.999: I/Choreographer(2115): Skipped 77 frames! The application may be doing too much work on its main thread.
09-19 10:21:49.300: I/Choreographer(2115): Skipped 194 frames! The application may be doing too much work on its main thread.
09-19 10:21:49.350: D/Vs_facebook(2115): inside on start
09-19 10:21:49.390: D/(2115): Vs_FACEBOOK ON RESUME BEFORE ShowList
09-19 10:21:52.509: D/login.on create(2115): YOURMOVE_PLAYERS Background
09-19 10:21:52.560: D/request!(2115): starting
09-19 10:21:54.980: D/Notification(2115): BEFORE FOR LOOP
09-19 10:21:54.980: D/(2115): 4 LENGTH
09-19 10:21:55.000: D/Vs_facebook(2115): going to add bitmap facebook image
在我的 getFBImage 中,我正在获取这样的个人资料图片
URL img_value = null;
img_value = new URL("http://graph.facebook.com/"+fb_id+"/picture?type=small");
fb_image = BitmapFactory.decodeStream(img_value.openConnection().getInputStream());
return fb_image;