Peut-être une question facile: je veux partager un bitmap que j'ai reçu sur le net sur Twitter / Facebook / etc avec l'action par défaut "Intention".
Le code que j'ai trouvé p> doit être rempli au point "idonthnow" avec le bitmap. (this.bitmap) p> Je n'ai trouvé aucun moyen de gérer cela sans enregistrer le bitmap à sd interne .. p> regarde p> p> p> P>
4 Réponses :
Ok je l'ai eu le mien, il semble qu'il n'y a aucun moyen d'obtenir l'image URI sans enregistrer le bitmap sur le disque, donc j'utilise cette méthode simple:
private Uri storeImage() {
this.storedImage = null;
this.storeImage = true;
// Wait for the image
while (this.storedImage == null && !this.stop)
try {
Thread.sleep(100);
} catch (InterruptedException e) {
e.printStackTrace();
}
this.storeImage = false;
FileOutputStream fileOutputStream = null;
File path = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES);
File file = new File(path, "cwth_" + getCurrentTime()+ ".jpg");
try {
fileOutputStream = new FileOutputStream(file);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
BufferedOutputStream bos = new BufferedOutputStream(fileOutputStream);
this.storedImage.compress(CompressFormat.JPEG, JPEG_STORE_QUALITY, bos);
try {
bos.flush();
bos.close();
fileOutputStream.flush();
fileOutputStream.close();
} catch (IOException e) {
e.printStackTrace();
}
return Uri.parse("file://" + file.getAbsolutePath());
}
Peut être un peu tard maintenant, mais vous pouvez également faire string url = images.media.insertimage (context.getcontentreSolver (), image, "titre", null); code> si vous n'avez pas ' ve sez comment il est stocké. P>
Cette méthode crée une vignette pour l'image (en tant que documentation).
Tout simplement, vous pouvez convertir un bitmap en PNG du stockage externe.
return Uri.parse("file://" + imageFile.getAbsolutePath());
Chemin de chaîne = environnement.getexternalStoragePublicDirectory (Environnement.di Rectory_pictures);
Envoyer le contenu binaire
Les données binaires sont partagées à l'aide de l'action Action_SEND combinée à la définition du type MIME approprié et de placer l'URI aux données dans un extra_stream supplémentaire. Ceci est couramment utilisé pour partager une image mais peut être utilisé pour partager tout type de contenu binaire: source http://developer.android.com/training/sharing/send.html p> p>
Ce Q & A vaut la peine de lire Stackoverflow.com/Questtions/9049143/...