Android 友盟分享躺过的几个坑,大坑,坑爹啊

 

前言:公司上线了一个项目,做Android 客户端集成友盟分享,在做得过程中,遇到了下面3个问题,希望其他小伙伴注意。

        ( 友盟在线客服 QQ : 800083942  ) 

 

错误1

1、错误描述

    我是照着友盟的集成文档一步一步的集成的,做完后,发现qq空间分享不成功,总是出现失败,下面是失败截图

    

2、错误原因:分享链接错误

   因为我们的应用还没有上线,所以分享的链接是本地搭建的服务器地址,比如:"http://192.168.1.132:8001/app“

   就是因为这个分享链接的问题,导致我分享到qq空间出现异常。如果把这个链接换成: ”http://www.baidu.com“,分享就成功了。

   总结:分享链接最好用带域名的链接,不要使用带ip地址的链接

 

错误2:错误的集成qq appId 

    1、错误的集成

    

  

2、正确的集成

    

 

二、关于分享成功回调的问题

    1、关于 WXEntryActivity

        1.1:路径的问题   

                1.1.1 :获取包名

                       这里请注意包名是app的包名,不是代码的包名,也不是AndroidManifest.xml 里面的package

                        

                       Android studio正确获取的包名的方法:

                       

                    

         1.1.2  设置WXEntryActivity路径 ,假设 1.1.1 中的路径是com.sp.szry 

                  在Android studio 中创建一个包名为  com.sp.szry.wxapi

                   

               

          1.1.3  在AndroidManifest.xml 里面配置 WXEntryActivity 路径

                   

               

   1.2:代码的问题

public class WXEntryActivity extends WXCallbackActivity  {

    @Override
    public void onCreate(Bundle savedInstanceState, PersistableBundle persistentState) {
        super.onCreate(savedInstanceState, persistentState);
    }

    @Override
    public void onReq(BaseReq req) {
        super.onReq(req);
    }

    //微信回调
    @Override
    public void onResp(BaseResp resp) {   //分享之后的回调
        switch ( resp.errCode  ) {
            case  BaseResp.ErrCode.ERR_OK : //正确返回
                //Toast.makeText(this, "微信分享成功回调了111", Toast.LENGTH_SHORT).show();
                break;
        }
        super.onResp(resp);
    }
}

 

 

 

 

2、关于分享回调

//分享回调
ShareCallBackLister shareCallBackLister ;

 

  if ( shareCallBackLister == null ){
            shareCallBackLister = new ShareCallBackLister();
     }

 //打开分享面板
 mController.openShare(ShareWebActivity.this, shareCallBackLister ) ;

 

  /**
     * 友盟分享回调
     */
    class ShareCallBackLister implements SocializeListeners.SnsPostListener {

        @Override
        public void onStart() {
        }

        @Override
        public void onComplete(SHARE_MEDIA share_media, int eCode , SocializeEntity socializeEntity) {
            if (eCode == 200) {  //分享成功

                if (SHARE_MEDIA.SINA.toString().equals(share_media.toString())  ) {   //新浪微博

                }else if ( SHARE_MEDIA.WEIXIN.toString().equals(share_media.toString()) ){  //微信

                }else if ( SHARE_MEDIA.WEIXIN_CIRCLE.toString().equals(share_media.toString()) ){ //微信朋友圈

                }else if ( SHARE_MEDIA.QQ.toString().equals( share_media.toString()) || SHARE_MEDIA.QZONE.toString().equals( share_media.toString() )){   //qq

                }
            } else {
                String eMsg = "";
                if (eCode == -101){
                    eMsg = "没有授权";
                }
                //分享失败
            }
        }
    }

 

三:新浪微博分享的问题

      错误描述:在分享中,我设置了分享的内容,分享的链接地址,分享的图片。分享完成后发现分享的http地址打不开,于是找到了一下解决方法

      分享原代码:(错误的 )

        //新浪微博
        SinaShareContent sina = new SinaShareContent();

        //分享标题
        sina.setTitle( shareTitle );
        //分享内容
        sina.setShareContent( shareText  );
        //分享链接
        sina.setTargetUrl( shareUrl );

        //分享图片
        if ( shareImageUrl.length() > 3 ){
            sina.setShareImage(new UMImage(activity, shareImageUrl));
        }else {
            sina.setShareImage(new UMImage(activity, R.drawable.logo144));
        }

        ShareWebActivity.mController.setShareMedia( sina );

 

   正确的代码 :(正确的  ) (注意:分享的链接 要 拼接到 分享内容的后面 , 否则分享链接失效 )

        //新浪微博
        SinaShareContent sina = new SinaShareContent();

        //分享标题
        sina.setTitle( shareTitle );
        //分享内容
        sina.setShareContent( shareText  + shareUrl );

        //分享图片
        if ( shareImageUrl.length() > 3 ){
            sina.setShareImage(new UMImage(activity, shareImageUrl));
        }else {
            sina.setShareImage(new UMImage(activity, R.drawable.logo144));
        }

        ShareWebActivity.mController.setShareMedia( sina );

 

    

 

 

     

 

时间: 2024-10-30 09:10:52

Android 友盟分享躺过的几个坑,大坑,坑爹啊的相关文章

android友盟分享QQ和QQ空间时出现内存泄露

问题描述 android友盟分享QQ和QQ空间时出现内存泄露 05-12 19:22:46.570: E/StrictMode(30304): A resource was acquired at attached stack trace but never released. See java.io.Closeable for information on avoiding resource leaks. 05-12 19:22:46.570: E/StrictMode(30304): jav

Android关于友盟分享到新浪微博返回5004错误的求解

问题描述 Android关于友盟分享到新浪微博返回5004错误的求解 如题,什么情况,没有绑定appid到友盟后台的,直接使用友盟默认的, 解决方案 Android新浪微博分享Android分享到新浪微博Android分享到新浪微博 解决方案二: 你要对应微博等SDK,查看5004对应的错误码具体是什么错误信息,这样你才好分析修改 解决方案三: http://dev.umeng.com/social/android/detail-share#8 这个地址,按照说明打开log,然后看具体是什么错误

valid-IOS 友盟分享遇到的i386问题

问题描述 IOS 友盟分享遇到的i386问题 No architectures to compile for (ONLY_ACTIVE_ARCH=YES, active arch=x86_64, VALID_ARCHS=i386). 求 大神解答 解决方案 这个是由于你的库不支持i386处理器,即模拟器

android-怎么去掉去掉友盟分享里面不需要的平台

问题描述 怎么去掉去掉友盟分享里面不需要的平台 怎么去掉去掉友盟分享里面不需要的平台怎么去掉去掉友盟分享里面不需要的平台 解决方案 http://blog.csdn.net/lxk_1993/article/details/50439698

Android 第三方登录、分享(ShareSDK、友盟)_Android

为下边的项目做准备,写一个第三方登录.分享的demo.分别使用sharesdk和友盟来实现. 先说一下我对两者的使用上的感觉,个人感觉sharesdk比友盟更好一点,好在哪里呢?好在人工服务上.在集成的过程中遇到了各种问题,但是sharesdk的人工服务做的很好,能给答疑解惑,提供解决问题的方法! 接下来上代码(本文使用android studio开发,sharesdk版本v2.7.7,友盟版本v6.0.0): 一.使用sharesdk(sharesdk版本v2.7.7)来集成: 1.要去官网:

ios-友盟分享成功后没调用didFinishGetUMSocialDataInViewController

问题描述 友盟分享成功后没调用didFinishGetUMSocialDataInViewController 如题 我用ios 友盟都能分享了 但想在分享成功后执行一些加分操作 但是分享成功后 为什么没有回调这个函数 真心很急 谢谢

Android 第三方登录、分享(ShareSDK、友盟)

为下边的项目做准备,写一个第三方登录.分享的demo.分别使用sharesdk和友盟来实现. 先说一下我对两者的使用上的感觉,个人感觉sharesdk比友盟更好一点,好在哪里呢?好在人工服务上.在集成的过程中遇到了各种问题,但是sharesdk的人工服务做的很好,能给答疑解惑,提供解决问题的方法! 接下来上代码(本文使用android studio开发,sharesdk版本v2.7.7,友盟版本v6.0.0): 一.使用sharesdk(sharesdk版本v2.7.7)来集成: 1.要去官网:

Android:友盟的自动更新组件

又好又专业的服务能帮开发者省很多时间.一开始做项目也准备自己来统计数据.自己做自动更新,随着使用友盟服务的时间增加,渐渐放弃了这种想法,转而研究如何更充分的使用,这里分享一下使用自动更新组件的心得. 一.缺少res导致不能升级的问题 由于缺少了解,官网文档也没用提醒,仅仅拷贝了SDK的jar到工程里,一直不知道到底升级功能是否已经实现,关键是也不报错!今天又拿出来测试了一下,监听了一下UmengUpdateListener接口,发现客户端已经检测到了更新,但是没用弹出更新的对话框,然后就注意到了

【Android】友盟的自动更新组件

前言 又好又专业的服务能帮开发者省很多时间.一开始做项目也准备自己来统计数据.自己做自动更新,随着使用友盟服务的时间增加,渐渐放弃了这种想法,转而研究如何更充分的使用,这里分享一下使用自动更新组件的心得.   声明 欢迎转载,但请保留文章原始出处:)  博客园:http://www.cnblogs.com 农民伯伯: http://over140.cnblogs.com  正文 一.缺少res导致不能升级的问题 由于缺少了解,官网文档也没用提醒,仅仅拷贝了SDK的jar到工程里,一直不知道到底升