跳转到主要内容
PRODUCT DOCUMENTS

快速找到所需文档,高效完成接入与排障

浏览产品文档与友盟 Skill,展开目录并阅读正文。

【SM10000】Twitter分享模块 v6.9.4版本集成说明

【SM10000】Twitter分享模块 v6.9.4版本集成说明

友盟分享SDK Twitter分享模块从 v6.9.4 版本开始,基于Twitter官方SDK Twitter-kit封装。 集成方法和 v6.9.3 以及之前的版本不同。

  • 注意:本说明未包含友盟分享SDK核心库集成说明,请确保您已经正确集成分享SDK的基础库。U-Share集成文档

功能

Twitter分享模块v6.9.4版本不支持获取用户信息功能,针对Twitter平台调用UMShareAPI.get(this).getPlatformInfo接口将无效,传入的UMAuthListener监听器也不会被SDK 回调。

  • 注意:v6.9.4版本Twitter分享模块在执行分享接口前需要客户自己保证已经授权成功(可通过调用UMShareAPI.get(this).isAuthorize接口判断当前是否已经授权成功)。如尚未授权,需要客户端主动调用授权接口。

33

授权接口在成功后的UMAuthListener回调函数onComplete中传入的最后一个Map类型参数中会包含Twitter授权账号的用户id和用户名信息,对应的key分别为"user_id"和"user_name"。

库依赖

首先需要引入Twitter官方SDK Twitter-kit依赖,在宿主App build.gradle脚本配置中加入Twitter-kit相关依赖。

compile 'com.twitter.sdk.android:twitter-core:3.1.1'
compile 'com.twitter.sdk.android:tweet-composer:3.1.1'

11

然后加入友盟Twitter分享模块的本地jar包依赖,在宿主App build.gradle脚本配置中加入如下内容。

  • 注意:请确保完成此步骤前已经将Twitter分享模块对应的jar包"umeng-share-twitter-6.9.4.jar"拷贝到工程libs目录下。

compile files('libs/umeng-share-twitter-6.9.4.jar')

清单配置及对应源码增添

首先不再需要之前 v6.9.3 版本中要求配置的如下Activity。如果之前项目有配置,请删除它。

<activity
        android:name="com.umeng.socialize.handler.TwitterWebActivity"
        android:configChanges=
        "keyboard|keyboardHidden|screenLayout|screenSize|orientation"
        android:theme="@android:style/Theme.Translucent.NoTitleBar"
        android:label="@string/app_name" />

然后在清单文件中加入相应Receiver配置,用于接收Twitter App执行分享动作后的结果通知。

  • 注意:需要在宿主App中加入Receiver配置中需要的Receiver文件,本例中此文件名为TwitterShareReceiver.java,包名路径为com.umeng.soexample.twitterapi。TwitterShareReceiver类需要从"com.umeng.socialize.handler.UMTwitterReceiver"类继承即可,可保持内容为空。

<!--twitter分享回调结果 -->
        <receiver
            android:name=".twitterapi.TwitterShareReceiver"
            android:exported="false">
            <intent-filter>
                <action android:name="com.twitter.sdk.android.tweetcomposer.UPLOAD_SUCCESS"/>
                <action android:name="com.twitter.sdk.android.tweetcomposer.UPLOAD_FAILURE"/>
                <action android:name="com.twitter.sdk.android.tweetcomposer.TWEET_COMPOSE_CANCEL"/>
            </intent-filter>
        </receiver>

22

集成过程中遇到问题可参考官方Demo样例工程:https://github.com/umeng/MultiFunctionAndroidDemo