天天看点

uMeng第三方登录

public class UmengLogin extends Activity{

static UMSocialService mController = UMServiceFactory.getUMSocialService("com.umeng.login");

public static void QQ_login(final Context mContext){

mController.doOauthVerify(mContext, SHARE_MEDIA.QQ, new UMAuthListener() {

   public void onStart(SHARE_MEDIA platform) {

       Toast.makeText(mContext, "授权开始", Toast.LENGTH_SHORT).show();

   }

   public void onError(SocializeException e, SHARE_MEDIA platform) {

       Toast.makeText(mContext, "授权错误", Toast.LENGTH_SHORT).show();

   }

   public void onComplete(Bundle value, SHARE_MEDIA platform) {

       Toast.makeText(mContext, "授权完成", Toast.LENGTH_SHORT).show();

       //获取相关授权信息

       mController.getPlatformInfo(mContext, SHARE_MEDIA.QQ, new UMDataListener() {

   public void onStart() {

       Toast.makeText(mContext, "获取平台数据开始...", Toast.LENGTH_SHORT).show();

   }                                              

   public void onComplete(int status, Map<String, Object> info) {

           if(status == 200 && info != null){

               StringBuilder sb = new StringBuilder();

               Set<String> keys = info.keySet();

               for(String key : keys){

                  sb.append(key+"="+info.get(key).toString()+"\r\n");

               }

               Log.d("TestData",sb.toString());

               //发送广播,把头像的url和用户名发送出去

               Intent intent=new Intent();

               intent.setAction("org.crazyit.action.CRAZY_BROADCAST");

               intent.putExtra("tou_url", info.get("profile_image_url").toString());

               intent.putExtra("tou_name", info.get("screen_name").toString());

               mContext.sendBroadcast(intent);

           }else{

              Log.d("TestData","发生错误:"+status);

           }

   }

      });

   }

   public void onCancel(SHARE_MEDIA platform) {

       Toast.makeText(mContext, "授权取消", Toast.LENGTH_SHORT).show();

   }

} );

}

public static void sina_login(final Context mContext){

mController.doOauthVerify(mContext, SHARE_MEDIA.SINA,new UMAuthListener() {

            public void onError(SocializeException e, SHARE_MEDIA platform) {

            }

            public void onComplete(Bundle value, SHARE_MEDIA platform) {

                if (value != null && !TextUtils.isEmpty(value.getString("uid"))) {

                    Toast.makeText(mContext, "授权成功.",Toast.LENGTH_SHORT).show();

                  //获取相关授权信息

           mController.getPlatformInfo(mContext, SHARE_MEDIA.QQ, new UMDataListener() {

       public void onStart() {

           Toast.makeText(mContext, "获取平台数据开始...", Toast.LENGTH_SHORT).show();

       }                                              

       public void onComplete(int status, Map<String, Object> info) {

               if(status == 200 && info != null){

                   StringBuilder sb = new StringBuilder();

                   Set<String> keys = info.keySet();

                   for(String key : keys){

                      sb.append(key+"="+info.get(key).toString()+"\r\n");

                   }

                   Log.d("TestData",sb.toString());

                   //发送广播,把头像的url和用户名发送出去

                   Intent intent=new Intent();

                   intent.setAction("org.crazyit.action.CRAZY_BROADCAST");

                   intent.putExtra("tou_url", info.get("profile_image_url").toString());

                   intent.putExtra("tou_name", info.get("screen_name").toString());

                   mContext.sendBroadcast(intent);

               }else{

                  Log.d("TestData","发生错误:"+status);

               }

       }

          });

                } else {

                    Toast.makeText(mContext, "授权失败",Toast.LENGTH_SHORT).show();

                }

            }

            public void onCancel(SHARE_MEDIA platform) {}

            public void onStart(SHARE_MEDIA platform) {}

});

}

}

继续阅读