分享《友盟》

实现流程1:官网申请key

https://www.umeng.com/ 友盟官网

配置
1.添加依赖
 //友盟统计
    implementation 'com.umeng.sdk:common:1.5.1'
    implementation 'com.umeng.sdk:analytics:7.5.0'
    //友盟社会化分享
    implementation 'com.umeng.sdk:share-core:6.9.1'
    implementation 'com.umeng.sdk:share-qq:6.9.1.1'
    implementation 'com.umeng.sdk:share-wechat:6.9.1'
    implementation 'com.umeng.sdk:share-sina:6.9.1'
    //分享面板
    implementation 'com.umeng.sdk:shareboard-widget:6.9.1'

如果无法正常集成,则需要在项目的builde.gradle中添加如下配置:

allprojects {
    repositories {
        mavenCentral()     
    }
}

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.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />
defaultConfig {
        manifestPlaceholders = [qqappid: "100424468"]
        applicationId "com.example.day15_ument"
        minSdkVersion 15
        targetSdkVersion 28
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }

public void onCreate() {
    super.onCreate();
    /**
     * 初始化common库
     * 参数1:上下文,必须的参数,不能为空
     * 参数2:友盟 app key,非必须参数,如果Manifest文件中已配置app key,该参数可以传空,则使用Manifest中配置的app key,否则该参数必须传入
     * 参数3:友盟 channel,非必须参数,如果Manifest文件中已配置channel,该参数可以传空,则使用Manifest中配置的channel,否则该参数必须传入,channel命名请详见channel渠道命名规范
     * 参数4:设备类型,必须参数,传参数为UMConfigure.DEVICE_TYPE_PHONE则表示手机;传参数为UMConfigure.DEVICE_TYPE_BOX则表示盒子;默认为手机
     * 参数5:Push推送业务的secret,需要集成Push功能时必须传入Push的secret,否则传空
     */
    UMConfigure.init(this,"你的应用在友盟上的APPKEY","umeng",UMConfigure.DEVICE_TYPE_PHONE,"");
    /**
     * 友盟相关平台配置。注意友盟官方新文档中没有这项配置,但是如果不配置会吊不起来相关平台的授权界面
     */
    PlatformConfig.setWeixin("你的微信APPID", "你的微信AppSecret");//微信APPID和AppSecret
    PlatformConfig.setQQZone("你的QQAPPID", "你的QQAppSecret");//QQAPPID和AppSecret
    PlatformConfig.setSinaWeibo("你的微博APPID", "你的微博APPSecret","微博的后台配置回调地址");//微博
}

 

public class MyApp extends Application {
    @Override
    public void onCreate() {
        super.onCreate();
        UMConfigure.init(this,"5d3536623fc195bfc00009ad","Umeng",UMConfigure.DEVICE_TYPE_PHONE,"");

        PlatformConfig.setWeixin("wxdc1e388c3822c80b", "3baf1193c85774b3fd9d18447d76cab0");
        PlatformConfig.setSinaWeibo("3921700954", "04b48b094faeb16683c32669824ebdad","http://sns.whalecloud.com");
        PlatformConfig.setYixin("yxc0614e80c9304c11b0391514d09f13bf");
        PlatformConfig.setQQZone("100424468", "c7394704798a158208a74ab60104f0ba");
        PlatformConfig.setTwitter("3aIN7fuF685MuZ7jtXkQxalyi", "MK6FEYG63eWcpDFgRYw4w9puJhzDl0tyuqWjZ3M7XJuuG7mMbO");
        PlatformConfig.setAlipay("2015111700822536");
        PlatformConfig.setLaiwang("laiwangd497e70d4", "d497e70d4c3e4efeab1381476bac4c5e");
        PlatformConfig.setPinterest("1439206");
        PlatformConfig.setKakao("e4f60e065048eb031e235c806b31c70f");
        PlatformConfig.setDing("dingoalmlnohc0wggfedpk");
        PlatformConfig.setVKontakte("5764965","5My6SNliAaLxEm3Lyd9J");
        PlatformConfig.setDropbox("oz8v5apet3arcdy","h7p2pjbzkkxt02a");
}
}

清单文件配置application


四.Activity代码:设置点击事件弹出分享面板
public void share(){
        //TODO 1:分享的内容
        final UMImage shareimage = new UMImage(this, R.mipmap.ic_launcher);//分享图标
  //      final UMWeb web = new UMWeb("http://172.21.79.121/hfs/demo.html"); //切记切记 这里分享的链接必须是http开头
    //    web.setTitle("demo");//标题
     //   web.setThumb(shareimage);  //缩略图
     //   web.setDescription("哈哈哈哈");//描述
        //TODO 2:弹出分享面板
        new ShareAction(this)
                .setDisplayList(SHARE_MEDIA.QQ, SHARE_MEDIA.QZONE, SHARE_MEDIA.WEIXIN,SHARE_MEDIA.WEIXIN_CIRCLE)
                .setShareboardclickCallback(new ShareBoardlistener() {
                    @Override
                    public void onclick(SnsPlatform snsPlatform, SHARE_MEDIA share_media) {
                        if (share_media == SHARE_MEDIA.QQ) {
                            //只分享图片
                            new ShareAction(MainActivity.this).setPlatform(SHARE_MEDIA.QQ)
                                    .withMedia(shareimage)
                                    .setCallback(umShareListener)
                                    .share();
                        } else if (share_media == SHARE_MEDIA.WEIXIN) {

                            new ShareAction(MainActivity.this).setPlatform(SHARE_MEDIA.WEIXIN)
                                    .withMedia(web)
                                    .setCallback(umShareListener)
                                    .share();
                        } else if (share_media == SHARE_MEDIA.QZONE) {
                            new ShareAction(MainActivity.this).setPlatform(SHARE_MEDIA.QZONE)
                                    .withMedia(web)
                                    .setCallback(umShareListener)
                                    .share();
                        } else if (share_media == SHARE_MEDIA.WEIXIN_CIRCLE) {
                            new ShareAction(MainActivity.this).setPlatform(SHARE_MEDIA.WEIXIN_CIRCLE)
                                    .withMedia(web)
                                    .setCallback(umShareListener)
                                    .share();
                        }
                    }
                }).open();
        //TODO 3:分享回调:成功与否
        umShareListener = new UMShareListener() {
            @Override
            public void onStart(SHARE_MEDIA platform) {
                // 分享开始的回调
            }

            @Override
            public void onResult(SHARE_MEDIA platform) {
                Toast.makeText(MainActivity.this, platform + " 分享成功啦", Toast.LENGTH_SHORT).show();
            }

            @Override
            public void onError(SHARE_MEDIA platform, Throwable t) {
                Toast.makeText(MainActivity.this,platform + " 分享失败啦", Toast.LENGTH_SHORT).show();
            }

            @Override
            public void onCancel(SHARE_MEDIA platform) {
                Toast.makeText(MainActivity.this,platform + " 分享取消了", Toast.LENGTH_SHORT).show();
            }
        };
    }
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值