工作生活

友盟

2019-07-03  本文已影响0人  玖玖君

友盟开发者文档

https://developer.umeng.com/docs/66632/detail/66639

分享枚举类型

QQ         |    SHARE_MEDIA.QQ
            
Qzone      |    SHARE_MEDIA.QZONE

微信还有    |    SHARE_MEDIA.WEIXIN

微信朋友圈   |     SHARE_MEDIA.WEIXIN_CIRCLE

微信收藏     |    SHARE_MEDIA.WEIXIN_FAVORITE

腾讯微博     |    SHARE_MEDIA.TENCENT

新浪        |    SHARE_MEDIA.SINA

人人         |    SHARE_MEDIA.RENREN

短信         |    SHARE_MEDIA.SMS

电子邮件      |    SHARE_MEDIA.EMAIL

豆瓣          |    SHARE_MEDIA.DOUBAN

Facebook     |    SHARE_MEDIA.FACEBOOK

Facebook     |    Message SHARE_MEDIA.FACEBOOK_MESSAGER

Twitter      |    SHARE_MEDIA.TWITTER

易信         |    SHARE_MEDIA.YIXIN

易信朋友圈    |    SHARE_MEDIA.YIXIN_CIRCLE

Instagram    |    SHARE_MEDIA.INSTAGRAM

Pinterest    |    SHARE_MEDIA.PINTEREST

印象笔记     |    SHARE_MEDIA.EVERNOTE
 
Pocket      |    SHARE_MEDIA.POCKET

领英         |    SHARE_MEDIA.LINKEDIN
 
有道云笔记   |SHARE_MEDIA.YNOTE

WhatsApp    |SHARE_MEDIA.WHATSAPP

LINE        |    SHARE_MEDIA.LINE

flickr      |SHARE_MEDIA.FLICKR

tumblr      |    SHARE_MEDIA.TUMBLR

支付宝       |    SHARE_MEDIA.ALIPAY

KAKAO       |    SHARE_MEDIA.KAKAO

DropBox     |SHARE_MEDIA.DROPBOX

VKontake    |    SHARE_MEDIA.VKONTAKTE

钉钉        |    SHARE_MEDIA.DINGTALK

谷歌+       |    SHARE_MEDIA.GOOGLEPLUS

更多 SHARE_MEDIA.MORE

App分享

必须集成友盟才会生效

1·jar包

umeng-analytics-8.1.0.jar
umeng-share-core-6.9.6.jar
umeng-shareboard-widget-6.9.6.jar
umeng-share-sina-simplify-6.9.6.jar
umeng-sharetool-6.9.6.jar
umeng-common-2.1.0.jar
umeng-share-QQ-simplify-6.9.6.jar
umeng-share-wechat-simplify-6.9.6.jar

2·权限

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

分享方法

    //带面板
    private void shareBorad() {
        UMImage image = new UMImage(this, "https://ws1.sinaimg.cn/large/0065oQSqly1fw8wzdua6rj30sg0yc7gp.jpg");
        image.compressStyle = UMImage.CompressStyle.SCALE;//大小压缩,默认为大小压缩,适合普通很大的图
        new ShareAction(MainActivity.this)
                .withText("焦凤航的分享")//文本
                .withMedia(image)//分享的图片
                .setDisplayList(SHARE_MEDIA.SINA, SHARE_MEDIA.QQ, SHARE_MEDIA.WEIXIN)//三方列表
                .setCallback(umShareListener)//分享回调
                .open();
    }
//不带面板
      new ShareAction(MainActivity.this)
        .setPlatform(SHARE_MEDIA.QQ)//传入平台
        .withText("hello")//分享内容
        .setCallback(umShareListener)//回调监听器
        .share();
    //纯文本分享
      new ShareAction(ShareActivity.this).withText("hello").withMedia(image).share();
/*图片
在使用ShareAction的时候,调用withMedia可以设置一个UMImage(图片分享),UMImage的构建有如下几种形式*/

        UMImage image = new UMImage(ShareActivity.this, "imageurl");//网络图片
        UMImage image = new UMImage(ShareActivity.this, file);//本地文件
        UMImage image = new UMImage(ShareActivity.this, R.drawable.xxx);//资源文  件
        UMImage image = new UMImage(ShareActivity.this, bitmap);//bitmap文件
        UMImage image = new UMImage(ShareActivity.this, byte[]);//字节流

分享回调

    private UMShareListener umShareListener = new UMShareListener() {
        @Override
        public void onStart(SHARE_MEDIA share_media) {
            Log.d("tag", "onStart: " + share_media);
        }

        @Override
        public void onResult(SHARE_MEDIA share_media) {
            Log.d("tag", "onResult: " + share_media);
        }

        @Override
        public void onError(SHARE_MEDIA share_media, Throwable throwable) {
            Log.d("tag", "onError: " + throwable.toString());
        }

        @Override
        public void onCancel(SHARE_MEDIA share_media) {
            Log.d("tag", "onCancel: " + share_media);
        }
    };

登录方法

 public void login() {
        UMShareAPI umShareAPI = UMShareAPI.get(this);
        //media,三方平台
        //authListener,登录回调
        umShareAPI.getPlatformInfo(MainActivity.this, SHARE_MEDIA.QQ, authListener);
    }

登录方法接口回调

    UMAuthListener authListener = new UMAuthListener() {
        /**
         * @desc 授权开始的回调
         * @param platform 平台名称
         */
        @Override
        public void onStart(SHARE_MEDIA platform) {

        }

        /**
         * @desc 授权成功的回调
         * @param platform 平台名称
         * @param action 行为序号,开发者用不上
         * @param data 用户资料返回
         */
        @Override
        public void onComplete(SHARE_MEDIA platform, int action, Map<String, String> data) {

            Toast.makeText(MainActivity.this, "成功了", Toast.LENGTH_LONG).show();

        }

        /**
         * @desc 授权失败的回调
         * @param platform 平台名称
         * @param action 行为序号,开发者用不上
         * @param t 错误原因
         */
        @Override
        public void onError(SHARE_MEDIA platform, int action, Throwable t) {

            Toast.makeText(MainActivity.this, "失败:" + t.getMessage(), Toast.LENGTH_LONG).show();
        }

        /**
         * @desc 授权取消的回调
         * @param platform 平台名称
         * @param action 行为序号,开发者用不上
         */
        @Override
        public void onCancel(SHARE_MEDIA platform, int action) {
            Toast.makeText(MainActivity.this, "取消了", Toast.LENGTH_LONG).show();
        }
    };
上一篇下一篇

猜你喜欢

热点阅读