友盟第三方qq登陆

来源:互联网 发布:免费u盘数据恢复 编辑:程序博客网 时间:2024/05/22 00:33

1、登陆友盟账号

2、产品--u_share—sdk及文档--sdk下载

3、将下载好的sdk解压

4、使用集成工具umeng_integrate_tool.jar,集成自己需要的umeng_integratetool_result文件夹

5、将umeng_integratetool_result文件夹下所有的数据粘贴到自己工程对应的位置

6、配置清单文件

<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"/>
meta-data
//umeng平台上的appkey(需要在umeng统计模块中去创建新的应用获取)    android:name="UMENG_APPKEY"    android:value="561cae6ae0f55abd990035bf" ></meta-data>

<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.READ_EXTERNAL_STORAGE"/><uses-permission android:name="android.permission.INTERNET" /><uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /><uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /><uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />
7、配置build—gradle
buildTypes {    release {        minifyEnabled false        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'    }}
signingConfigs {
debug {        
storeFile file('debug.keystore')        
storePassword "android"        
keyAlias "androiddebugkey"        
keyPassword "android"    
}
}
8、自定义Application
public class MyApplication extends Application{    @Override    public void onCreate() {        super.onCreate();
//初始化SDK        Config.DEBUG=true;        UMShareAPI.get(this);    }    {        /*可以写多个要分享的平台
(我这里写的是腾讯开放平台上的《也是创建一个新的应用,获取APPID和APPKEY》)*/        PlatformConfig.setQQZone("100424468", "c7394704798a158208a74ab60104f0ba");    }}9、Activity类 
public class MainActivity extends AppCompatActivity implements View.OnClickListener {    private Button Login_qq;    private Button shared_qq;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        initView();        UMShareConfig config = new UMShareConfig();        config.isNeedAuthOnGetUserInfo(true);//登陆        config.isOpenShareEditActivity(true);//分享        UMShareAPI.get(this).setShareConfig(config);    }    private void initView() {        Login_qq = (Button) findViewById(R.id.Login_qq);        shared_qq = (Button) findViewById(R.id.shared_qq);        Login_qq.setOnClickListener(this);        shared_qq.setOnClickListener(this);    }    @Override    public void onClick(View v) {        switch (v.getId()) {            case R.id.Login_qq:                //实现登陆                UMShareAPI.get(this).getPlatformInfo(MainActivity.this,SHARE_MEDIA.QQ,authListener);                break;            case R.id.shared_qq:
        new ShareAction(MainActivity.this)
    .setDisplayList(SHARE_MEDIA.QQ, SHARE_MEDIA.QZONE)//要分享的平台            .setCallback(mUmShareListener)            .withMedia(new UMImage(MainActivity.this, R.drawable.umeng_socialize_qq))            .withText("展示的文字内容")            .open();
break;
}
}

//
登陆监听回调
private UMAuthListener authListener = new UMAuthListener() {
@Override
public void onStart(SHARE_MEDIA platform) {

}

//
授权成功回调方法
@Override

public void onComplete(SHARE_MEDIA platform, int action, Map<String, String> data) { Log.d("xxx",data.toString()); Toast.makeText(MainActivity.this,data.toString(),Toast.LENGTH_SHORT).show();
     String mQq_name = data.get("screen_name");            String mTou = data.get("iconurl");
    //这里得到qq的头像和qq昵称然后可以做自己的操作了        }        @Override        public void onError(SHARE_MEDIA platform, int action, Throwable t) {        }        @Override        public void onCancel(SHARE_MEDIA platform, int action) {        }    };
    //设置分享的监听    private UMShareListener mUmShareListener = new UMShareListener() {    //分享开始监听    @Override    public void onStart(SHARE_MEDIA share_media) {    }    //分享成功监听    @Override    public void onResult(SHARE_MEDIA share_media) {    }    // 分享失败监听    @Override    public void onError(SHARE_MEDIA share_media, Throwable throwable) {    }    //分享取消监听    @Override    public void onCancel(SHARE_MEDIA share_media) {    }};
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
UMShareAPI.get(this).onActivityResult(requestCode,resultCode,data);                 
super.onActivityResult(requestCode, resultCode, data);       }}




0 0
原创粉丝点击