2010-12-31 4 views
14

Existe-t-il un exemple de programmation de la fonctionnalité avec Phonegap Framework pour partager une URL vers un email, twitter et Facebook? Par exemple, dans Android cette fonctionnalité est dans 90% des applications. Dans Iphone, il est dans toutes les applications. Dans l'application de techcrunch pour Iphone vous pouvez le voir, lorsque vous ouvrez un article. Est-il possible de créer cela avec Phonegap aussi?Phonegap - Partager des fonctionnalités vers Email, Twitter et Facebook

+0

Avez-vous déjà comprendre cela, à la recherche d'une solution simple qui fonctionne pour ios/phonegap (cordova 1.7) – nate8684

Répondre

7

Vous pouvez le faire dans Android avec le code suivant pour un plugin. Je n'ai pas encore publié cela ailleurs, mais j'espère finalement l'ajouter comme un plugin dans le dépôt plugin phonegap pour 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 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); 
    } 
} 
4

Près de trois ans plus tard: Voici un plugin qui permet de partager sur Android et iOS avec la même API. https://github.com/EddyVerbruggen/SocialSharing-PhoneGap-Plugin

Il est également disponible sur PhoneGap Build!

Exemple

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