友盟分享

1、获取友盟Appkey

2、集成(微信举例)

(1)下载您想要集成的sdk,将jar包拷贝到libs目录下,将res下的资源文件拷贝到您的项目中,可以视个人需要做一些删减。

(2)在manifest中添加所需权限,增加所需的activity声明并设置UMENG_APPKEY。

(3)设置各平台配置,放在程序入口,例如 :

PlatformConfig.setWeixin("wx967daebe835fbeac", "5bb696d9ccd75a38c8a0bfe0675559b3"),在括号中添加你在微信开放平台注册应用的key 和secret。

(4)在AndroidManifest.xml中注册下面的回调Activity:

<activity android:name=".wxapi.WXEntryActivity" android:theme="@android:style/Theme.Translucent.NoTitleBar" android:configChanges="keyboardHidden|orientation|screenSize" android:exported="true" android:screenOrientation="portrait" />

   将SDK包中platforms/weixin目录下的wxapi文件夹拷贝到您AndroidMainFest.xml文件application标签里配置的包目录下,然后修                     改WXEntryActivity的完整路径。

 (5)分享方式,默认 shareboard

final SHARE_MEDIA[] displaylist = new SHARE_MEDIA[]
        {SHARE_MEDIA.WEIXIN, SHARE_MEDIA.WEIXIN_CIRCLE, SHARE_MEDIA.SINA};
new ShareAction(MainActivity.this).setDisplayList(displaylist)
        .setListenerList(umShareListener, umShareListener)
        .setShareboardclickCallback(shareBoardlistener)
        .open();
选取分享的平台,设定分享回调接口和内容,并执行share方法。 回调接口如下:

private UMShareListener umShareListener = new UMShareListener() {
    @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();
    }
};
修改默认shareboard中的分享平台,只需要传入自己需要的平台参数,放入shareaction中,并执行open方法即可。 shareboard点击响应回调方法如下:

UMImage image = new UMImage(MainActivity.this, "http://cdn.duitang.com/uploads/item/201302/08/20130208100806_5QWNi.thumb.600_0.jpeg");

private ShareBoardlistener shareBoardlistener = new ShareBoardlistener() {

    @Override
    public void onclick(SnsPlatform snsPlatform, SHARE_MEDIA share_media) {

        new ShareAction(MainActivity.this).setPlatform(share_media).setCallback(umShareListener)
                .withText("share")
                .withTitle("share")
                .withTargetUrl("http://www.baidu.com")
                .withMedia(image)
                .share();
    }
};
        分享方式,自定义分享样式,在自己的监听事件中实现:

 new ShareAction(this).setPlatform(SHARE_MEDIA.SINA).setCallback(umShareListener).withText("hello umeng video").withTargetUrl("http://www.baidu.com").withMedia(image).share();

(6)重写:

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    /** attention to this below ,must add this**/
    UMShareAPI.get(this).onActivityResult(requestCode, resultCode, data);
}

这里我只描述了大概的实现过程,有应用到的同学还是应该详读一下友盟的官方文档,提醒大家要注意jar包冲突的问题,集成过程中导入的jar包不要与程序本身原来的包重复,如果重复就删掉原来的保留友盟提供的,用不到的jar和资源文件可以删掉,还有就是我在分享的时候loading图片不居中,希望有了解的同学指点。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值