さて、Androidアプリケーションを作成することになっていますが、何らかの理由で、画像をビットマップ画像に変換できません。これは.png画像であり、コードで変換しようとすると、アプリケーションがクラッシュするだけで、エラーコードが表示されないか、何も表示されません。何度も修正を試みましたが、プログラミングが苦手で、助けが必要です。うまくいきません。
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == FOTO_NEMEN && resultCode == RESULT_OK)
{
final File file = temp;
try {
String urienzo = "file:///sdcard/DCIM/2013-01-30_13-27-28.png";
Uri uri = Uri.parse(urienzo);
Bitmap foto = MediaStore.Images.Media.getBitmap(this.getContentResolver(), uri);
if (foto == null) {
Toast.makeText(this, Uri.fromFile(file).toString(), Toast.LENGTH_SHORT).show();
return;
}
ByteArrayOutputStream bos = new ByteArrayOutputStream();
foto.compress(Bitmap.CompressFormat.PNG, 0 , bos);
final byte[] bytes = bos.toByteArray();
bos.close();
AsyncTask<Void,Void,Void> taak = new AsyncTask<Void,Void,Void>() {
@Override
protected Void doInBackground(Void... params) {
stuurAfbeelding(bytes);
return null;
}
};
taak.execute(null,null);
} catch (IOException e) {
Log.e("Snapper","Fout bij foto nemen: " + e);
}
}
}
ビットマップ写真の部分に到達するたびに、エラーメッセージなしでアプリケーションがクラッシュします。私のURIがハードコーディングされている理由は、URI.fromfileが間違ったURIを教えてくれたと思うので、確認したかったのです。今ではクラッシュするだけで、コードのどこが悪いのかわかりません。誰かが私を助けてくれませんか?