友盟之分享集成(2018.3月最新版)

如果你还没有使用,那么我劝你还是换个别的吧,比如说Mob的ShareSDK。
讲真,友盟真的很鶸,问题一大堆,问题是你很清楚哪里有问题但还半天解决不了,因为官网上的文档内容没一点卵用。

先去官网注册,下载SDK(可以看截图日期,这是最新版的)


友盟下载分享skd.png

下面是下载的SDK文件结构

友盟分享sdk文件目录.png

1.push那个文件夹请忽略,因为我下载时候一块下载了推送。
2.common这个文件夹请注意!!!里面有个umeng-common-1.4.4.jar包,需要拖入项目libs(记得同步项目)的,否则会报错。
java.lang.NoClassDeFoundError:Failed resolution of:Lcom/umeng/commonsdk/statistics/common/DeviceConfig
3.share文件
main————为核心包,里面的JAR包和RES文件都复制到项目
platforms————为平台包,里面的JAR包和RES文件都复制到项目
shareboard————分享面板包,如果不使用,可以不拷贝。(前面这是官方说的话,扯蛋)但是umeng_social_shareboard.jar 必须要,不然报错。
shareview————分享编辑页,如果没有使用新浪精简版,豆瓣人人腾讯微博,可以不使用该文件夹(我下载的精简版,只有QQ,微信,微博,所以没用)
debug.keystore————这个要放在项目的
友盟分享签名文件导入项目.png

signingConfigs { debug { storeFile file('debug.keystore') storePassword "android" keyAlias "androiddebugkey" keyPassword "android" } }

然后,因为微信回掉比较特殊,先要如图创建一个回掉Activity


友盟分享微信回掉页面.png

注意,要放在wxapi这个指定目录下,名字WXEntryActivity,继承WXCallbackActivity
wxapi放在包下一级目录。

接着配置清单文件。权限什么的还是不要复制文档了,鶸,啥权限都配啊!
傻逼文档!复制文档过来请注意AuthActivity,AssistActivity包名。
具体路径可以看导入的QQJar包里面。

  <activity
        android:name="com.tencent.tauth.AuthActivity"
        android:launchMode="singleTask"
        android:noHistory="true" >

        <intent-filter>
            <action android:name="android.intent.action.VIEW" />
            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.BROWSABLE" />
            <data android:scheme="tencent1106727511注意:格式是tencent+APPID,前面tencent不能少" />
        </intent-filter>
    </activity>
    <activity
        android:name="com.tencent.connect.common.AssistActivity"
        android:screenOrientation="portrait"
        android:theme="@android:style/Theme.Translucent.NoTitleBar"
        android:configChanges="orientation|keyboardHidden|screenSize"/>

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

    <meta-data
        android:name="UMENG_APPKEY"
        android:value="填自己的"/>·

接着,我们需要在自己的MyApplication文件中配置

    //初始化友盟SDK
    UMShareAPI.get(this);//初始化sd
    //开启debug模式,方便定位错误,具体错误检查方式可以查看
    //http://dev.umeng.com/social/android/quick-integration的报错必看,正式发布,请关闭该模式
    Config.DEBUG = true;
    //微信
    PlatformConfig.setWeixin("wxa236a67eded7a34a", "1203eb81fdf192b301f813f53f29492f");
    //        //新浪微博(第三个参数为回调地址)
    //        PlatformConfig.setSinaWeibo("3111100954", "04b48b094faeb16683c32111124ebdad",
    //                "http://sns.whalecloud.com/sina2/callback");
    //应用宝开放平台  APP ID  APP KEY
    PlatformConfig.setQQZone("1106727511", "r7nD6XTBi98wRPYI");

QQ,微博回掉需要。写在分享那个页面。

 @Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    //QQ,微博回掉需要
    UMShareAPI.get(ShareActivity.this).onActivityResult(requestCode, resultCode, data);
}

最后,具体分享代码

   //----------------以下开始为具体分享代码----------------------
   //连接地址
    UMWeb web = new UMWeb(webUrl);
    web.setTitle(title);
    //描述
    web.setDescription(description);
    if (TextUtils.isEmpty(imageUrl)) {
        //本地缩略图
        web.setThumb(new UMImage(activity, imageID));
    } else {
        //网络缩略图
        web.setThumb(new UMImage(activity, imageUrl));
    }
new ShareAction(activity)
            .setPlatform(SHARE_MEDIA.QQ) //SHARE_MEDIA.等等
            .withMedia(web)
            .setCallback(new UMShareListener() {
                 @Override
                public void onStart(SHARE_MEDIA share_media) {}
                 @Override
                public void onResult(final SHARE_MEDIA share_media) {}
                 @Override
                public void onError(final SHARE_MEDIA share_media, final Throwable throwable) {}
                 @Override
                public void onCancel(final SHARE_MEDIA share_media) {}}).share();
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 儿子今年八岁,他是一个普通的不能再普通的孩子,有着自己专属的优点和缺点。 首先聊一下优点的培养,儿子最爱阅读,这都...
    盛凯峰阅读 469评论 0 0
  • 我的世界开始于嵩县县城一个叫二道街的地方。 这是两条东西方向的大街,由三条北高南低的小街连接着。北边地势高的一条是...
    远方的家园阅读 341评论 1 2
  • 作者 姜苏 欧月琴乘38路公交车到木渎翠坊桥那一站下车,然后步行一站路到梅雀路。也就是腊梅弄旁边的那条街。到了的...
    姜苏阅读 243评论 0 0
  • 心灵自由写作群第二期第十五篇作业 今年是本命年,想置个心喜的小物件,最好是玉器。随身有一个玉镯,很多年了,戴上去就...
    我心粲然阅读 489评论 1 1