umeng3社会化分享SDK技术评测-2第三方登陆

前言:看了折磨多的Umeng的文档和demo,还是不禁想吐槽一下,敢不敢把文档的流程和demo写好点。文档的流程很粗,只有大概的轮廓,步骤不详细。demo,好吧,基本的不封装一下就算了,分享信息到处都是,控制器的获取还和文档不一致。虽然看到的demo是这么的糟,所幸提供的功能还是集成可以用的。(吐槽4.3)

(注:以下开发者账号简称账号)

一、新浪微博集成过程

新浪微博开放平台:http://open.weibo.com

吐槽:更着官方文档走走看。不走不知道,一走吓一跳。

1.准备工作

a.umeng账号(创建应用),新浪账号(创建应用)

b.配置基本信息

   umeng要社交平台配置【笔者猜测:由于在客户端未进行对新浪id和key的配置,此处的配置应该是umeng的开发者后台响应客户端的请求后用此处的配置去请求新浪,再将结果放在客户端呈现】

新浪配置

此处一定要配置四个信息: Android签名 安全域名 授权|取消授权回调页 测试帐号

Android签名和安全域名一定要弄,笔者测试过,不填就链不到授权界面,估计是用来验证umeng传过来的应用信息。授权|取消授权回调页就不用说了,估计是起调的页面。至于测试帐号,是开发时候用的,应用通过审核上线估计是用不上的


2.xml配置

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.abfdemo"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="11"
        android:targetSdkVersion="19" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/icon"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name="com.abfdemo.umeng.ShareActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity android:name="com.abfdemo.umeng_share.ThirdLoginActivity"/>
    <!-- ************************umeng start***************************************** --> 
    <!-- ###################添加UmengAppkey###################### -->
    <meta-data
        android:name="UMENG_APPKEY"
        android:value="5698ab1be0f55a2193000fe6" >
    </meta-data>
    </application>

    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.READ_LOGS" />
    <uses-permission android:name="android.permission.CALL_PHONE" />
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
    <uses-permission android:name="android.permission.GET_TASKS" />
    <uses-permission android:name="android.permission.SET_DEBUG_APP" />
    <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
    <uses-permission android:name="android.permission.GET_ACCOUNTS" />
    <uses-permission android:name="android.permission.USE_CREDENTIALS" />
    <uses-permission android:name="android.permission.MANAGE_ACCOUNTS" />
 <!-- ************************umeng end***************************************** --> 
</manifest>


 3.核心

a.添加成员变量 mController 

b.授权 | 取消授权接口   mController.doOauthVerify(...) | deleteOauth(....) 【一般是按钮事件处触发】

c.获取accesstoken及用户资料  mController.getPlatformInfo(....)【后续的相关操作】 

更多详细,请参考demo

注:新浪需要配置sina SSO(免登录)开关和 onActivityResult()中的SSO授权回调【详见代码】;注销登录需要先登录【一般是当用户注销了本应用的id时,才会调用该方法注销新浪的sso】

4.demo下载:http://download.csdn.net/detail/zinjin_woxin/9406345

二、QQ集成过程

腾讯开放平台:http://open.qq.com/

1.准备工作

QQ开发者,并创建应用(和新浪微博类似)。添加测试账号:

2.新增xml配置

    <!-- ############ QQ登陆start-->
    <!-- ############ QQ空间和QQ SSO授权的Activity注册 ############ -->
        <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="tencent你的QQ互联APPID" /> 
            </intent-filter>
        </activity>
        <activity android:name="com.tencent.connect.common.AssistActivity"
            android:theme="@android:style/Theme.Translucent.NoTitleBar"
            android:screenOrientation="portrait">
        </activity>
            <!-- ############ QQ登陆end-->
3.核心【基本同新浪】

QQ平台的配置:【详见代码】

UMQQSsoHandler qqSsoHandler = new UMQQSsoHandler(getActivity(), Constants.APP_ID_QQ,Constants.APP_KEY_QQ);
qqSsoHandler.addToSocialSDK();
4.demo下载

三、QQ空间集成过程

几乎和QQ一样,唯一不同的地方在于平台配置

QQ空间的平台配置:

   QZoneSsoHandler qZoneSsoHandler = new QZoneSsoHandler(this,Constants.APP_ID_QQ,Constants.APP_KEY_QQ);
   qZoneSsoHandler.addToSocialSDK();
基本上完成QQ登陆,只需修改这一处即可。【详见代码】

demo下载
四、微信集成过程

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值