ich ein Foto von meiner Kamera direkt in ein Laufwerk Ordner hochladen möchten:Foto hochladen ohne Kompression fahren
OutputStream outputStream = result.getDriveContents().getOutputStream();
ByteArrayOutputStream bitmapStream = new ByteArrayOutputStream();
/* image is my Bitmap */
image.compress(Bitmap.CompressFormat.PNG, 100, bitmapStream);
try {
outputStream.write(bitmapStream.toByteArray());
} catch (IOException e1) {
Log.i(TAG, "Unable to write file contents.");
}
So Im dies zu tun und es funktioniert. Das Problem ist, dass meine Bilder in Laufwerk in sehr niedriger Qualität sind und ich ein qualitativ hochwertiges Video haben muss.
Ich habe bereits versucht, diese Lösung Converting bitmap to byteArray android
Aber dann in Laufwerk ist nicht das Foto als Mediendatei erkennen und es nicht lesen kann. Ich habe vielleicht etwas versäumt.
EDIT: ich genau die gleichen Dinge getan haben, die dort https://stackoverflow.com/a/13000774/6644403 ist und tun auf diese Weise meine Bitmap in ActivityResult zu bekommen:
try {
mBitmapToSave = MediaStore.Images.Media.getBitmap(this.getContentResolver(), data.getData());
} catch (IOException e) {
e.printStackTrace();
}
Möglicherweise möchten Sie ein uri für das Ausgabebild bereitstellen, wie in dieser SO [question] (http://stackoverflow.com/a/10272781/5995040) erläutert. Wenn die "uri" nicht angegeben wird, gibt die Kameraabsicht nur ein Miniaturbild des Bildes zurück. Sie können auch dieses Tutorial - [Take Picture in Android] (http://www.tutorialforandroid.com/2010/10/take-picture-in-android-with.html), um zu sehen, wie die Implementierung, wie zu tun das richtig. Hoffe das hilft. –
Ich habe das ausprobiert, weiß aber nicht, warum ich keinen Weg gefunden habe, die Bitmap zu bekommen. Wenn ich versuche, uri anzugeben, kann ich mein Bild in voller Größe nicht abrufen –