Phonegap - делиться функциональностью с электронной почтой, Twitter и Facebook - PullRequest
14 голосов
/ 31 декабря 2010

Есть ли пример, как запрограммировать функциональность с помощью Phonegap Framework для предоставления URL-адреса электронной почте, Twitter и Facebook? Например, в Android эта функциональность присутствует в 90% приложений. В Iphone это есть в любых приложениях. В приложении techcrunch для Iphone вы можете увидеть его, когда откроете статью. Возможно ли создать это с помощью Phonegap?

Ответы [ 3 ]

7 голосов
/ 12 марта 2011

Вы можете сделать это в Android с помощью следующего кода для плагина. Я еще нигде не публиковал это, но в конечном итоге я надеюсь добавить его в качестве плагина в хранилище плагинов для 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 IN 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 голосов
/ 16 октября 2013

Почти три года спустя: вот плагин, который позволяет делиться на Android и iOS с одним и тем же API.https://github.com/EddyVerbruggen/SocialSharing-PhoneGap-Plugin

Также доступно в PhoneGap Build!

Пример

window.plugins.socialsharing.share('Google is awesome, WOOT!', 'Google facts', 'https://www.google.com/images/srpr/logo11w.png', 'http://www.google.com');
0 голосов
/ 29 октября 2013

Авторизуйтесь на Facebook и отправляйте сообщения, входите в Twitter и публикуйте статус с помощью плагина appInBrowser:

https://github.com/raulduran/facebook-twitter-cordova.git

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...