http://wiki.mob.com/sdk-share-android-3-0-0/
sharesdk地址:http://wiki.mob.com/sdk-share-android-3-0-0/
facebook开放平台:https://developers.facebook.com/
ShareSDK {
devInfo {
Facebook {
appKey "xxxxxxx"
appSecret "xxxx"
callbackUri "https://mob.com"
shareByAppClient true}}}
方法:
private void authorize(Platform plat) {
LogUtils.e("author", "author");
if (plat == null) {
return;
}
//客户端是否可用
/* if (plat.isAuthValid() && plat.getDb().getUserId() != null) {
plat.showUser(plat.getDb().getUserId());
UIHandler.sendEmptyMessage(MSG_AUTH_COMPLETE, LoginActivity.this);
}*/
plat.setPlatformActionListener(new PlatformActionListener() {
@Override
public void onComplete(Platform platform, int action, HashMap<String, Object> hashMap) {
if (hashMap != null) {
String email= (String) hashMap.get("email");
LogUtils.e("信息:", email);
}
LogUtils.e("第三方登录", "onSuccess");
String name = platform.getName();
String platid = platform.getId() + "";
String userid = platform.getDb().getUserId() + "";
String gender = platform.getDb().getUserGender();//比如 male (男) female (女)
String head_url = platform.getDb().getUserIcon();
String nickname = platform.getDb().getUserName();
String tokenSecret = platform.getDb().getTokenSecret();
long time = platform.getDb().getExpiresTime();
String platname = platform.getDb().getPlatformNname();
String platversion = platform.getDb().getPlatformVersion() + "";
long expiresIn = platform.getDb().getExpiresIn();
LogUtils.e("asd", "name:" + name + "\nplatid:" + platid);
LogUtils.e("asd", "openid:" + userid);
LogUtils.e("asd", "gender:" + gender);
LogUtils.e("asd", "head_url:" + head_url);
LogUtils.e("asd", "nickname:" + nickname);
LogUtils.e("asd", "tokenSecret:" + tokenSecret);
LogUtils.e("asd", "expiresIn:" + expiresIn);
LogUtils.e("asd", "time:" + time + "\nplatname:" + platname + "\nplatversion:" + platversion);
if (facebook.isClientValid()) {
facebook.removeAccount(true);
}
}
//第三方登录 错误
@Override
public void onError(Platform platform, int action, Throwable throwable) {
LogUtils.e("第三方登录", "onError");
throwable.printStackTrace();
}
//第三方登录 取消
@Override
public void onCancel(Platform platform, int action) {
LogUtils.e("第三方登录", "onCancel");
}}});
// 控制客户端授权还是web授权的 false就是优先客户端
plat.SSOSetting(false);
plat.showUser(null);
}