kaleai / shareloginlib Goto Github PK
View Code? Open in Web Editor NEWThis project forked from lingochamp/shareloginlib
第三方登录、分享封装库,几行代码即可完成集成,无需配置混淆。
License: MIT License
This project forked from lingochamp/shareloginlib
第三方登录、分享封装库,几行代码即可完成集成,无需配置混淆。
License: MIT License
UserInfoManager.getQQUserInfo(mContext, accessToken, userId, new UserInfoManager.UserInfoListener() {
@Override
public void onSuccess(@NonNull AuthUserInfo authUserInfo) {
Log.d(TAG, authUserInfo.headImgUrl);
Log.d(TAG, authUserInfo.nickName);
Log.d(TAG, authUserInfo.sex);
Log.d(TAG, authUserInfo.userId);
}
@Override
public void onError(String s) {
Log.d(TAG, "getUserInfoFromQQ - onError: " + s);
}
});
If 'authUserInfo.nickName' is null,
org.json.JSONException: No value for nickname
通过观察微信官方demo的log可以看到。分享以后点击“回到app”,才会去启动WXEntryActivity(这里我们使用别名所以是EventHandlerActivity),然后触发回到方法。假如我们点击“留在微信”,点返回是不会触发任何回调事件。
而该库采用的策略是先启动一个透明Activity,这样会出现一个问题,分享后留在微信,此时不触发回调,我们的透明Activity不会被销毁。附上我的解决方案(分享测试通过,登录未测试):
ShareLoginLib.java
private static void doAction(...){
//判断如果是微信平台,则先不启动透明Activity,假如有回调微信会帮我们启动
if(curPlatform instanceof WechatPlatform){
curPlatform.doShare(activity,shareType, shareContent, listener);
}else {
onCreateListener = new EventHandlerActivity.OnCreateListener() {
@Override
public void onCreate(EventHandlerActivity eventActivity) {
curPlatform.doShare(eventActivity, shareType, shareContent, listener);
}
};
activity.startActivity(new Intent(activity, EventHandlerActivity.class));
activity.overridePendingTransition(android.R.anim.fade_in, android.R.anim.fade_out);
}
wrPlatform = new WeakReference<>(curPlatform);
}
static void onActivityCreate(EventHandlerActivity activity) {
if(onCreateListener != null) { //判空
onCreateListener.onCreate(activity);
}
}
微信朋友圈的ShareListener在取消分享后仍会走onSuccess方法,qq好友以及qq空间在取消分享和分享后都会走onComplete方法而不走onSuccess方法。
截图贴不出来了,在SL_WeiBoHandlerActivity.java的大概60到70行之间
你把appKey配置成了appID,
遮罩也不消失
可以更新SDK到最新的嘛
你好,请问一下,第一次登录调到三方登录界面的,默认显示的 icon 怎么是 app 字样的图片。怎么处理过期的问题。
关于这些配置是否有更好的方法来实现?因为在程序初始化时它是作为一个静态变量保存在那里的,占用着内存,可能存在内存泄漏,而且这些配置除了分享的时候其它的情况下都是不需要的
能更新一下吗
2 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2955)
3 ......
4 Caused by:
5 java.lang.NullPointerException:Attempt to invoke interface method 'void kale.sharelogin.EventHandlerActivity$OnCreateListener.onCreate(kale.sharelogin.EventHandlerActivity)' on a null object reference
6 kale.sharelogin.ShareLoginLib.onActivityCreate(ShareLoginLib.java:180)
7 kale.sharelogin.EventHandlerActivity.onCreate(EventHandlerActivity.java:33)
8 android.app.Activity.performCreate(Activity.java:7183)
9 android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1220)
10 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2908)
11 android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3030)
12 android.app.ActivityThread.-wrap11(Unknown Source:0)
13 android.app.ActivityThread$H.handleMessage(ActivityThread.java:1696)
14 android.os.Handler.dispatchMessage(Handler.java:105)
15 android.os.Looper.loop(Looper.java:164)
16 android.app.ActivityThread.main(ActivityThread.java:6938)
17 java.lang.reflect.Method.invoke(Native Method)
18 com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:327)
19 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1374)
您好,我在第三方平台并没有找到相关的scope说明,您能给个链接或者讲解下么
现在的bitmap如果传入的超过大小会出现问题,希望可以自动进行压缩,防止bitmap过大而无法分享
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.