with practices large example depurador card best twitter cordova

practices - Phonegap: comparte la funcionalidad de Email, Twitter y Facebook



twitter share url with image (3)

¿Hay algún ejemplo de cómo programar la funcionalidad con Phonegap Framework para compartir una URL con el correo electrónico, Twitter y Facebook? Por ejemplo en Android esta funcionalidad está en el 90% de las aplicaciones. En Iphone, está en cualquier aplicación. En la aplicación de Techcrunch para Iphone puedes verlo, cuando abres un artículo. ¿Es posible crear esto con Phonegap también?


Casi tres años después: Aquí hay un complemento que permite compartir en Android e iOS con la misma API. https://github.com/EddyVerbruggen/SocialSharing-PhoneGap-Plugin

¡Está disponible en PhoneGap Build también!

Ejemplo

window.plugins.socialsharing.share(''Google is awesome, WOOT!'', ''Google facts'', ''https://www.google.com/images/srpr/logo11w.png'', ''http://www.google.com'');



Puedes hacer esto en Android con el siguiente código para un complemento. No he publicado esto en ningún otro lugar todavía, pero al final espero agregarlo como un complemento en el repositorio de complementos de Phonegap para Android.

JAVASCRIPT:

var Share = function() {}; Share.prototype.show = function(content) { return PhoneGap.exec( function(args) { console.log("phonegap share plugin - success!") }, function(args) { console.log("phonegap share plugin - failed") }, ''Share'', '''', content); }; PhoneGap.addConstructor(function() { PhoneGap.addPlugin(''share'', new Share()); PluginManager.addService("Share","com.COMPANYNAME(CHANGEME).android.plugins.Share"); });

JAVA EN ANDROID:

package com.COMPANYNAME(CHANGEME).android.plugins; import org.json.JSONArray; import org.json.JSONException; import android.content.Intent; import com.phonegap.api.Plugin; import com.phonegap.api.PluginResult; public class Share extends Plugin { private String callback; @Override public PluginResult execute(String action, JSONArray args, String callbackId) { PluginResult mPlugin = null; try { mPlugin = activateSharing(args.getString(0), args.getString(1)); } catch (JSONException e) { Log.e("JSON Exception", e.toString()); } mPlugin.setKeepCallback(true); this.callback = callbackId; return mPlugin; } private PluginResult activateSharing(String title, String body) { final Intent shareIntent = new Intent( android.content.Intent.ACTION_SEND); shareIntent.setType("text/plain"); shareIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, title); shareIntent.putExtra(android.content.Intent.EXTRA_TEXT, body); shareIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); ctx.startActivity(Intent.createChooser(shareIntent, "Share")); return new PluginResult(PluginResult.Status.OK); } }