package com.bwie.test;
import java.util.Map;
import com.umeng.socialize.UMAuthListener;
import com.umeng.socialize.UMShareAPI;
import com.umeng.socialize.bean.SHARE_MEDIA;
import android.app.Activity;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.TextView;
import android.widget.Toast;
public class MainActivity extends Activity {
private UMShareAPI mShareAPI;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//找控件
TextView login = (TextView) findViewById(R.id.login);
//获取SharedPreference
sp = getSharedPreferences("login", MODE_PRIVATE);
mShareAPI = UMShareAPI.get(this);
login.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
//获取授权平台
SHARE_MEDIA platform = SHARE_MEDIA.QQ;
mShareAPI.doOauthVerify(MainActivity.this, platform,
umAuthListener);
}
});
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
mShareAPI.onActivityResult(requestCode, resultCode, data);
}
//回调监听器,负责监听授权是否成功
private UMAuthListener umAuthListener = new UMAuthListener() {
@Override
public void onComplete(SHARE_MEDIA platform, int action,
Map<String, String> data) {
Toast.makeText(getApplicationContext(), "Authorize succeed",
Toast.LENGTH_SHORT).show();
//初始化UMShareAPI,然后进行用户信息获取
mShareAPI.getPlatformInfo(MainActivity.this, platform, new UMAuthListener() {
@Override
public void onError(SHARE_MEDIA arg0, int arg1, Throwable arg2) {
// TODO Auto-generated method stub
}
@Override
public void onComplete(SHARE_MEDIA arg0, int arg1, Map<String, String> map) {
System.out.println(map.toString());
//获取信息成功后,从map集合中取出用户名和头像的地址
String name = map.get("screen_name");
String url = map.get("profile_image_url");
System.out.println(name);
System.out.println(url);
//将用户名和头像的地址保存到SharedPreferences
sp.edit().putString("screen_name", name).commit();
sp.edit().putString("profile_image_url", url).commit();
//吐司提示授权成功
Intent intent = new Intent(MainActivity.this,SecendActivity.class);
startActivity(intent);
Toast.makeText(MainActivity.this, "授权登录成功", 0).show();
}
@Override
public void onCancel(SHARE_MEDIA arg0, int arg1) {
// TODO Auto-generated method stub
}
});
}
@Override
public void onError(SHARE_MEDIA platform, int action, Throwable t) {
Toast.makeText(getApplicationContext(), "Authorize fail",
Toast.LENGTH_SHORT).show();
}
@Override
public void onCancel(SHARE_MEDIA platform, int action) {
Toast.makeText(getApplicationContext(), "Authorize cancel",
Toast.LENGTH_SHORT).show();
}
};
private SharedPreferences sp;
}
另一页面
//找控件
private ImageView img;
private TextView name;
img = (ImageView) findViewById(R.id.img);
name = (TextView) findViewById(R.id.name);
//从SharedPreference取值
SharedPreferences sp = getSharedPreferences("login", MODE_PRIVATE);
String names = sp.getString("screen_name", null);
String imgs = sp.getString("profile_image_url", null);
name.setText(names);
ImageLoader.getInstance().displayImage(imgs, img);
第三方登录头像名字显示另一页面
最新推荐文章于 2019-04-25 17:32:57 发布