2010-12-31 9 views
14

Phonegap Frameworkで電子メール、Twitter、FacebookへのURLを共有する方法をプログラムする方法はありますか? Androidの例では、この機能はアプリの90%にあります。 Iphoneでは、どのアプリにもあります。 Iphoneのtechcrunchのアプリでは、あなたが記事を開いたときにそれを見ることができます。 Phonegapでこれを作成することも可能ですか?Phonegap - 電子メール、Twitter、Facebookへの機能共有

+0

あなたはこのことを理解しました、のために働くの単純な解決策を探してios/phonegap(コードバー1.7) – nate8684

答えて

7

これはAndroidで次のプラグインのコードで行うことができます。まだどこにでも公開していませんが、最終的にAndroid用のphonegapプラグインリポジトリにプラグインとして追加したいと考えています。

JAVASCRIPT:アンドロイド、IN

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:

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

ほぼ3年後:ここで同じAPIでAndroidとiOS上で共有できますプラグインです。 https://github.com/EddyVerbruggen/SocialSharing-PhoneGap-Plugin

これはPhoneGapでも利用できます。

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