Skip to content

Commit

Permalink
更新微信的回调接口名
Browse files Browse the repository at this point in the history
  • Loading branch information
Kale committed Mar 25, 2017
1 parent e2ef301 commit f6944cc
Show file tree
Hide file tree
Showing 4 changed files with 20 additions and 18 deletions.
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ repositories {
**举例:**
```
compile 'com.github.tianzhijiexian:ShareLoginLib:1.3.7'
compile 'com.github.tianzhijiexian:ShareLoginLib:1.3.8'
```

## 使用
Expand Down Expand Up @@ -70,7 +70,7 @@ ShareLoginSDK.isQQInstalled(this);

### 通过token和id得到用户信息
```JAVA
SsoUserInfoManager.getUserInfo(context, LoginType.XXX, accessToken, userId,
SsoUserInfoManager.getUserInfo(context, SsoLoginType.XXX, accessToken, userId,
new UserInfoListener() {

public void onSuccess(@NonNull OAuthUserInfo userInfo) {
Expand Down
26 changes: 14 additions & 12 deletions lib/src/main/java/com/liulishuo/share/SsoLoginManager.java
Original file line number Diff line number Diff line change
Expand Up @@ -31,15 +31,13 @@ public static void login(@NonNull Activity activity, @SsoLoginType String type,
* @param weixinCodeRespListener 得到微信code的listener。如果不为空,loginListener将不会被自动调用,必须要手动调用。
*/
public static void login(@NonNull Activity activity, @SsoLoginType String type,
@Nullable LoginListener listener, @Nullable LoginRespListener weixinCodeRespListener) {
@Nullable LoginListener listener, @Nullable WXLoginRespListener weixinCodeRespListener) {
SsoLoginManager.listener = listener;
switch (type) {
case QQ:
if (ShareLoginSDK.isQQInstalled(activity)) {
activity.startActivity(
new Intent(activity, SL_QQHandlerActivity.class)
.putExtra(ShareLoginSDK.KEY_IS_LOGIN_TYPE, true)
);
Intent intent = new Intent(activity, SL_QQHandlerActivity.class).putExtra(ShareLoginSDK.KEY_IS_LOGIN_TYPE, true);
activity.startActivity(intent);
activity.overridePendingTransition(android.R.anim.fade_in, android.R.anim.fade_out);
} else {
if (listener != null) {
Expand All @@ -48,15 +46,13 @@ public static void login(@NonNull Activity activity, @SsoLoginType String type,
}
break;
case WEIBO:
activity.startActivity(
new Intent(activity, SL_WeiBoHandlerActivity.class)
.putExtra(ShareLoginSDK.KEY_IS_LOGIN_TYPE, true)
);
Intent intent = new Intent(activity, SL_WeiBoHandlerActivity.class).putExtra(ShareLoginSDK.KEY_IS_LOGIN_TYPE, true);
activity.startActivity(intent);
activity.overridePendingTransition(android.R.anim.fade_in, android.R.anim.fade_out);
break;
case WEIXIN:
if (ShareLoginSDK.isWeiXinInstalled(activity)) {
SL_WeiXinHandlerActivity.respListener = weixinCodeRespListener;
SL_WeiXinHandlerActivity.wxrespListener = weixinCodeRespListener;
SL_WeiXinHandlerActivity.login(activity.getApplicationContext());
activity.overridePendingTransition(android.R.anim.fade_in, android.R.anim.fade_out);
} else {
Expand All @@ -70,19 +66,25 @@ public static void login(@NonNull Activity activity, @SsoLoginType String type,

public static void recycle() {
listener = null;
SL_WeiXinHandlerActivity.respListener = null;
SL_WeiXinHandlerActivity.wxrespListener = null;
}

public interface LoginListener {

/**
* @param accessToken 第三方给的一次性token,几分钟内会失效
* @param uId 用户的id
* @param expiresIn 过期时间
* @param wholeData 第三方本身返回的全部json数据
*/
void onSuccess(String accessToken, String uId, long expiresIn, @Nullable String wholeData);

void onError(String msg);

void onCancel();
}

public interface LoginRespListener {
public interface WXLoginRespListener {

void onLoginResp(String respCode, SsoLoginManager.LoginListener listener);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -277,7 +277,7 @@ private Bundle createQZoneBundle(ShareContent shareContent) {
String title = shareContent.getTitle();
if (title == null) {
// 如果没title,说明就是分享的纯文字、纯图片
Toast.makeText(SL_QQHandlerActivity.this, "目前不支持分享纯文本信息给QQ好友", Toast.LENGTH_SHORT).show();
Toast.makeText(SL_QQHandlerActivity.this, "目前不支持分享纯文本/图片到QQ空间", Toast.LENGTH_SHORT).show();
Log.e(ShareLoginSDK.TAG, Log.getStackTraceString(new RuntimeException("QQ空间目前只支持分享图文信息")));
finish();
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ public class SL_WeiXinHandlerActivity extends Activity implements IWXAPIEventHan

private IWXAPI api;

public static SsoLoginManager.LoginRespListener respListener;
public static SsoLoginManager.WXLoginRespListener wxrespListener;

@Override
protected void onCreate(Bundle savedInstanceState) {
Expand Down Expand Up @@ -111,8 +111,8 @@ protected void parseLoginResp(final Activity activity, SendAuth.Resp resp,
if (listener != null) {
switch (resp.errCode) {
case BaseResp.ErrCode.ERR_OK: // 登录成功
if (respListener != null) {
respListener.onLoginResp(resp.code, listener);
if (wxrespListener != null) {
wxrespListener.onLoginResp(resp.code, listener);
} else {
handlerLoginResp(activity, resp.code, listener); // 登录成功后开始通过code换取token
}
Expand Down

0 comments on commit f6944cc

Please sign in to comment.