Thrid

来源:互联网 发布:网易企业邮箱端口设置 编辑:程序博客网 时间:2024/06/06 04:04
package com.example.thrid;

import java.util.Map;
import java.util.Set;

import com.nostra13.universalimageloader.core.DisplayImageOptions;
import com.nostra13.universalimageloader.core.ImageLoader;
import com.nostra13.universalimageloader.core.listener.ImageLoadingListener;
import com.umeng.socialize.bean.SHARE_MEDIA;
import com.umeng.socialize.controller.UMServiceFactory;
import com.umeng.socialize.controller.UMSocialService;
import com.umeng.socialize.controller.listener.SocializeListeners.UMAuthListener;
import com.umeng.socialize.controller.listener.SocializeListeners.UMDataListener;
import com.umeng.socialize.exception.SocializeException;
import com.umeng.socialize.sso.SinaSsoHandler;
import com.umeng.socialize.sso.UMQQSsoHandler;
import com.umeng.socialize.sso.UMSsoHandler;
import com.umeng.socialize.utils.Log;

import android.support.v7.app.ActionBarActivity;
import android.text.TextUtils;
import android.content.Intent;
import android.graphics.Bitmap;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.Toast;


public class MainActivity extends ActionBarActivity {
    UMSocialService mController = UMServiceFactory.getUMSocialService("com.umeng.login");
    Button qq,sina;
    ImageView img;
    
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        qq=(Button) findViewById(R.id.qq);
        sina=(Button) findViewById(R.id.sina);
        img=(ImageView) findViewById(R.id.img);
        mController.getConfig().setSsoHandler(new SinaSsoHandler());
        UMQQSsoHandler qqSsoHandler = new UMQQSsoHandler(MainActivity.this, "100424468",
                "c7394704798a158208a74ab60104f0ba");
        qqSsoHandler.addToSocialSDK();
        sina.setOnClickListener(new OnClickListener() {
            
            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                mController.doOauthVerify(MainActivity.this, SHARE_MEDIA.SINA,new UMAuthListener() {
                    @Override
                    public void onError(SocializeException e, SHARE_MEDIA platform) {
                    }
                    @Override
                    public void onComplete(Bundle value, SHARE_MEDIA platform) {
                        if (value != null && !TextUtils.isEmpty(value.getString("uid"))) {
                            Toast.makeText(MainActivity.this, "授权成功.",
                                    Toast.LENGTH_SHORT).show();
                            
                            mController.getPlatformInfo(MainActivity.this, SHARE_MEDIA.SINA, new UMDataListener() {
                                @Override
                                public void onStart() {
                                    Toast.makeText(MainActivity.this, "获取平台数据开始...", Toast.LENGTH_SHORT).show();
                                }                                              
                                @Override
                                public void onComplete(int arg0, Map<String, Object> arg1) {
                                    // TODO Auto-generated method stub
                                    if(arg0 == 200 && arg1 != null){
                                        StringBuilder sb = new StringBuilder();
                                        Set<String> keys = arg1.keySet();
                                        for(String key : keys){
                                           sb.append(key+"="+arg1.get(key).toString()+"\r\n");
                                           if(key.equals("profile_image_url")){
                                             //显示图片的配置  
                                               DisplayImageOptions options = new DisplayImageOptions.Builder()  
                                                       
                                                       .cacheInMemory(true)  
                                                       
                                                       .bitmapConfig(Bitmap.Config.RGB_565)  
                                                       .build();  
                                                 
                                               ImageLoader.getInstance().displayImage(arg1.get(key).toString(), img, options);
                                           }
                                        }
                                        Log.d("TestData",sb.toString());
                                    }else{
                                       Log.d("TestData","发生错误:"+arg0);
                                   }
                                }
                            });
                            
                            
                        } else {
                            Toast.makeText(MainActivity.this, "授权失败",                       Toast.LENGTH_SHORT).show();
                        }
                    }
                    @Override
                    public void onCancel(SHARE_MEDIA platform) {}
                    @Override
                    public void onStart(SHARE_MEDIA platform) {}
        });
                
                
                
                
                
            }
        });
        
        qq.setOnClickListener(new OnClickListener() {
            
            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                mController.doOauthVerify(MainActivity.this, SHARE_MEDIA.QQ, new UMAuthListener() {
                    @Override
                    public void onStart(SHARE_MEDIA platform) {
                        Toast.makeText(MainActivity.this, "授权开始", Toast.LENGTH_SHORT).show();
                    }
                    @Override
                    public void onError(SocializeException e, SHARE_MEDIA platform) {
                        Toast.makeText(MainActivity.this, "授权错误", Toast.LENGTH_SHORT).show();
                    }
                    @Override
                    public void onComplete(Bundle value, SHARE_MEDIA platform) {
                        Toast.makeText(MainActivity.this, "授权完成", Toast.LENGTH_SHORT).show();
                        //获取相关授权信息
                        mController.getPlatformInfo(MainActivity.this, SHARE_MEDIA.QQ, new UMDataListener() {
                    @Override
                    public void onStart() {
                        Toast.makeText(MainActivity.this, "获取平台数据开始...", Toast.LENGTH_SHORT).show();
                    }                                              
                    public void onComplete(int arg0, java.util.Map<String,Object> arg1) {
                        if(arg0 == 200 && arg1 != null){
                            StringBuilder sb = new StringBuilder();
                            Set<String> keys = arg1.keySet();
                            for(String key : keys){
                               sb.append(key+"="+arg1.get(key).toString()+"\r\n");
                            }
                            Log.d("TestData",sb.toString());
                        }else{
                           Log.d("TestData","发生错误:"+arg0);
                       }
                    };
                });
                    }
                    @Override
                    public void onCancel(SHARE_MEDIA platform) {
                        Toast.makeText(MainActivity.this, "授权取消", Toast.LENGTH_SHORT).show();
                    }
                } );
            }
        });
        
    }
    
    
    
    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        /**使用SSO授权必须添加如下代码 */  
        UMSsoHandler ssoHandler = mController.getConfig().getSsoHandler(requestCode);
        if(ssoHandler != null){
           ssoHandler.authorizeCallBack(requestCode, resultCode, data);
        }
    }

}
0 0
原创粉丝点击