Cómo compartir imágenes desde una aplicación

Estoy usando este código ahora que toma imágenes de la cámara y luego las compartirá.

importar android.annotation.TargetApi;
importar android.content.Intent;
importar android.graphics.Bitmap;
importar Android Forum.Uri;
importar android.os.Build;
importar android.os.Bundle;
importar android.provider.MediaStore;
importar android.support.v7.app.ActionBarActivity;
importar android.view.View;
importar android.widget.Button;
importar android.widget.ImageView;
importar android.widget.Toast;

SharePictureActivity de clase pública extiende ActionBarActivity {

Botón privado cameraButton;
Botón privado sharePicture;
miniatura privada de ImageView;

imagen pública de mapa de bits;
imagen pública de UriUri;

private int PHOTO_ID = 101;

@Anular
vacío protegido onCreate (Bundle savedInstanceState) {
super.onCreate (savedInstanceState);
setContentView (R.layout.activity_share_picture);

cameraButton = (Botón) findViewById (Página en r.id.share_picture_camera_button);
sharePicture = (Botón) findViewById (Página en r.id.share_picture_share_button);
thumbnail = (ImageView) findViewById (Página en r.id.share_picture_thumbnail);

setupEvents ();
setupActionBar ();
}

privado vacío setupEvents () {
cameraButton.setOnClickListener (nueva View.OnClickListener () {

@Anular
public void onClick (Ver v) {
Intención intención = nueva intención (MediaStore.ACTION_IMAGE_CAPTURE);

// startActivity (intento);
// ^^ esto nos llevará a la actividad de la Cámara, sin embargo, no devolverá ninguna información, incluso si
// tomamos una foto, entonces tendríamos que buscarla manualmente y usar algo
// como un ContentProvider para hacerlo accesible. MediaStore + startActivityForResult = magic 🙂

startActivityForResult (intento, PHOTO_ID);
}
});

sharePicture.setOnClickListener (nueva View.OnClickListener () {

@Anular
public void onClick (Ver v) {
if (imagen == nulo) {
makeToast (“¡Tome una foto válida primero!”);
} más {
Intención intención = nueva intención (Intent.ACTION_SEND);
intent.setType (“image / jpeg”);
intent.putExtra (Intent.EXTRA_STREAM, pictureUri);
startActivity (Intent.createChooser (intento, “Compartir imagen con …”));
}
}
});
}

@Anular
vacío protegido en OnActivityResult (int requestCode, int resultCode, Intent intent) {
if (requestCode == PHOTO_ID) {
if (resultCode == RESULT_OK) {
// ^^ nos devolvieron una foto, de lo contrario obtendríamos un RESULT_CANCELLED
this.showPicture (intento);
}
}
}

showPicture privado vacío (intento de intención) {
Paquete intentExtras = intent.getExtras ();
picture = (Bitmap) intentExtras.get (“datos”);
pictureUri = intent.getData ();

if (imagen! = nulo) {
thumbnail.setImageBitmap (imagen);
makeToast (“¡Imagen configurada con éxito!”);
}
}

@TargetApi (Build.VERSION_CODES.HONEYCOMB)
public void setupActionBar () {
if (Build.VERSION.SDK_INT> = Build.VERSION_CODES.HONEYCOMB) {
android.app.ActionBar actionBar = getActionBar ();
actionBar.setDisplayHomeAsUpEnabled (verdadero);
}
}

makeToast privado (mensaje de cadena) {
Toast toast = Toast.makeText (getApplicationContext (), mensaje, Toast.LENGTH_SHORT);
tostada.show ();
}
}

A2A
Bueno, necesitas elaborar un poco.
¿Quieres crear una aplicación o simplemente usar una?

EDITAR:
¿Tiene que implementar una aplicación, como si tuviera una aplicación X y desea usar otra aplicación Y para compartir fotos?

Si es así, debe tener el código o la API de la aplicación Y que puede implementar en la aplicación X.
si quieres compartir las fotos en las redes sociales, entonces tienen API para lo mismo.

Ahora si quieres hacer tu propia aplicación que pueda compartir fotos.
Luego, necesita un servidor en línea como VPS de bigrock y cargar fotos allí, almacenar los nombres en DB, hacer una conexión DB a la aplicación y comenzar a compartir.
compartir también se puede hacer a través de bluetooth y wi-fi, android tiene funciones para lo mismo que se pueden implementar

Espero haber aclarado tu pregunta. Si no comenta

El uso de aplicaciones sociales como cuál aplicación reducirá el tamaño y la calidad de las imágenes.
Use aplicaciones como ShareIT, cable de datos de software, xender y superbeam (esta aplicación usa wifi, por lo que solo funciona en ciertos rangos)

Sí, diferentes aplicaciones usan diferentes métodos para compartir, las imágenes y videos como Facebook, Twitter, WhatsApp y Hike tienen la opción “Adjuntar” y “Compartir”.

Si está utilizando la aplicación móvil myly school, esta aplicación tiene una función especial para compartir en redes sociales que se utiliza para compartir en redes sociales, como compartir imágenes y videos de los eventos escolares y más. Use esta función que los padres y la escuela pueden compartir imágenes y videos en toda la red social.

Las diferentes aplicaciones usan diferentes métodos.
Las aplicaciones como WhatsApp y Hike ofrecen la opción ‘Adjuntar’ que le permite compartir fotos, videos, documentos, etc.
Espero que esto haya sido útil .. 🙂