前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >使用友盟分享和登陆以及使用时要注意的坑

使用友盟分享和登陆以及使用时要注意的坑

作者头像
AWeiLoveAndroid
发布2018-09-03 17:01:29
1.7K0
发布2018-09-03 17:01:29
举报

一、友盟分享的使用

二、友盟登陆的使用

三、友盟分享组件90%常见问题汇总

** 因为官网论坛每一条都要点个链接进去,好麻烦,我就集中在这篇博客里面了,方便查看。 **

(一) QQ\Qzone

1. 如何分享大图\纯图片

代码语言:javascript
复制
    不传递withText参数,分享类型即为纯图片类型

2. QQ分享成功却回调取消

代码语言:javascript
复制
1.AndroidManifest配置错误(图中箭头处应为你qq平台申请的AppId)
代码语言:javascript
复制
2.你是横屏应用,注意上图中AssistActivity的configChanges的配置,你的配置要与上图一致.
3.文字或图片分享到QQ说说有时回调取消有时回调成功,这是QQsdk的一个官方bug,暂未修复
4.如果配置正确,但是部分机型仍然回调取消,需要检查自己进行分享的activity,这个activity的启动模式不能是singleInstance**

3. 分享成功但回调提示分享取消

代码语言:javascript
复制
出现这个问题的原因在于QQ部分的回调没有正确配置,检查下面几点:

1. Android manifest xml正确配置
    <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="tencent100424468" />
        </intent-filter>
    </activity>
    <activity          
        android:name="com.tencent.connect.common.AssistActivity"
        android:screenOrientation="portrait"
        android:theme="@android:style/Theme.Translucent.NoTitleBar" />

同时注意<data android:scheme="tencent100424468" />这里的APPid需要替换成你代码里配置的APPid,    
还有PlatformConfig.setQQZone("100424468", "c7394704798a158208a74ab60104f0ba"); 
这两处的APPid应该是一致的,同时注意不要删掉tencent前缀

2. 注意实现onActivityresult方法
在分享所在的Activity(不能复写在fragment)里实现下面的方法onActivityResult();
    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
      super.onActivityResult(requestCode, resultCode, data);
      mShareAPI.onActivityResult(requestCode, resultCode, data);
    }

4. QQ分享内容只显示一条链接

代码语言:javascript
复制
QQ分享网页到我的电脑,或者在PC端查看分享内容只会显示一个链接,所有的分享内容和行为,请保证在手机端查看

5. QQ/Qzone分享成功但没有接收到消息

代码语言:javascript
复制
1.分享内容中包含敏感词汇,如红包等,切换其他分享文本测试
2.QZONE由于多次分享同一内容,可能会被过滤掉

6. QQ登录获取的unionID为空

代码语言:javascript
复制
Android端,通过UShare提供的QQ登录功能可以实现获取unionID,以便实现同开发者账号下多个APP间账号ID打通,
但必须先通过邮件向腾讯官方申请,获取权限,否则unionID无法获取,申请邮箱:connect@qq.com

7. QQ分享图片到好友失败或debug模式提示缺少权限

代码语言:javascript
复制
1.分享的是本地图片,没有加读写权限:
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
2.没有sd卡,qq不能分享本地图片
3.如果使用 targetSdkVersion 23或23以上,需要做6.0适配,手动获取WRITE_EXTERNAL_STORAGE权限,否则QQ不能进行图片分享

8. QQ登录提示该应用非官方正版应用,错误码100044

代码语言:javascript
复制
导出的apk签名、包名与之前腾讯开放平台上传的apk不匹配,更换签名文件重新打包,或在腾讯开放平台重新上传apk并通过审核后测试

9. QQ没有回调

代码语言:javascript
复制
如果QQ分享或授权没有回调,需要检查是否在进行分享操作的Activity中加入以下代码:
    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        UMShareAPI.get(this).onActivityResult(requestCode,resultCode,data);
    }

10. Tencent变量初始化失败

代码语言:javascript
复制
1.你可以开启debug模式根据提示修改AndroidMainfest
2.检查你的AndroidManifest,是否配置了QQ相关的Activity,你先要确定你用的是精简版还是完整版,
两个版本的配置有所不同,如果混用,也会报出该问题

精简版:
    <activity
        android:name="com.umeng.qq.tencent.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="tencent100424468" />
        </intent-filter>
    </activity>
    <activity
        android:name="com.umeng.qq.tencent.AssistActivity"
        android:screenOrientation="portrait"
        android:theme="@android:style/Theme.Translucent.NoTitleBar"
        android:configChanges="orientation|keyboardHidden|screenSize">
    </activity>
注意,其中tencent100424468中的100424468要替换成你qq的appid

完整版:
    <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="tencent100424468" />
        </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"/>
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017.06.21 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、友盟分享的使用
  • 二、友盟登陆的使用
  • 三、友盟分享组件90%常见问题汇总
    • (一) QQ\Qzone
      • 1. 如何分享大图\纯图片
        • 2. QQ分享成功却回调取消
          • 3. 分享成功但回调提示分享取消
            • 4. QQ分享内容只显示一条链接
              • 5. QQ/Qzone分享成功但没有接收到消息
                • 6. QQ登录获取的unionID为空
                  • 7. QQ分享图片到好友失败或debug模式提示缺少权限
                    • 8. QQ登录提示该应用非官方正版应用,错误码100044
                      • 9. QQ没有回调
                        • 10. Tencent变量初始化失败
                        领券
                        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档