酷狗概念版 v2.5.5版本的 MD5 值为:782d327088fca4e58310f35a56f41319

以下内容为反编译后的 GlobalUser.java 源代码,内容仅作参考


package com.kugou.fanxing.base.global;

import android.content.Context;
import android.content.Intent;
import android.graphics.Bitmap;
import android.graphics.drawable.Drawable;
import android.text.TextUtils;
import android.webkit.URLUtil;
import com.bumptech.glide.g;
import com.kugou.common.app.KGCommonApplication;
import com.kugou.common.entity.FxUserInfoEntity;
import com.kugou.common.useraccount.app.KgUserLoginAndRegActivity;
import com.kugou.common.useraccount.protocol.i;
import com.kugou.common.utils.as;
import com.kugou.common.utils.bc;
import com.kugou.common.utils.bv;
import com.kugou.fanxing.base.entity.LoginSuccessEvent;
import com.kugou.fanxing.base.entity.LoginUserInfo;
import com.kugou.fanxing.event.GetPhoneBindEvent;
import com.kugou.fanxing.pro.a.f;
import com.kugou.fanxing.pro.a.h;
import com.kugou.fanxing.pro.imp.picture.FxPictureUploadEntity;
import com.kugou.fanxing.pro.imp.t;
import com.kugou.fanxing.user.LoginSource;
import com.kugou.fanxing.user.b;
import com.kugou.fanxing.util.ar;
import com.kugou.framework.service.ipc.a.o.c;
import de.greenrobot.event.EventBus;
import java.util.regex.Pattern;
import org.json.JSONObject;
import org.sqlite.database.sqlite.SQLiteDatabase;
import rx.android.schedulers.AndroidSchedulers;
import rx.e;
import rx.schedulers.Schedulers;

public class GlobalUser {

    private static boolean f55800a = false;

    private static volatile int f55801b = -1;

    private static boolean f55802c = false;

    private static int getSexFromKugou(int i) {
        if (i == 0 || i == 1) {
            return i;
        }
        return 2;
    }

    public static void a(int i) {
        if (i > 1) {
            i = 1;
        }
        f55801b = i;
    }

    public static boolean isLogin() {
        return a() > 0 && getFanxingId() > 0;
    }

    public static long a() {
        return com.kugou.common.environment.a.Y();
    }

    public static int getFanxingId() {
        int r = com.kugou.common.environment.a.r();
        if (r > 0) {
            return r;
        }
        return -1;
    }

    public static void a(double d2) {
        com.kugou.common.environment.a.a(d2);
    }

    public static String getToken() {
        String j = com.kugou.common.environment.a.j();
        return j != null ? j : "";
    }

    public static FxUserInfoEntity getUserInfo() {
        FxUserInfoEntity q = com.kugou.common.environment.a.q();
        return q == null ? FxUserInfoEntity.newEmptyInstance() : q;
    }

    public static void a(boolean z) {
        f55802c = z;
    }

    public static int getVipLevel() {
        FxUserInfoEntity userInfo = getUserInfo();
        if (userInfo != null) {
            return userInfo.getVipLevel();
        }
        return 0;
    }

    public static void clearUserInfo() {
        a(false);
        com.kugou.common.environment.a.c(0);
        com.kugou.common.environment.a.a((FxUserInfoEntity) null);
        a(0.0d);
        c.a(GlobalUser.class.getCanonicalName(), "notifyUserInfoChanged");
        a.a().b();
        f55801b = -1;
    }

    @Deprecated
    public static void tryLogin(Context context) {
        a(context);
    }

    @Deprecated
    public static void tryLogin(Context context, Runnable runnable) {
        a(context, 0, null, runnable);
    }

    public static void updateThirdPlatformUserInfo(final Context context, final b.a aVar) {
        String str;
        String l = com.kugou.common.q.b.a().l(String.valueOf(com.kugou.common.q.b.a().c()));
        String kugouHeadImgUrl = getKugouHeadImgUrl(com.kugou.common.q.b.a().z());
        int fanxingId = getFanxingId();
        int sexFromKugou = getSexFromKugou(com.kugou.common.q.b.a().m());
        com.kugou.common.environment.a.a(new FxUserInfoEntity(LoginUserInfo.createThirdPartUser(l, kugouHeadImgUrl, sexFromKugou)));
        if (!TextUtils.isEmpty(l)) {
            try {
                int length = l.length();
                boolean z = true;
                if (length(l) >= 15) {
                    str = l;
                    for (int i = length - 1; i > 3; i--) {
                        str = str.substring(0, i);
                        if (length(str) < 15) {
                            break;
                        }
                    }
                } else {
                    str = l;
                    z = false;
                }
                if (!z) {
                    int length2 = length(str);
                    if (length2 < 15 && length2 > 9) {
                        str = str + ar.c(14 - length2);
                    } else if (length2 > 0) {
                        str = str + ar.c(5);
                    }
                }
                l = str;
            } catch (Exception e2) {
                as.e(e2);
            }
            if (!Pattern.matches("^[\\u4e00-\\u9fa5_\\-A-Za-z0-9]{3,15}$", l)) {
                l = com.kugou.common.q.b.a().l();
            }
        }
        String str2 = l;
        if (!TextUtils.isEmpty(str2)) {
            new t(context).a(fanxingId, str2, "", sexFromKugou, "", 2, new t.a() {
                @Override
                public void success(Boolean bool) {
                    if (as.f54365e) {
                        as.f("GlobalUser", "updateThirdPlatformUserInfo->修改昵称结果...:" + bool);
                    }
                }

                @Override
                public void fail(int i2, String str3, h hVar) {
                    if (as.f54365e) {
                        as.f("GlobalUser", "updateThirdPlatformUserInfo->修改昵称失败...code:" + i2 + ";msg:" + str3);
                    }
                }
            });
        }
        if (TextUtils.isEmpty(kugouHeadImgUrl)) {
            return;
        }
        g.b(context).a(kugouHeadImgUrl).j().a((com.bumptech.glide.b<String>) new com.bumptech.glide.request.b.g<Bitmap>() {
            @Override
            public void a(Exception exc, Drawable drawable) {
            }

            @Override
            public void a(Object obj, com.bumptech.glide.request.a.c cVar) {
                a((Bitmap) obj, (com.bumptech.glide.request.a.c<? super Bitmap>) cVar);
            }

            public void a(Bitmap bitmap, com.bumptech.glide.request.a.c<? super Bitmap> cVar) {
                if (bitmap != null) {
                    if (as.f54365e) {
                        as.f("GlobalUser", "updateThirdPlatformUserInfo->下载第三方头像成功...");
                    }
                    GlobalUser.uploadHeadImage(bitmap, context, aVar);
                }
            }
        });
    }

    private static String getKugouHeadImgUrl(int i) {
        String k;
        if (i == 0) {
            k = com.kugou.common.q.b.a().w();
        } else {
            k = com.kugou.common.q.b.a().k(String.valueOf(com.kugou.common.q.b.a().c()));
        }
        return illeagalUrl(k) ? "" : (URLUtil.isHttpUrl(k) && k.contains("kugou.com")) ? k.substring(k.indexOf("kugou.com") + 9) : k;
    }

    private static boolean illeagalUrl(String str) {
        return !URLUtil.isValidUrl(str) || str.equalsIgnoreCase("http://imge.kugou.com/kugouicon/100/20100101/20100101144839177870.jpg") || str.contains("/kugouicon/100/http://i/http://imge.kugou.com/kugouicon");
    }

    public static void uploadHeadImage(Bitmap bitmap, final Context context, final b.a aVar) {
        if (bitmap == null || bitmap.isRecycled()) {
            return;
        }
        new com.kugou.fanxing.pro.imp.picture.b(context, "fxuserlogo").a(bitmap, new f<FxPictureUploadEntity>() {
            @Override
            public void fail(int i, String str, h hVar) {
            }

            @Override
            public void success(FxPictureUploadEntity fxPictureUploadEntity) {
                if (fxPictureUploadEntity != null) {
                    if (as.f54365e) {
                        as.f("GlobalUser", "上传头像到云存储uploadBmp->object.filename:" + fxPictureUploadEntity.filename + "; object.offset:" + fxPictureUploadEntity.offset);
                    }
                    GlobalUser.b(context, fxPictureUploadEntity.filename, aVar);
                }
            }
        });
    }

    public static void b(Context context, String str, b.a aVar) {
        String l = com.kugou.common.q.b.a().l();
        if (!TextUtils.isEmpty(l)) {
            l = l + ar.c(5);
            if (!Pattern.matches("^[\\u4e00-\\u9fa5_\\-A-Za-z0-9]{3,15}$", l)) {
                l = com.kugou.common.q.b.a().l();
            }
        }
        int fanxingId = getFanxingId();
        int sexFromKugou = getSexFromKugou(com.kugou.common.q.b.a().m());
        if (as.f54365e) {
            as.b("GlobalUser", "updateUserInfo->nickname:" + l + ";headpixPath:" + str + ";fxId:" + fanxingId + ";sex:" + sexFromKugou);
        }
        new t(context).a(fanxingId, "", str, sexFromKugou, "", 1, new t.a() {
            @Override
            public void fail(int i, String str2, h hVar) {
            }

            @Override
            public void success(Boolean bool) {
            }
        });
    }

    public static int length(String str) {
        if (str == null) {
            return 0;
        }
        int i = 0;
        for (char c2 : str.toCharArray()) {
            i++;
            if (!isLetter(c2)) {
                i++;
            }
        }
        return i;
    }

    public static boolean isLetter(char c2) {
        return c2 / 128 == 0;
    }

    public static boolean a(boolean z, final Runnable runnable) {
        Context context = KGCommonApplication.getContext();
        if (a() > 0) {
            if (getFanxingId() > 0) {
                return true;
            }
            if (bc.o(context)) {
                tryLogin(context, new Runnable() {
                    @Override
                    public void run() {
                        if (GlobalUser.getFanxingId() > 0) {
                            runnable.run();
                        }
                    }
                });
            } else {
                bv.b(context, "似乎没有网络哦");
            }
            return false;
        }
        if (context != null && z) {
            Intent intent = new Intent(context, (Class<?>) KgUserLoginAndRegActivity.class);
            intent.addFlags(SQLiteDatabase.CREATE_IF_NECESSARY);
            context.startActivity(intent);
        }
        return false;
    }

    public static void a(Context context) {
        a(context, 0);
    }

    public static void a(Context context, @LoginSource int i) {
        a(context, i, (JSONObject) null);
    }

    public static void a(Context context, @LoginSource int i, JSONObject jSONObject) {
        a(context, i, jSONObject, null);
    }

    public static void a(Context context, @LoginSource int i, JSONObject jSONObject, final Runnable runnable) {
        if (isLogin()) {
            return;
        }
        long a2 = a();
        if (a2 <= 0) {
            com.kugou.fanxing.ums.a.b(context, "fx_kugou_logout");
            if (runnable != null) {
                runnable.run();
                return;
            }
            return;
        }
        String token = getToken();
        if (TextUtils.isEmpty(token)) {
            com.kugou.fanxing.ums.a.b(context, "fx_kugou_login_token_empty");
            com.kugou.common.b.a.a(new Intent("com.kugou.android.user_logout"));
            com.kugou.common.service.a.c.d();
            if (runnable != null) {
                runnable.run();
                return;
            }
            return;
        }
        if (f55800a) {
            return;
        }
        f55800a = true;
        new b().a(context, i, com.kugou.common.q.b.a().k(), a2, com.kugou.common.q.b.a().z(), com.kugou.common.config.c.a().d(com.kugou.common.config.a.lo), token, jSONObject, new b.a() {
            @Override
            public void onResult(boolean z) {
                boolean unused = GlobalUser.f55800a = false;
                if (z) {
                    com.kugou.fanxing.coin.a.a().b();
                    a.a().c();
                    com.kugou.common.environment.b.a().a(20001, true);
                    GlobalUser.b();
                }
                if (z) {
                    EventBus.getDefault().post(new LoginSuccessEvent());
                }
                Runnable runnable2 = runnable;
                if (runnable2 != null) {
                    runnable2.run();
                }
            }
        });
    }

    public static void b() {
        e.a((Object) null).d(new rx.b.e<Object, Boolean>() {
            @Override
            public Boolean call(Object obj) {
                return Boolean.valueOf(new i().a(KGCommonApplication.getContext()).f53378b);
            }
        }).b(Schedulers.io()).a(AndroidSchedulers.mainThread()).b(new rx.b.b<Boolean>() {
            @Override
            public void call(Boolean bool) {
                if (bool != null) {
                    GlobalUser.a(bool.booleanValue() ? 1 : 0);
                    EventBus.getDefault().post(new GetPhoneBindEvent(bool.booleanValue()));
                }
            }
        });
    }
}