tamaño - Aplicación de Android: agregar un botón de "compartir" para compartir la aplicación en las redes sociales
subir video a instagram ya grabado (2)
Tengo una aplicación y me gustaría agregarle un botón para compartir. Una vez que se haga clic en el botón, me gustaría que abra la siguiente ventana:
Luego, el usuario elegirá dónde compartirlo y mostrará el siguiente mensaje predeterminado: "¡Encontré esta gran aplicación! Encuentre aquí: https://play.google.com/store/apps/details?id=com.ideashower.readitlater.pro "
¿Puedes decirme cómo hacerlo?
Solución 1: Lanzar ACTION_SEND Intención
Cuando inicie un intento de ENVÍO, normalmente debe envolverlo en un selector (a través de createChooser (Intent, CharSequence) ), que proporcionará la interfaz adecuada para que el usuario elija cómo enviar sus datos y le permita especificar un mensaje que indique qué estás haciendo.
Intent intent = new Intent();
intent.setAction(Intent.ACTION_SEND);
# change the type of data you need to share,
# for image use "image/*"
intent.setType("text/plain");
intent.putExtra(Intent.EXTRA_TEXT, URL_TO_SHARE);
startActivity(Intent.createChooser(intent, "Share"));
Solución 2: Utilice ShareActionProvider
Si solo está buscando agregar un botón Compartir en el menú de desbordamiento, también eche un vistazo a ShareActionProvider .
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.share, menu);
MenuItem item = menu.findItem(R.id.share_item);
actionProvider = (ShareActionProvider) item.getActionProvider();
// Create the share Intent
String shareText = URL_TO_SHARE;
Intent shareIntent = ShareCompat.IntentBuilder.from(this)
.setType("text/plain").setText(shareText).getIntent();
actionProvider.setShareIntent(shareIntent);
return true;
}
Espero que esto ayude. :)
Como se explica en los desarrolladores de Android en este enlace: http://developer.android.com/training/sharing/shareaction.html
Tienes que añadir este elemento de menú:
<item
android:id="@+id/menu_item_share"
android:showAsAction="ifRoom"
android:title="Share"
android:actionProviderClass=
"android.widget.ShareActionProvider" />
Luego agregue el siguiente código en la Actividad:
private ShareActionProvider mShareActionProvider;
...
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate menu resource file.
getMenuInflater().inflate(R.menu.share_menu, menu);
// Locate MenuItem with ShareActionProvider
MenuItem item = menu.findItem(R.id.menu_item_share);
// Fetch and store ShareActionProvider
mShareActionProvider = (ShareActionProvider) item.getActionProvider();
// Return true to display menu
return true;
}
// Call to update the share intent
private void setShareIntent(Intent shareIntent) {
if (mShareActionProvider != null) {
mShareActionProvider.setShareIntent(shareIntent);
}
}