parse.com を使用していますが、画像の取得に問題があります。これはコードです:
ParseFile fileObject = (ParseFile) comment.get("ac");
fileObject.getDataInBackground(new GetDataCallback() {
@Override
public void done(byte[] data,
ParseException e) {
if (e == null) {
// Decode the Byte[] into
// Bitmap
try {
Bitmap bmp = BitmapFactory.decodeByteArray( data, 0, data.length);
// Get the ImageView from
// main.xml
String root = Environment.getExternalStorageDirectory().toString();
File myDir = new File(root + "/imagesuri1/");
String fname = "image-"+ n +".jpg";
n++;
File file = new File (myDir, fname);
if (file.exists())
{file.delete();}
FileOutputStream out = new FileOutputStream(file);
bmp.compress(Bitmap.CompressFormat.JPEG, 90, out);
out.flush();
out.close();
} catch (Exception b) {
b.printStackTrace();
}
// Close progress dialog
progressDialog.dismiss();
}
else {
Toast.makeText(getApplicationContext(), "ha abido un problema", Toast.LENGTH_SHORT).show();
}
}
});
}
}
});
no++;
具体的には、問題は parse.com に 3 つの画像があり、すべての画像を取得してデコードし、SD カードに保存していることです。画像が次のように返されることがあります: (image-0.jpg - 0 ) (image-1.jpg - 1 ) (image-2.jpg - 2 )。これが私が欲しいものです。画像が次のように返されることがあります: (image-0.jpg - 0 ) (image-2.jpg - 1 ) (image-1.jpg - 2 )。理由がわかりません。
これはファイルのサイズ取得の問題ですか? クエリを正しく注文した場合にこの結果が (無秩序に) 表示される理由がよくわからないため、アドバイスや解決策を教えてください。