diff --git a/app/build.gradle b/app/build.gradle
index 7ab8e7d60..dd7f49322 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -10,7 +10,7 @@ android {
compileSdkVersion 32
defaultConfig {
- applicationId "com.mango.yinyou"
+ applicationId "com.vele.peko"
minSdkVersion 21
targetSdkVersion 32
versionCode Integer.valueOf(version_code)
@@ -55,26 +55,22 @@ android {
enabled = true
}
- packagingOptions {
- exclude 'lib/armeabi-v7a/libagora-crypto.so'
- }
-
signingConfigs {
v2 {
- storeFile file('../yinyou.jks')
- storePassword "yinyou2021"
- keyAlias "yinyou"
- keyPassword "yinyou2021"
+ storeFile file('../peko.jks')
+ storePassword "peko2022"
+ keyAlias "peko"
+ keyPassword "peko2022"
v2SigningEnabled true
v1SigningEnabled true
}
v1 {
- storeFile file('../yinyou.jks')
- storePassword "yinyou2021"
- keyAlias "yinyou"
- keyPassword "yinyou2021"
+ storeFile file('../peko.jks')
+ storePassword "peko2022"
+ keyAlias "peko"
+ keyPassword "peko2022"
v2SigningEnabled false
v1SigningEnabled true
}
@@ -98,10 +94,8 @@ android {
'src/module_bank_card/java',
'src/module_super_admin/java',
'src/module_treasure_box/java',
-
'src/module_community/java',
'src/module_album/java',
- 'src/module_quick_pass/java'
]
@@ -120,10 +114,8 @@ android {
'src/module_bank_card/res',
'src/module_super_admin/res',
'src/module_treasure_box/res',
-
'src/module_community/res',
'src/module_album/res',
- 'src/module_quick_pass/res'
]
@@ -198,7 +190,6 @@ dependencies {
api "com.ms-square:expandableTextView:0.1.4"
api "com.jakewharton:butterknife:10.2.3"
annotationProcessor "com.jakewharton:butterknife-compiler:10.2.3"
- implementation "com.llew.huawei:verifier:1.0.3"
annotationProcessor 'androidx.annotation:annotation:1.4.0'
implementation 'io.github.h07000223:flycoTabLayout:3.0.0'
@@ -239,13 +230,6 @@ dependencies {
implementation 'com.github.mmin18:realtimeblurview:1.2.1'
}
-repositories {
- flatDir {
- dirs 'aliyun-libs','com.huawei.agconnect'
- }
- mavenCentral()
-}
-
channel {
//多渠道包的输出目录,默认为new File(project.buildDir,"channel")
outputDir = new File(project.buildDir, "channelapk")
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index fa2780417..6b256d58d 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -197,26 +197,7 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -261,31 +264,14 @@
+ android:host="main"
+ android:scheme="pekoapp" />
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/app/src/main/java/com/vele/peko/lineapi/LineAuthenticationCallbackActivity.java b/app/src/main/java/com/vele/peko/lineapi/LineAuthenticationCallbackActivity.java
new file mode 100644
index 000000000..3dc98b30f
--- /dev/null
+++ b/app/src/main/java/com/vele/peko/lineapi/LineAuthenticationCallbackActivity.java
@@ -0,0 +1,6 @@
+package com.vele.peko.lineapi;
+
+import cn.sharesdk.line.LineHandlerActivity;
+
+public class LineAuthenticationCallbackActivity extends LineHandlerActivity {
+}
diff --git a/app/src/main/java/com/xuanyi/accompany/wxapi/WXEntryActivity.java b/app/src/main/java/com/xuanyi/accompany/wxapi/WXEntryActivity.java
deleted file mode 100644
index e9154fb12..000000000
--- a/app/src/main/java/com/xuanyi/accompany/wxapi/WXEntryActivity.java
+++ /dev/null
@@ -1,26 +0,0 @@
-package com.xuanyi.accompany.wxapi;
-
-import android.content.Intent;
-
-
-import cn.sharesdk.wechat.utils.WXMediaMessage;
-import cn.sharesdk.wechat.utils.WechatHandlerActivity;
-
-/**
- * create by lvzebiao @2019/11/8
- */
-public class WXEntryActivity extends WechatHandlerActivity {
-
- @Override
- public void onShowMessageFromWXReq(WXMediaMessage msg) {
- super.onShowMessageFromWXReq(msg);
- }
-
- @Override
- public void onGetMessageFromWXReq(WXMediaMessage msg) {
- super.onGetMessageFromWXReq(msg);
- //从小程序返回APP
- Intent iLaunchMyself = getPackageManager().getLaunchIntentForPackage(getPackageName());
- startActivity(iLaunchMyself);
- }
-}
diff --git a/app/src/main/java/com/yizhuan/erban/MainActivity.java b/app/src/main/java/com/yizhuan/erban/MainActivity.java
index a1dbe345e..6b65f0e3c 100644
--- a/app/src/main/java/com/yizhuan/erban/MainActivity.java
+++ b/app/src/main/java/com/yizhuan/erban/MainActivity.java
@@ -20,7 +20,6 @@ import android.view.animation.LinearInterpolator;
import android.widget.LinearLayout;
import android.widget.TextView;
-import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentTransaction;
@@ -65,7 +64,7 @@ import com.yizhuan.erban.main.helper.NoticationsUiHelper;
import com.yizhuan.erban.miniworld.activity.MiniWorldGuestPageActivity;
import com.yizhuan.erban.module.Extras;
import com.yizhuan.erban.module_hall.secretcode.PwdCodeMgr;
-import com.yizhuan.erban.quick_pass.QuickPassLoginAct;
+import com.yizhuan.erban.ui.login.LoginActivity;
import com.yizhuan.erban.service.DaemonService;
import com.yizhuan.erban.ui.im.ImInitHelper;
import com.yizhuan.erban.ui.im.avtivity.NimP2PMessageActivity;
@@ -98,7 +97,6 @@ import com.yizhuan.xchat_android_core.home.model.HomeModel;
import com.yizhuan.xchat_android_core.initial.InitialModel;
import com.yizhuan.xchat_android_core.linked.LinkedModel;
import com.yizhuan.xchat_android_core.linked.bean.LinkedInfo;
-import com.yizhuan.xchat_android_core.manager.AudioEngineManager;
import com.yizhuan.xchat_android_core.manager.AvRoomDataManager;
import com.yizhuan.xchat_android_core.manager.IMBroadcastManager;
import com.yizhuan.xchat_android_core.manager.IMMessageManager;
@@ -501,13 +499,13 @@ public class MainActivity extends BaseMvpActivity
public void onLogout() {
Logger.e(TAG, "onLogout Success ~~~~");
getMvpPresenter().exitRoom();
- QuickPassLoginAct.start(MainActivity.this);
+ LoginActivity.start(MainActivity.this);
PmDialogShowMrg.get().onLogout();
}
public void onNeedLogin() {
NimMiddleActivity.openCommunity = false;
- QuickPassLoginAct.start(MainActivity.this);
+ LoginActivity.start(MainActivity.this);
}
diff --git a/app/src/main/java/com/yizhuan/erban/application/XChatApplication.java b/app/src/main/java/com/yizhuan/erban/application/XChatApplication.java
index 6b9cb8e5b..a9096b40c 100644
--- a/app/src/main/java/com/yizhuan/erban/application/XChatApplication.java
+++ b/app/src/main/java/com/yizhuan/erban/application/XChatApplication.java
@@ -6,12 +6,16 @@ import android.annotation.SuppressLint;
import android.annotation.TargetApi;
import android.app.Application;
import android.content.Context;
+import android.content.pm.PackageInfo;
+import android.content.pm.PackageManager;
+import android.content.pm.Signature;
import android.graphics.Color;
import android.net.http.HttpResponseCache;
import android.os.Build;
import android.os.Environment;
import android.provider.Settings;
import android.text.TextUtils;
+import android.util.Base64;
import android.util.Log;
import androidx.multidex.MultiDex;
@@ -19,7 +23,6 @@ import androidx.multidex.MultiDex;
import com.bumptech.glide.request.target.ViewTarget;
import com.coorchice.library.utils.LogUtils;
import com.hjq.toast.ToastUtils;
-import com.llew.huawei.verifier.LoadedApkHuaWei;
import com.mob.MobSDK;
import com.netease.nim.uikit.api.NimUIKit;
import com.netease.nim.uikit.common.util.log.LogUtil;
@@ -95,6 +98,8 @@ import org.greenrobot.eventbus.EventBus;
import java.io.File;
import java.io.IOException;
+import java.security.MessageDigest;
+import java.security.NoSuchAlgorithmException;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
@@ -253,7 +258,6 @@ public class XChatApplication extends Application {
lifeManager = new ActivityLifeManager();
}
registerActivityLifecycleCallback(lifeManager);
- dealHuaWeiCrash();
initLinkedMe();
MobSDK.init(context);
MobSDK.submitPolicyGrantResult(true);
@@ -296,17 +300,6 @@ public class XChatApplication extends Application {
}
- private static void dealHuaWeiCrash() {
- String brand = Build.BRAND;
- String manufacturer = Build.MANUFACTURER;
- if (!TextUtils.isEmpty(brand) && (
- "HUAWEI".toLowerCase().equals(brand.toLowerCase())
- || "HONOR".toLowerCase().equals(brand.toLowerCase())
- || "HUAWEI".equals(manufacturer))) {
- LoadedApkHuaWei.hookHuaWeiVerifier((Application) BasicConfig.INSTANCE.getAppContext().getApplicationContext());
- }
- }
-
@TargetApi(Build.VERSION_CODES.ICE_CREAM_SANDWICH)
public static void registerActivityLifecycleCallback(Application.ActivityLifecycleCallbacks callbacks) {
((Application) BasicConfig.INSTANCE.getAppContext().getApplicationContext()).registerActivityLifecycleCallbacks(callbacks);
@@ -515,6 +508,22 @@ public class XChatApplication extends Application {
if (!isShowPrivacyAgreement) {
initOtherSDK();
}
+
+ facebookHashKey();
+ }
+
+ //Facebook秘钥散列获取
+ private void facebookHashKey() {
+ try {
+ PackageInfo info = getPackageManager().getPackageInfo(getPackageName(), PackageManager.GET_SIGNATURES);
+ for (Signature signature : info.signatures) {
+ MessageDigest md = MessageDigest.getInstance("SHA");
+ md.update(signature.toByteArray());
+ Log.d("KeyHash:", Base64.encodeToString(md.digest(), Base64.DEFAULT));
+ }
+ } catch (PackageManager.NameNotFoundException e) {
+ } catch (NoSuchAlgorithmException e) {
+ }
}
@Override
diff --git a/app/src/main/java/com/yizhuan/erban/base/BaseLoginAct.java b/app/src/main/java/com/yizhuan/erban/base/BaseLoginAct.java
deleted file mode 100644
index 9eed57ccc..000000000
--- a/app/src/main/java/com/yizhuan/erban/base/BaseLoginAct.java
+++ /dev/null
@@ -1,254 +0,0 @@
-package com.yizhuan.erban.base;
-
-import android.annotation.SuppressLint;
-import android.graphics.Color;
-import android.os.Bundle;
-import android.text.SpannableString;
-import android.text.SpannableStringBuilder;
-import android.text.Spanned;
-import android.text.TextUtils;
-import android.text.method.LinkMovementMethod;
-import android.text.style.ForegroundColorSpan;
-import android.view.View;
-import android.widget.CheckBox;
-import android.widget.TextView;
-
-import androidx.annotation.NonNull;
-import androidx.core.content.ContextCompat;
-
-import com.netease.nim.uikit.StatusBarUtil;
-import com.yizhuan.erban.R;
-import com.yizhuan.erban.common.widget.OriginalDrawStatusClickSpan;
-import com.yizhuan.erban.ui.webview.CommonWebViewActivity;
-import com.yizhuan.xchat_android_constants.XChatConstants;
-import com.yizhuan.xchat_android_core.UriProvider;
-import com.yizhuan.xchat_android_core.auth.AuthModel;
-import com.yizhuan.xchat_android_core.bean.LoginTipsInfo;
-import com.yizhuan.xchat_android_core.market_verify.MarketVerifyModel;
-import com.yizhuan.xchat_android_core.statistic.StatisticManager;
-import com.yizhuan.xchat_android_core.statistic.protocol.StatisticsProtocol;
-
-import io.reactivex.SingleObserver;
-import io.reactivex.disposables.Disposable;
-import io.reactivex.functions.BiConsumer;
-
-public abstract class BaseLoginAct extends BaseActivity {
-
- protected CheckBox tvProtocol;
- protected TextView wxLogin;
- protected TextView qqLogin;
- protected TextView tvLoginQuickPass;
- protected TextView tvLoginTip;
- protected TextView tvDesc;
-
- protected boolean canClick = true;
-
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- }
-
- protected void setProtocol() {
-
- if (tvProtocol == null) {
- return;
- }
-
- String privacyAgreementTip = context.getString(R.string.tip_privacy_agreement);
- String userAgreementTip = context.getString(R.string.tip_user_agreement);
- String privacyAgreementDescTip = context.getString(R.string.text_login_protocol, privacyAgreementTip, userAgreementTip);
- SpannableString ss = new SpannableString(privacyAgreementDescTip);
- int privacyAgreementTipIndex = privacyAgreementDescTip.indexOf(privacyAgreementTip);
- int userAgreementTipIndex = privacyAgreementDescTip.indexOf(userAgreementTip);
-
-
- ss.setSpan(new ForegroundColorSpan(ContextCompat.getColor(context, R.color.color_2D93FF)), privacyAgreementTipIndex, privacyAgreementTipIndex + privacyAgreementTip.length(), Spanned.SPAN_INCLUSIVE_EXCLUSIVE);
- ss.setSpan(new OriginalDrawStatusClickSpan(ContextCompat.getColor(context, R.color.color_2D93FF)) {
- @Override
- public void onClick(@NonNull View widget) {
- if (!canClick) {
- return;
- }
- if (widget instanceof TextView)
- ((TextView) widget).setHighlightColor(getResources().getColor(android.R.color.transparent));
-
- CommonWebViewActivity.start(context, UriProvider.getPrivacyAgreement());
- }
- }, privacyAgreementTipIndex, privacyAgreementTipIndex + privacyAgreementTip.length(), Spanned.SPAN_INCLUSIVE_EXCLUSIVE);
- ss.setSpan(new ForegroundColorSpan(ContextCompat.getColor(context, R.color.color_2D93FF)), userAgreementTipIndex, userAgreementTipIndex + userAgreementTip.length(), Spanned.SPAN_INCLUSIVE_EXCLUSIVE);
- ss.setSpan(new OriginalDrawStatusClickSpan(ContextCompat.getColor(context, R.color.color_2D93FF)) {
- @Override
- public void onClick(@NonNull View widget) {
- if (!canClick) {
- return;
- }
- if (widget instanceof TextView)
- ((TextView) widget).setHighlightColor(getResources().getColor(android.R.color.transparent));
-
- CommonWebViewActivity.start(context, UriProvider.getUserProtocolUrl());
- }
- }, userAgreementTipIndex, userAgreementTipIndex + privacyAgreementTip.length(), Spanned.SPAN_INCLUSIVE_EXCLUSIVE);
-
- tvProtocol.setText(ss);
- tvProtocol.setHighlightColor(Color.TRANSPARENT);
- tvProtocol.setMovementMethod(new LinkMovementMethod());
- }
-
- @SuppressLint("CheckResult")
- protected void showLoginTip() {
- MarketVerifyModel.get().loadLoginTip()
- .compose(bindToLifecycle())
- .subscribe(new BiConsumer() {
- @Override
- public void accept(LoginTipsInfo loginTipsInfo, Throwable throwable) throws Exception {
- if (throwable == null) {
- showTvDesc(loginTipsInfo.getTips());
-
- showTvLoginTip(loginTipsInfo.isShowWechat() || loginTipsInfo.isShowQq());
- showThirdPartLogin(loginTipsInfo.isShowWechat(), loginTipsInfo.isShowQq(), loginTipsInfo.isShowOneClick());
-
- } else {
- showTvLoginTip(false);
- showThirdPartLogin(false, false, false);
- }
- }
- });
- }
-
- protected void showThirdPartLogin(boolean isShowWechat, boolean isShowQq, boolean isShowOneClick) {
- showwxLogin(isShowWechat);
- showqqLogin(isShowQq);
- showOneClickLogin(isShowOneClick);
- }
-
- private void showTvLoginTip(boolean visible) {
- if (tvLoginTip != null) {
- tvLoginTip.setVisibility(visible ? View.VISIBLE : View.GONE);
- }
- }
-
- private void showwxLogin(boolean visible) {
- if (wxLogin != null) {
- wxLogin.setVisibility(visible ? View.VISIBLE : View.GONE);
- }
- }
-
- private void showqqLogin(boolean visible) {
- if (qqLogin != null) {
- qqLogin.setVisibility(visible ? View.VISIBLE : View.GONE);
- }
- }
-
- private void showOneClickLogin(boolean visible) {
- if (tvLoginQuickPass != null) {
- tvLoginQuickPass.setVisibility(visible ? View.VISIBLE : View.GONE);
- }
- }
-
- private void showTvDesc(String tips) {
- if (tvDesc != null && !TextUtils.isEmpty(tips)) {
- SpannableStringBuilder builder = new SpannableStringBuilder(tips);
- int start = tips.indexOf("如何登录");
-
- if (start > -1) {
- builder.setSpan(new ForegroundColorSpan(ContextCompat.getColor(context, R.color.color_FE4C62)), start, start + 5, Spanned.SPAN_INCLUSIVE_EXCLUSIVE);
- builder.setSpan(new OriginalDrawStatusClickSpan() {
- @Override
- public void onClick(@NonNull View widget) {
- if (!canClick) {
- return;
- }
- CommonWebViewActivity.start(BaseLoginAct.this, UriProvider.JAVA_WEB_URL + XChatConstants.LOGIN_ERBAN_ACCOUNT_URL);
- }
- }, start, start + 5, Spanned.SPAN_INCLUSIVE_EXCLUSIVE);
-
- }
-
-
- tvDesc.setText(builder);
- tvDesc.setHighlightColor(Color.TRANSPARENT);
- tvDesc.setMovementMethod(new LinkMovementMethod());
-
- }
- }
-
- protected void wxLogin() {
- // 易盾保护 token
-// String yiDunToken = watchman.getToken(XChatConstants.YI_DUN_BUSINESS_ID);
- // 数美天网 deviceId
-// String shuMeiDeviceId = SmAntiFraud.getDeviceId();
- getDialogManager().showProgressDialog(this, "请稍后");
- AuthModel.get()
- .wxLogin("", "")
- .subscribe(new SingleObserver() {
- @Override
- public void onSubscribe(Disposable d) {
- mCompositeDisposable.add(d);
- }
-
- @Override
- public void onSuccess(String s) {
- getDialogManager().dismissDialog();
- setResult(RESULT_OK);
- finish();
- }
-
- @Override
- public void onError(Throwable e) {
- getDialogManager().dismissDialog();
- dealWithLoginError(e);
- }
- });
- StatisticManager.Instance().onEvent(this,
- StatisticsProtocol.EVENT_LOGIN_WX_CLICK, "点击微信登录", null);
-
- }
-
- protected void qqLogin() {
- // 易盾保护 token
-// String yiDunToken = watchman.getToken(XChatConstants.YI_DUN_BUSINESS_ID);
- // 数美天网 deviceId
-// String shuMeiDeviceId = SmAntiFraud.getDeviceId();
- String yiDunToken = "";
- String shuMeiDeviceId = "";
-
- getDialogManager().showProgressDialog(this, "请稍后");
- AuthModel.get()
- .qqLogin(yiDunToken, shuMeiDeviceId)
- .subscribe(new SingleObserver() {
- @Override
- public void onSubscribe(Disposable d) {
- mCompositeDisposable.add(d);
- }
-
- @Override
- public void onSuccess(String s) {
- getDialogManager().dismissDialog();
- setResult(RESULT_OK);
- finish();
- }
-
- @Override
- public void onError(Throwable e) {
- getDialogManager().dismissDialog();
- dealWithLoginError(e);
- }
- });
- StatisticManager.Instance().onEvent(this,
- StatisticsProtocol.EVENT_LOGIN_QQ_CLICK, "点击qq登录", null);
-
- }
-
- public abstract void dealWithLoginError(Throwable e);
-
- @Override
- protected boolean needSteepStateBar() {
- return true;
- }
-
- @Override
- protected void setStatusBar() {
- StatusBarUtil.transparencyBar(this);
- StatusBarUtil.StatusBarLightMode(this);
- }
-}
diff --git a/app/src/main/java/com/yizhuan/erban/ui/login/BindCodeActivity.java b/app/src/main/java/com/yizhuan/erban/ui/login/BindCodeActivity.java
index 385afe49d..790821da5 100644
--- a/app/src/main/java/com/yizhuan/erban/ui/login/BindCodeActivity.java
+++ b/app/src/main/java/com/yizhuan/erban/ui/login/BindCodeActivity.java
@@ -20,7 +20,7 @@ import androidx.core.content.ContextCompat;
import com.coorchice.library.utils.LogUtils;
import com.trello.rxlifecycle3.android.ActivityEvent;
import com.yizhuan.erban.R;
-import com.yizhuan.erban.base.BaseLoginAct;
+import com.yizhuan.erban.base.BaseActivity;
import com.yizhuan.erban.ui.login.ui.CodeEditText;
import com.yizhuan.xchat_android_core.auth.AuthModel;
import com.yizhuan.xchat_android_core.auth.exception.BanAccountException;
@@ -48,7 +48,7 @@ import io.reactivex.disposables.Disposable;
* @author zhouxiangfeng
* @date 17/2/26
*/
-public class BindCodeActivity extends BaseLoginAct {
+public class BindCodeActivity extends BaseActivity {
private static final String TYPE_SMS = "1";
private CodeEditText codeEt;
@@ -171,44 +171,12 @@ public class BindCodeActivity extends BaseLoginAct {
@Override
public void onError(Throwable e) {
toast(e.getMessage());
-// finish();
LogUtils.e("获取短信失败!");
}
});
}
- @Override
- public void dealWithLoginError(Throwable e) {
- if (!(e instanceof IsSuperAdminException)) {
- String msg = e.getMessage();
- StringBuilder eventLabel = new StringBuilder("登录注册页-登录失败");
- if (!TextUtils.isEmpty(msg)) {
- eventLabel.append(msg);
- }
- // 2004可以完整写入
- StatisticManager.Instance().onEvent(StatisticsProtocol.EVENT_LOGIN_FAILED_CLICK, eventLabel.toString());
- }
- if (e instanceof BanAccountException) {
- isSuperAdmin = false;
- BanAccountException exception = (BanAccountException) e;
- String text = "您的账号因" + exception.getMessage() + "被封禁\n解封时间:";
- int start = text.length();
- SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy年MM月dd日", Locale.getDefault());
- text += simpleDateFormat.format(new Date(exception.getDate()));
- SpannableString spannableString = new SpannableString(text);
- spannableString.setSpan(new ForegroundColorSpan(ContextCompat.getColor(BindCodeActivity.this, R.color.appColor)),
- start, text.length(), Spannable.SPAN_INCLUSIVE_EXCLUSIVE);
- getDialogManager().showOkCancelWithTitleDialog("您被封号了",
- spannableString, "确定", "取消", null);
- } else if (e instanceof IOException) {
- toast("网络异常,请检查您的网络再试~");
- } else {
- isSuperAdmin = false;
- toast(e.getMessage());
- }
- }
-
private void startCountDownTimer() {
stopCountDownTimer();
timer = new CodeDownDescTimer(tvSecond, tvGetCode, 60000, 1000);
diff --git a/app/src/main/java/com/yizhuan/erban/ui/login/LoginActivity.java b/app/src/main/java/com/yizhuan/erban/ui/login/LoginActivity.java
new file mode 100644
index 000000000..99fc83e60
--- /dev/null
+++ b/app/src/main/java/com/yizhuan/erban/ui/login/LoginActivity.java
@@ -0,0 +1,247 @@
+package com.yizhuan.erban.ui.login;
+
+import android.content.Context;
+import android.content.Intent;
+import android.graphics.Color;
+import android.os.Bundle;
+import android.text.SpannableString;
+import android.text.Spanned;
+import android.text.method.LinkMovementMethod;
+import android.text.style.ForegroundColorSpan;
+import android.view.KeyEvent;
+import android.view.View;
+import android.widget.CheckBox;
+import android.widget.TextView;
+
+import androidx.annotation.NonNull;
+import androidx.core.content.ContextCompat;
+
+import com.netease.nim.uikit.StatusBarUtil;
+import com.trello.rxlifecycle3.android.ActivityEvent;
+import com.yizhuan.erban.R;
+import com.yizhuan.erban.base.BaseActivity;
+import com.yizhuan.erban.common.widget.OriginalDrawStatusClickSpan;
+import com.yizhuan.erban.ui.login.helper.LogoutHelper;
+import com.yizhuan.erban.ui.webview.CommonWebViewActivity;
+import com.yizhuan.xchat_android_core.DemoCache;
+import com.yizhuan.xchat_android_core.UriProvider;
+import com.yizhuan.xchat_android_core.auth.AuthModel;
+import com.yizhuan.xchat_android_core.auth.event.LoginEvent;
+
+import org.greenrobot.eventbus.EventBus;
+import org.greenrobot.eventbus.Subscribe;
+import org.greenrobot.eventbus.ThreadMode;
+
+import io.reactivex.SingleObserver;
+import io.reactivex.disposables.Disposable;
+
+public class LoginActivity extends BaseActivity implements View.OnClickListener {
+
+
+ private static final String NEED_CHECKED_PROTOCOL = "need_checked_protocol";
+ protected CheckBox tvProtocol;
+ private TextView tvProtocolHint;
+
+ public static void start(Context context) {
+ Intent intent = new Intent(context, LoginActivity.class);
+ context.startActivity(intent);
+ }
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.activity_login);
+ EventBus.getDefault().register(this);
+ onFindViews();
+ onSetListener();
+ setProtocol();
+
+ }
+
+ private void onFindViews() {
+ tvProtocol = findViewById(R.id.tv_protocol);
+ tvProtocolHint = findViewById(R.id.tv_protocol_hint);
+ }
+
+ private void onSetListener() {
+ findViewById(R.id.tv_facebook).setOnClickListener(this);
+ findViewById(R.id.tv_line).setOnClickListener(this);
+ findViewById(R.id.tv_google).setOnClickListener(this);
+ findViewById(R.id.tv_others).setOnClickListener(this);
+ }
+
+ protected void setProtocol() {
+ String privacyAgreementTip = context.getString(R.string.tip_privacy_agreement);
+ String userAgreementTip = context.getString(R.string.tip_user_agreement);
+ String privacyAgreementDescTip = context.getString(R.string.text_login_protocol, privacyAgreementTip, userAgreementTip);
+ SpannableString ss = new SpannableString(privacyAgreementDescTip);
+ int privacyAgreementTipIndex = privacyAgreementDescTip.indexOf(privacyAgreementTip);
+ int userAgreementTipIndex = privacyAgreementDescTip.indexOf(userAgreementTip);
+
+
+ ss.setSpan(new ForegroundColorSpan(ContextCompat.getColor(context, R.color.color_2D93FF)), privacyAgreementTipIndex, privacyAgreementTipIndex + privacyAgreementTip.length(), Spanned.SPAN_INCLUSIVE_EXCLUSIVE);
+ ss.setSpan(new OriginalDrawStatusClickSpan(ContextCompat.getColor(context, R.color.color_2D93FF)) {
+ @Override
+ public void onClick(@NonNull View widget) {
+ if (widget instanceof TextView)
+ ((TextView) widget).setHighlightColor(getResources().getColor(android.R.color.transparent));
+
+ CommonWebViewActivity.start(context, UriProvider.getPrivacyAgreement());
+ }
+ }, privacyAgreementTipIndex, privacyAgreementTipIndex + privacyAgreementTip.length(), Spanned.SPAN_INCLUSIVE_EXCLUSIVE);
+ ss.setSpan(new ForegroundColorSpan(ContextCompat.getColor(context, R.color.color_2D93FF)), userAgreementTipIndex, userAgreementTipIndex + userAgreementTip.length(), Spanned.SPAN_INCLUSIVE_EXCLUSIVE);
+ ss.setSpan(new OriginalDrawStatusClickSpan(ContextCompat.getColor(context, R.color.color_2D93FF)) {
+ @Override
+ public void onClick(@NonNull View widget) {
+
+ if (widget instanceof TextView)
+ ((TextView) widget).setHighlightColor(getResources().getColor(android.R.color.transparent));
+ CommonWebViewActivity.start(context, UriProvider.getUserProtocolUrl());
+ }
+ }, userAgreementTipIndex, userAgreementTipIndex + privacyAgreementTip.length(), Spanned.SPAN_INCLUSIVE_EXCLUSIVE);
+
+ tvProtocol.setText(ss);
+ tvProtocol.setHighlightColor(Color.TRANSPARENT);
+ tvProtocol.setMovementMethod(new LinkMovementMethod());
+
+ if (DemoCache.readBoolean(NEED_CHECKED_PROTOCOL, false)) {
+ tvProtocol.setChecked(true);
+ }
+
+ tvProtocol.setOnCheckedChangeListener((buttonView, isChecked) -> {
+ if (isChecked) {
+ tvProtocolHint.setVisibility(View.GONE);
+ DemoCache.saveBoolean(NEED_CHECKED_PROTOCOL, true);
+ }
+ });
+ }
+
+ @Override
+ public void onClick(View v) {
+ if (!tvProtocol.isChecked()) {
+ tvProtocolHint.setVisibility(View.VISIBLE);
+ return;
+ }
+
+ switch (v.getId()) {
+ case R.id.tv_facebook:
+ getDialogManager().showProgressDialog(this);
+ AuthModel.get().facebookLogin()
+ .compose(bindUntilEvent(ActivityEvent.DESTROY))
+ .subscribe(new SingleObserver() {
+ @Override
+ public void onSubscribe(Disposable d) {
+
+ }
+
+ @Override
+ public void onSuccess(String s) {
+ getDialogManager().dismissDialog();
+ finish();
+ }
+
+ @Override
+ public void onError(Throwable e) {
+ getDialogManager().dismissDialog();
+ dealWithLoginError(e);
+ }
+ });
+ break;
+ case R.id.tv_line:
+ getDialogManager().showProgressDialog(this);
+ AuthModel.get().lineLogin()
+ .compose(bindUntilEvent(ActivityEvent.DESTROY))
+ .subscribe(new SingleObserver() {
+ @Override
+ public void onSubscribe(Disposable d) {
+
+ }
+
+ @Override
+ public void onSuccess(String s) {
+ getDialogManager().dismissDialog();
+ finish();
+ }
+
+ @Override
+ public void onError(Throwable e) {
+ getDialogManager().dismissDialog();
+ dealWithLoginError(e);
+ }
+ });
+ break;
+
+ case R.id.tv_google:
+ getDialogManager().showProgressDialog(this);
+ AuthModel.get().googleLogin()
+ .compose(bindUntilEvent(ActivityEvent.DESTROY))
+ .subscribe(new SingleObserver() {
+ @Override
+ public void onSubscribe(Disposable d) {
+
+ }
+
+ @Override
+ public void onSuccess(String s) {
+ getDialogManager().dismissDialog();
+ finish();
+ }
+
+ @Override
+ public void onError(Throwable e) {
+ getDialogManager().dismissDialog();
+ dealWithLoginError(e);
+ e.printStackTrace();
+ }
+ });
+
+ break;
+ case R.id.tv_others:
+ LoginPasswordActivity.start(LoginActivity.this);
+ break;
+ }
+
+ }
+
+ @Override
+ protected void setStatusBar() {
+ super.setStatusBar();
+ StatusBarUtil.transparencyBar(this);
+ StatusBarUtil.StatusBarLightMode(this);
+ }
+
+ @Override
+ protected boolean needSteepStateBar() {
+ return true;
+ }
+
+ public void dealWithLoginError(Throwable e) {
+ LogoutHelper.dealWithLoginError(this, e);
+ }
+
+ @Override
+ public boolean onKeyDown(int keyCode, KeyEvent event) {
+ if (keyCode == KeyEvent.KEYCODE_BACK) {
+ moveTaskToBack(true);
+ return true;
+ }
+ return super.onKeyDown(keyCode, event);
+ }
+
+ @Override
+ protected void onDestroy() {
+ super.onDestroy();
+ EventBus.getDefault().unregister(this);
+ }
+
+ /**
+ * 注册成功后发送过来的事件
+ */
+ @Subscribe(threadMode = ThreadMode.MAIN)
+ public void onLoginEvent(LoginEvent event) {
+ getDialogManager().dismissDialog();
+ setResult(RESULT_OK);
+ finish();
+ }
+
+}
diff --git a/app/src/main/java/com/yizhuan/erban/ui/login/LoginCodeActivity.java b/app/src/main/java/com/yizhuan/erban/ui/login/LoginCodeActivity.java
index ea29c6685..a743984e9 100644
--- a/app/src/main/java/com/yizhuan/erban/ui/login/LoginCodeActivity.java
+++ b/app/src/main/java/com/yizhuan/erban/ui/login/LoginCodeActivity.java
@@ -21,7 +21,8 @@ import com.coorchice.library.utils.LogUtils;
import com.netease.nim.uikit.StatusBarUtil;
import com.trello.rxlifecycle3.android.ActivityEvent;
import com.yizhuan.erban.R;
-import com.yizhuan.erban.base.BaseLoginAct;
+import com.yizhuan.erban.base.BaseActivity;
+import com.yizhuan.erban.ui.login.helper.LogoutHelper;
import com.yizhuan.erban.ui.login.ui.CodeEditText;
import com.yizhuan.xchat_android_core.auth.AuthModel;
import com.yizhuan.xchat_android_core.auth.event.LoginEvent;
@@ -49,10 +50,8 @@ import io.reactivex.disposables.Disposable;
* @author zhouxiangfeng
* @date 17/2/26
*/
-public class LoginCodeActivity extends BaseLoginAct {
+public class LoginCodeActivity extends BaseActivity {
- private static final String TAG = "LoginVertificationActivity";
- private static final String TYPE_SMS = "1";
private CodeEditText codeEt;
private TextView tvGetCode, tvDesc, tvSecond;
private String mPhone;
@@ -182,16 +181,12 @@ public class LoginCodeActivity extends BaseLoginAct {
private void login() {
String smsCode = codeEt.getText().toString();
getDialogManager().showProgressDialog(this, "正在登录...");
- // 易盾保护 token 登录
-// String yiDunLoginToken = watchman.getToken(XChatConstants.YI_DUN_LOGIN_BUSINESS_ID);
- // 数美天网 deviceId
-// String shuMeiDeviceId = SmAntiFraud.getDeviceId();
AuthModel.get().login(
- mPhone,
- "",
- smsCode,
- "",
- "")
+ mPhone,
+ "",
+ smsCode,
+ "",
+ "")
.subscribe(new SingleObserver() {
@Override
public void onSubscribe(Disposable d) {
@@ -217,47 +212,8 @@ public class LoginCodeActivity extends BaseLoginAct {
StatisticsProtocol.EVENT_LOGIN_PHONE_CLICK, "点击手机号登录", null);
}
- @Override
public void dealWithLoginError(Throwable e) {
- if (!(e instanceof IsSuperAdminException)) {
- String msg = e.getMessage();
- StringBuilder eventLabel = new StringBuilder("登录注册页-登录失败");
- if (!TextUtils.isEmpty(msg)) {
- eventLabel.append(msg);
- }
- // 2004可以完整写入
- StatisticManager.Instance().onEvent(StatisticsProtocol.EVENT_LOGIN_FAILED_CLICK, eventLabel.toString());
- }
- if (e instanceof BanAccountException) {
- isSuperAdmin = false;
- BanAccountException exception = (BanAccountException) e;
- String text = "您的账号因" + exception.getMessage() + "被封禁\n解封时间:";
- int start = text.length();
- SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy年MM月dd日", Locale.getDefault());
- text += simpleDateFormat.format(new Date(exception.getDate()));
- SpannableString spannableString = new SpannableString(text);
- spannableString.setSpan(new ForegroundColorSpan(ContextCompat.getColor(LoginCodeActivity.this, R.color.appColor)),
- start, text.length(), Spannable.SPAN_INCLUSIVE_EXCLUSIVE);
- getDialogManager().showOkCancelWithTitleDialog("您被封号了",
- spannableString, "确定", "取消", null);
- } else if (e instanceof AccountCancelException) {
- AccountCancelException exception = (AccountCancelException) e;
- SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy年MM月dd日", Locale.getDefault());
-
- String text = "注销时间:" + simpleDateFormat.format(new Date(exception.getCancelDate()));
- int end = text.length();
- text += "\n\n请联系客服(微信:yinyoukefu01)处理哦~";
- SpannableString spannableString = new SpannableString(text);
- spannableString.setSpan(new ForegroundColorSpan(ContextCompat.getColor(LoginCodeActivity.this, R.color.appColor)),
- 0, end, Spannable.SPAN_INCLUSIVE_EXCLUSIVE);
- getDialogManager().showOkWithTitleDialog("该账号已注销",
- spannableString, "我知道了", true, null);
- } else if (e instanceof IOException) {
- toast("网络异常,请检查您的网络再试~");
- } else {
- isSuperAdmin = false;
- toast(e.getMessage());
- }
+ LogoutHelper.dealWithLoginError(this, e);
}
private void startCountDownTimer() {
diff --git a/app/src/main/java/com/yizhuan/erban/ui/login/LoginPasswordActivity.java b/app/src/main/java/com/yizhuan/erban/ui/login/LoginPasswordActivity.java
index 2472ab4fa..2752ad3dc 100644
--- a/app/src/main/java/com/yizhuan/erban/ui/login/LoginPasswordActivity.java
+++ b/app/src/main/java/com/yizhuan/erban/ui/login/LoginPasswordActivity.java
@@ -15,9 +15,8 @@ import android.widget.EditText;
import androidx.core.content.ContextCompat;
import com.yizhuan.erban.R;
-import com.yizhuan.erban.base.BaseLoginAct;
-import com.yizhuan.erban.common.widget.dialog.DialogManager;
-import com.yizhuan.erban.quick_pass.QuickPassLoginAct;
+import com.yizhuan.erban.base.BaseActivity;
+import com.yizhuan.erban.ui.login.helper.LogoutHelper;
import com.yizhuan.erban.ui.setting.ResetPasswordActivity;
import com.yizhuan.xchat_android_core.auth.AuthModel;
import com.yizhuan.xchat_android_core.auth.event.LoginEvent;
@@ -41,7 +40,7 @@ import io.reactivex.SingleObserver;
import io.reactivex.disposables.Disposable;
-public class LoginPasswordActivity extends BaseLoginAct {
+public class LoginPasswordActivity extends BaseActivity {
private View btnNext;
@@ -73,7 +72,6 @@ public class LoginPasswordActivity extends BaseLoginAct {
btnNext.setEnabled(enabled);
}
-
private void initView() {
btnNext = findViewById(R.id.btn_next);
edtPhone = findViewById(R.id.et_account);
@@ -82,7 +80,6 @@ public class LoginPasswordActivity extends BaseLoginAct {
edtPassword.addTextChangedListener(textWatcher);
btnNext.setOnClickListener(v -> login());
findViewById(R.id.iv_back).setOnClickListener(v -> finish());
- findViewById(R.id.tv_code_login).setOnClickListener(v -> finish());
findViewById(R.id.tv_forget_password).setOnClickListener(v -> ResetPasswordActivity.start(context, ResetPasswordActivity.FROM_NOT_LOGIN));
}
@@ -95,11 +92,11 @@ public class LoginPasswordActivity extends BaseLoginAct {
private void login() {
getDialogManager().showProgressDialog(this, "正在登录...");
AuthModel.get().login(
- edtPhone.getText().toString().trim(),
- edtPassword.getText().toString().trim(),
- "",
- "",
- "")
+ edtPhone.getText().toString().trim(),
+ edtPassword.getText().toString().trim(),
+ "",
+ "",
+ "")
.subscribe(new SingleObserver() {
@Override
public void onSubscribe(Disposable d) {
@@ -119,50 +116,10 @@ public class LoginPasswordActivity extends BaseLoginAct {
dealWithLoginError(e);
}
});
-
- StatisticManager.Instance().onEvent(this,
- StatisticsProtocol.EVENT_LOGIN_PHONE_CLICK, "点击手机号登录", null);
}
- @Override
public void dealWithLoginError(Throwable e) {
- if (!(e instanceof IsSuperAdminException)) {
- String msg = e.getMessage();
- StringBuilder eventLabel = new StringBuilder("登录注册页-登录失败");
- if (!TextUtils.isEmpty(msg)) {
- eventLabel.append(msg);
- }
- // 2004可以完整写入
- StatisticManager.Instance().onEvent(StatisticsProtocol.EVENT_LOGIN_FAILED_CLICK, eventLabel.toString());
- }
- if (e instanceof BanAccountException) {
- BanAccountException exception = (BanAccountException) e;
- String text = "您的账号因" + exception.getMessage() + "被封禁\n解封时间:";
- int start = text.length();
- SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy年MM月dd日", Locale.getDefault());
- text += simpleDateFormat.format(new Date(exception.getDate()));
- SpannableString spannableString = new SpannableString(text);
- spannableString.setSpan(new ForegroundColorSpan(ContextCompat.getColor(LoginPasswordActivity.this, R.color.appColor)),
- start, text.length(), Spannable.SPAN_INCLUSIVE_EXCLUSIVE);
- getDialogManager().showOkCancelWithTitleDialog("您被封号了",
- spannableString, "确定", "取消", null);
- } else if (e instanceof AccountCancelException) {
- AccountCancelException exception = (AccountCancelException) e;
- SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy年MM月dd日", Locale.getDefault());
-
- String text = "注销时间:" + simpleDateFormat.format(new Date(exception.getCancelDate()));
- int end = text.length();
- text += "\n\n请联系客服(微信:yinyoukefu01)处理哦~";
- SpannableString spannableString = new SpannableString(text);
- spannableString.setSpan(new ForegroundColorSpan(ContextCompat.getColor(LoginPasswordActivity.this, R.color.appColor)),
- 0, end, Spannable.SPAN_INCLUSIVE_EXCLUSIVE);
- getDialogManager().showOkWithTitleDialog("该账号已注销",
- spannableString, "我知道了", true, null);
- } else if (e instanceof IOException) {
- toast("网络异常,请检查您的网络再试~");
- } else {
- toast(e.getMessage());
- }
+ LogoutHelper.dealWithLoginError(this, e);
}
/**
diff --git a/app/src/main/java/com/yizhuan/erban/ui/login/helper/LogoutHelper.java b/app/src/main/java/com/yizhuan/erban/ui/login/helper/LogoutHelper.java
index cbda8a319..b928f8b9c 100644
--- a/app/src/main/java/com/yizhuan/erban/ui/login/helper/LogoutHelper.java
+++ b/app/src/main/java/com/yizhuan/erban/ui/login/helper/LogoutHelper.java
@@ -1,7 +1,27 @@
package com.yizhuan.erban.ui.login.helper;
+import android.text.Spannable;
+import android.text.SpannableString;
+import android.text.TextUtils;
+import android.text.style.ForegroundColorSpan;
+
+import androidx.core.content.ContextCompat;
+
+import com.yizhuan.erban.R;
+import com.yizhuan.erban.base.BaseActivity;
+import com.yizhuan.erban.ui.login.LoginActivity;
import com.yizhuan.xchat_android_core.PreferencesUtils;
import com.yizhuan.xchat_android_core.auth.AuthModel;
+import com.yizhuan.xchat_android_core.auth.exception.AccountCancelException;
+import com.yizhuan.xchat_android_core.auth.exception.BanAccountException;
+import com.yizhuan.xchat_android_core.auth.exception.IsSuperAdminException;
+import com.yizhuan.xchat_android_core.statistic.StatisticManager;
+import com.yizhuan.xchat_android_core.statistic.protocol.StatisticsProtocol;
+
+import java.io.IOException;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import java.util.Locale;
/**
* create by lvzebiao @2019/12/9
@@ -13,4 +33,44 @@ public class LogoutHelper {
PreferencesUtils.setFristQQ(true);
}
+ public static void dealWithLoginError(BaseActivity activity,Throwable e){
+ if (!(e instanceof IsSuperAdminException)) {
+ String msg = e.getMessage();
+ StringBuilder eventLabel = new StringBuilder("登录注册页-登录失败");
+ if (!TextUtils.isEmpty(msg)) {
+ eventLabel.append(msg);
+ }
+ // 2004可以完整写入
+ StatisticManager.Instance().onEvent(StatisticsProtocol.EVENT_LOGIN_FAILED_CLICK, eventLabel.toString());
+ }
+ if (e instanceof BanAccountException) {
+ BanAccountException exception = (BanAccountException) e;
+ String text = "您的账号因" + exception.getMessage() + "被封禁\n解封时间:";
+ int start = text.length();
+ SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy年MM月dd日", Locale.getDefault());
+ text += simpleDateFormat.format(new Date(exception.getDate()));
+ SpannableString spannableString = new SpannableString(text);
+ spannableString.setSpan(new ForegroundColorSpan(ContextCompat.getColor(activity, R.color.appColor)),
+ start, text.length(), Spannable.SPAN_INCLUSIVE_EXCLUSIVE);
+ activity.getDialogManager().showOkCancelWithTitleDialog("您被封号了",
+ spannableString, "确定", "取消", null);
+ } else if (e instanceof AccountCancelException) {
+ AccountCancelException exception = (AccountCancelException) e;
+ SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy年MM月dd日", Locale.getDefault());
+
+ String text = "注销时间:" + simpleDateFormat.format(new Date(exception.getCancelDate()));
+ int end = text.length();
+ text += "\n\n请联系客服(微信:yinyoukefu01)处理哦~";
+ SpannableString spannableString = new SpannableString(text);
+ spannableString.setSpan(new ForegroundColorSpan(ContextCompat.getColor(activity, R.color.appColor)),
+ 0, end, Spannable.SPAN_INCLUSIVE_EXCLUSIVE);
+ activity.getDialogManager().showOkWithTitleDialog("该账号已注销",
+ spannableString, "我知道了", true, null);
+ } else if (e instanceof IOException) {
+ activity.toast("网络异常,请检查您的网络再试~");
+ } else {
+ activity.toast(e.getMessage());
+ }
+ }
+
}
diff --git a/app/src/main/res/drawable-xhdpi/bg_login.png b/app/src/main/res/drawable-xhdpi/bg_login.png
new file mode 100644
index 000000000..3d5a9fbab
Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/bg_login.png differ
diff --git a/app/src/main/res/drawable-xhdpi/ic_female_normal.png b/app/src/main/res/drawable-xhdpi/ic_female_normal.png
index 8cac92405..202537396 100644
Binary files a/app/src/main/res/drawable-xhdpi/ic_female_normal.png and b/app/src/main/res/drawable-xhdpi/ic_female_normal.png differ
diff --git a/app/src/main/res/drawable-xhdpi/ic_female_press.png b/app/src/main/res/drawable-xhdpi/ic_female_press.png
index bd7dbb0f0..9753faf08 100644
Binary files a/app/src/main/res/drawable-xhdpi/ic_female_press.png and b/app/src/main/res/drawable-xhdpi/ic_female_press.png differ
diff --git a/app/src/main/res/drawable-xhdpi/ic_login_arrow_right.png b/app/src/main/res/drawable-xhdpi/ic_login_arrow_right.png
new file mode 100644
index 000000000..f59290636
Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/ic_login_arrow_right.png differ
diff --git a/app/src/main/res/drawable-xhdpi/ic_login_checked.png b/app/src/main/res/drawable-xhdpi/ic_login_checked.png
index 2b7e1f3dd..a9219d95b 100644
Binary files a/app/src/main/res/drawable-xhdpi/ic_login_checked.png and b/app/src/main/res/drawable-xhdpi/ic_login_checked.png differ
diff --git a/app/src/main/res/drawable-xhdpi/ic_login_facebook.png b/app/src/main/res/drawable-xhdpi/ic_login_facebook.png
new file mode 100644
index 000000000..e7c902acd
Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/ic_login_facebook.png differ
diff --git a/app/src/main/res/drawable-xhdpi/ic_login_google.png b/app/src/main/res/drawable-xhdpi/ic_login_google.png
new file mode 100644
index 000000000..900d6094a
Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/ic_login_google.png differ
diff --git a/app/src/main/res/drawable-xhdpi/ic_login_line.png b/app/src/main/res/drawable-xhdpi/ic_login_line.png
new file mode 100644
index 000000000..07b6ca3ef
Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/ic_login_line.png differ
diff --git a/app/src/main/res/drawable-xhdpi/ic_login_next.png b/app/src/main/res/drawable-xhdpi/ic_login_next.png
new file mode 100644
index 000000000..8bfd840d4
Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/ic_login_next.png differ
diff --git a/app/src/main/res/drawable-xhdpi/ic_male_normal.png b/app/src/main/res/drawable-xhdpi/ic_male_normal.png
index 5ad5aeb61..fdb1e08cc 100644
Binary files a/app/src/main/res/drawable-xhdpi/ic_male_normal.png and b/app/src/main/res/drawable-xhdpi/ic_male_normal.png differ
diff --git a/app/src/main/res/drawable-xhdpi/ic_male_press.png b/app/src/main/res/drawable-xhdpi/ic_male_press.png
index fd798bc28..acfcf6a70 100644
Binary files a/app/src/main/res/drawable-xhdpi/ic_male_press.png and b/app/src/main/res/drawable-xhdpi/ic_male_press.png differ
diff --git a/app/src/main/res/drawable-xhdpi/ic_random_nick.png b/app/src/main/res/drawable-xhdpi/ic_random_nick.png
index f64d36a94..6254c301d 100644
Binary files a/app/src/main/res/drawable-xhdpi/ic_random_nick.png and b/app/src/main/res/drawable-xhdpi/ic_random_nick.png differ
diff --git a/app/src/main/res/drawable/bg_common_confirm_normal.xml b/app/src/main/res/drawable/bg_common_confirm_normal.xml
index 7e12fa04d..d2d66ddcf 100644
--- a/app/src/main/res/drawable/bg_common_confirm_normal.xml
+++ b/app/src/main/res/drawable/bg_common_confirm_normal.xml
@@ -4,10 +4,10 @@
-
+
\ No newline at end of file
diff --git a/app/src/main/res/drawable/bg_common_confirm_press.xml b/app/src/main/res/drawable/bg_common_confirm_press.xml
index 19fd43ceb..979f905ee 100644
--- a/app/src/main/res/drawable/bg_common_confirm_press.xml
+++ b/app/src/main/res/drawable/bg_common_confirm_press.xml
@@ -4,11 +4,11 @@
-
+
\ No newline at end of file
diff --git a/app/src/main/res/drawable/shape_login_btn_bg.xml b/app/src/main/res/drawable/shape_login_btn_bg.xml
new file mode 100644
index 000000000..e71c6d975
--- /dev/null
+++ b/app/src/main/res/drawable/shape_login_btn_bg.xml
@@ -0,0 +1,10 @@
+
+
+
+
+
diff --git a/app/src/module_quick_pass/res/drawable/bg_normal.xml b/app/src/main/res/drawable/shape_white_top_25dp.xml
similarity index 50%
rename from app/src/module_quick_pass/res/drawable/bg_normal.xml
rename to app/src/main/res/drawable/shape_white_top_25dp.xml
index 865401980..6505c6057 100644
--- a/app/src/module_quick_pass/res/drawable/bg_normal.xml
+++ b/app/src/main/res/drawable/shape_white_top_25dp.xml
@@ -1,5 +1,7 @@
-
+
+
\ No newline at end of file
diff --git a/app/src/module_quick_pass/res/layout/activity_give_gold_to_user.xml b/app/src/main/res/layout/activity_give_gold_to_user.xml
similarity index 100%
rename from app/src/module_quick_pass/res/layout/activity_give_gold_to_user.xml
rename to app/src/main/res/layout/activity_give_gold_to_user.xml
diff --git a/app/src/main/res/layout/activity_login.xml b/app/src/main/res/layout/activity_login.xml
new file mode 100644
index 000000000..a46fd7ffe
--- /dev/null
+++ b/app/src/main/res/layout/activity_login.xml
@@ -0,0 +1,141 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/main/res/layout/activity_login_password.xml b/app/src/main/res/layout/activity_login_password.xml
index 58931611a..0f76c26b6 100644
--- a/app/src/main/res/layout/activity_login_password.xml
+++ b/app/src/main/res/layout/activity_login_password.xml
@@ -6,139 +6,148 @@
android:layout_height="match_parent"
android:background="@color/bg_normal_1c1b22">
-
-
-
-
-
-
+
+
+
+
+ app:layout_constraintTop_toBottomOf="@id/view_top">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ android:layout_height="wrap_content"
+ android:layout_gravity="end"
+ android:layout_marginTop="@dimen/dp_15"
+ android:layout_marginEnd="33dp"
+ android:text="忘记密码"
+ android:textColor="#B3B3C3"
+ android:textSize="@dimen/sp_14" />
+
+
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/app/src/module_quick_pass/res/layout/dialog_give_gold_password.xml b/app/src/main/res/layout/dialog_give_gold_password.xml
similarity index 100%
rename from app/src/module_quick_pass/res/layout/dialog_give_gold_password.xml
rename to app/src/main/res/layout/dialog_give_gold_password.xml
diff --git a/app/src/main/res/layout/fragment_add_user_info.xml b/app/src/main/res/layout/fragment_add_user_info.xml
index cc19edb7d..b53055d01 100644
--- a/app/src/main/res/layout/fragment_add_user_info.xml
+++ b/app/src/main/res/layout/fragment_add_user_info.xml
@@ -8,46 +8,117 @@
android:gravity="center_horizontal"
android:orientation="vertical">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ app:layout_constraintStart_toStartOf="parent" />
+ app:layout_constraintStart_toStartOf="parent" />
-
-
-
-
-
-
-
-
-
-
-
-
+ app:layout_constraintStart_toStartOf="parent" />
-
-
-
+ app:layout_constraintStart_toStartOf="parent"
+ tools:ignore="SpUsage" />
\ No newline at end of file
diff --git a/app/src/module_quick_pass/res/layout/item_red_package_gift_top.xml b/app/src/main/res/layout/item_red_package_gift_top.xml
similarity index 100%
rename from app/src/module_quick_pass/res/layout/item_red_package_gift_top.xml
rename to app/src/main/res/layout/item_red_package_gift_top.xml
diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml
index 514a89768..38473edee 100644
--- a/app/src/main/res/values/colors.xml
+++ b/app/src/main/res/values/colors.xml
@@ -568,7 +568,7 @@
#E8E8F6
- #FF333333
+ #1F1A4E
#FF333333
diff --git a/app/src/module_quick_pass/java/com/yizhuan/erban/quick_pass/ProtocolDialog.java b/app/src/module_quick_pass/java/com/yizhuan/erban/quick_pass/ProtocolDialog.java
deleted file mode 100644
index 0be5784f1..000000000
--- a/app/src/module_quick_pass/java/com/yizhuan/erban/quick_pass/ProtocolDialog.java
+++ /dev/null
@@ -1,88 +0,0 @@
-package com.yizhuan.erban.quick_pass;
-
-import android.content.Context;
-import android.graphics.Color;
-import android.os.Bundle;
-import android.text.SpannableString;
-import android.text.Spanned;
-import android.text.method.LinkMovementMethod;
-import android.text.style.ForegroundColorSpan;
-import android.view.View;
-import android.widget.TextView;
-
-import androidx.annotation.NonNull;
-import androidx.core.content.ContextCompat;
-
-import com.yizhuan.erban.R;
-import com.yizhuan.erban.base.BaseDialog;
-import com.yizhuan.erban.common.widget.OriginalDrawStatusClickSpan;
-import com.yizhuan.erban.databinding.DialogProtocolBinding;
-import com.yizhuan.erban.ui.webview.CommonWebViewActivity;
-import com.yizhuan.xchat_android_core.UriProvider;
-
-public class ProtocolDialog extends BaseDialog {
-
- public static ProtocolDialog newInstance() {
- return new ProtocolDialog();
- }
-
- private View.OnClickListener onClickListener;
-
- public void setOnClickListener(View.OnClickListener onClickListener) {
- this.onClickListener = onClickListener;
- }
-
- @Override
- public void init() {
- setProtocol();
- getBinding().btnCancel.setOnClickListener(v -> {
- if (onClickListener != null){
- onClickListener.onClick(v);
- }
- dismissAllowingStateLoss();
- });
- getBinding().btnOk.setOnClickListener(v -> {
- if (onClickListener != null){
- onClickListener.onClick(v);
- }
- dismissAllowingStateLoss();
- });
- }
-
- protected void setProtocol() {
- Context context = requireContext();
-
- String privacyAgreementTip = context.getString(R.string.tip_privacy_agreement);
- String userAgreementTip = context.getString(R.string.tip_user_agreement);
- String privacyAgreementDescTip = context.getString(R.string.text_login_protocol_3, privacyAgreementTip, userAgreementTip);
- SpannableString ss = new SpannableString(privacyAgreementDescTip);
- int privacyAgreementTipIndex = privacyAgreementDescTip.indexOf(privacyAgreementTip);
- int userAgreementTipIndex = privacyAgreementDescTip.indexOf(userAgreementTip);
-
-
- ss.setSpan(new ForegroundColorSpan(ContextCompat.getColor(context, R.color.appColor)), privacyAgreementTipIndex, privacyAgreementTipIndex + privacyAgreementTip.length(), Spanned.SPAN_INCLUSIVE_EXCLUSIVE);
- ss.setSpan(new OriginalDrawStatusClickSpan(ContextCompat.getColor(context, R.color.appColor)) {
- @Override
- public void onClick(@NonNull View widget) {
- if (widget instanceof TextView)
- ((TextView) widget).setHighlightColor(getResources().getColor(android.R.color.transparent));
-
- CommonWebViewActivity.start(context, UriProvider.getPrivacyAgreement());
- }
- }, privacyAgreementTipIndex, privacyAgreementTipIndex + privacyAgreementTip.length(), Spanned.SPAN_INCLUSIVE_EXCLUSIVE);
- ss.setSpan(new ForegroundColorSpan(ContextCompat.getColor(context, R.color.appColor)), userAgreementTipIndex, userAgreementTipIndex + userAgreementTip.length(), Spanned.SPAN_INCLUSIVE_EXCLUSIVE);
- ss.setSpan(new OriginalDrawStatusClickSpan(ContextCompat.getColor(context, R.color.appColor)) {
- @Override
- public void onClick(@NonNull View widget) {
- if (widget instanceof TextView)
- ((TextView) widget).setHighlightColor(getResources().getColor(android.R.color.transparent));
-
- CommonWebViewActivity.start(context, UriProvider.getUserProtocolUrl());
- }
- }, userAgreementTipIndex, userAgreementTipIndex + privacyAgreementTip.length(), Spanned.SPAN_INCLUSIVE_EXCLUSIVE);
-
- getBinding().tvProtocol.setText(ss);
- getBinding().tvProtocol.setHighlightColor(Color.TRANSPARENT);
- getBinding().tvProtocol.setMovementMethod(new LinkMovementMethod());
- }
-}
diff --git a/app/src/module_quick_pass/java/com/yizhuan/erban/quick_pass/QuickPassLoginAct.java b/app/src/module_quick_pass/java/com/yizhuan/erban/quick_pass/QuickPassLoginAct.java
deleted file mode 100644
index 68caadc68..000000000
--- a/app/src/module_quick_pass/java/com/yizhuan/erban/quick_pass/QuickPassLoginAct.java
+++ /dev/null
@@ -1,259 +0,0 @@
-package com.yizhuan.erban.quick_pass;
-
-import android.content.Context;
-import android.content.Intent;
-import android.os.Bundle;
-import android.text.Spannable;
-import android.text.SpannableString;
-import android.text.TextUtils;
-import android.text.style.ForegroundColorSpan;
-import android.view.KeyEvent;
-import android.view.View;
-import android.widget.TextView;
-
-import androidx.core.content.ContextCompat;
-
-import com.netease.nim.uikit.StatusBarUtil;
-import com.yizhuan.erban.R;
-import com.yizhuan.erban.base.BaseLoginAct;
-import com.yizhuan.erban.ui.login.LoginPhoneActivity;
-import com.yizhuan.xchat_android_constants.XChatConstants;
-import com.yizhuan.xchat_android_core.DemoCache;
-import com.yizhuan.xchat_android_core.auth.AuthModel;
-import com.yizhuan.xchat_android_core.auth.event.LoginEvent;
-import com.yizhuan.xchat_android_core.auth.exception.AccountCancelException;
-import com.yizhuan.xchat_android_core.auth.exception.BanAccountException;
-import com.yizhuan.xchat_android_core.auth.exception.IsSuperAdminException;
-import com.yizhuan.xchat_android_core.statistic.StatisticManager;
-import com.yizhuan.xchat_android_core.statistic.protocol.StatisticsProtocol;
-
-import org.greenrobot.eventbus.EventBus;
-import org.greenrobot.eventbus.Subscribe;
-import org.greenrobot.eventbus.ThreadMode;
-
-import java.io.IOException;
-import java.text.SimpleDateFormat;
-import java.util.Date;
-import java.util.Locale;
-
-import io.reactivex.SingleObserver;
-import io.reactivex.disposables.Disposable;
-
-public class QuickPassLoginAct extends BaseLoginAct implements View.OnClickListener {
-
-
- private static final String NEED_CHECKED_PROTOCOL = "need_checked_protocol";
-
- private static final int quickPassRequestCode = 1000;
-
- private TextView tvLoginQuickPass;
-
- private TextView phoneLogin;
-
- private TextView tvProtocolHint;
-
- public static void start(Context context) {
- Intent intent = new Intent(context, QuickPassLoginAct.class);
- context.startActivity(intent);
- }
-
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.act_quick_pass);
- EventBus.getDefault().register(this);
- onFindViews();
- onSetListener();
- showLoginTip();
- AuthModel.get().isFromLogin = true;
- }
-
- private void onFindViews() {
- tvProtocol = findViewById(R.id.tv_protocol);
- tvProtocolHint = findViewById(R.id.tv_protocol_hint);
- wxLogin = findViewById(R.id.img_wx_login);
- tvLoginQuickPass = findViewById(R.id.tv_login_quick_pass);
- qqLogin = findViewById(R.id.img_qq_login);
- tvDesc = findViewById(R.id.tv_desc);
- phoneLogin = findViewById(R.id.img_phone_login);
- setProtocol();
- }
-
- private void onSetListener() {
- wxLogin.setOnClickListener(this);
- qqLogin.setOnClickListener(this);
- tvLoginQuickPass.setOnClickListener(this);
- phoneLogin.setOnClickListener(this);
- }
-
- @Override
- protected void setProtocol() {
- super.setProtocol();
- if (DemoCache.readBoolean(NEED_CHECKED_PROTOCOL, false)) {
- tvProtocol.setChecked(true);
- }
-
- tvProtocol.setOnCheckedChangeListener((buttonView, isChecked) -> {
- if (isChecked) {
- tvProtocolHint.setVisibility(View.GONE);
- DemoCache.saveBoolean(NEED_CHECKED_PROTOCOL, true);
- }
- });
- }
-
- @Override
- public void onClick(View v) {
- if (!tvProtocol.isChecked()) {
- tvProtocolHint.setVisibility(View.VISIBLE);
- return;
- }
- switch (v.getId()) {
- case R.id.img_wx_login:
- wxLogin();
- break;
-
- case R.id.img_qq_login:
- qqLogin();
- break;
-
- case R.id.tv_login_quick_pass:
- StatisticManager.Instance().onEvent(
- StatisticsProtocol.EVENT_ONE_CLICK_LOGIN, "一键登录");
- break;
- case R.id.img_phone_login:
- StatisticManager.Instance().onEvent(
- StatisticsProtocol.EVENT_ONE_CLICK_LOGIN_CHANGE_ID, "一键登录-切换账号");
- LoginPhoneActivity.start(QuickPassLoginAct.this);
- break;
- }
-
- }
-
- @Override
- protected void setStatusBar() {
- super.setStatusBar();
- StatusBarUtil.transparencyBar(this);
- StatusBarUtil.StatusBarLightMode(this);
- }
-
- @Override
- protected boolean needSteepStateBar() {
- return true;
- }
-
- @Override
- public void dealWithLoginError(Throwable e) {
- if (!(e instanceof IsSuperAdminException)) {
- String msg = e.getMessage();
- StringBuilder eventLabel = new StringBuilder("登录注册页-登录失败");
- if (!TextUtils.isEmpty(msg)) {
- eventLabel.append(msg);
- }
- // 2004可以完整写入
- StatisticManager.Instance().onEvent(StatisticsProtocol.EVENT_LOGIN_FAILED_CLICK, eventLabel.toString());
- }
- if (e instanceof BanAccountException) {
- BanAccountException exception = (BanAccountException) e;
- String text = "您的账号因" + exception.getMessage() + "被封禁\n解封时间:";
- int start = text.length();
- SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy年MM月dd日", Locale.getDefault());
- text += simpleDateFormat.format(new Date(exception.getDate()));
- SpannableString spannableString = new SpannableString(text);
- spannableString.setSpan(new ForegroundColorSpan(ContextCompat.getColor(QuickPassLoginAct.this, R.color.appColor)),
- start, text.length(), Spannable.SPAN_INCLUSIVE_EXCLUSIVE);
- getDialogManager().showOkCancelWithTitleDialog("您被封号了",
- spannableString, "确定", "取消", null);
- } else if (e instanceof AccountCancelException) {
- AccountCancelException exception = (AccountCancelException) e;
- SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy年MM月dd日", Locale.getDefault());
-
- String text = "注销时间:" + simpleDateFormat.format(new Date(exception.getCancelDate()));
- int end = text.length();
- text += "\n\n请联系客服(微信:yinyoukefu01)处理哦~";
- SpannableString spannableString = new SpannableString(text);
- spannableString.setSpan(new ForegroundColorSpan(ContextCompat.getColor(QuickPassLoginAct.this, R.color.appColor)),
- 0, end, Spannable.SPAN_INCLUSIVE_EXCLUSIVE);
- getDialogManager().showOkWithTitleDialog("该账号已注销",
- spannableString, "我知道了", true, null);
- } else if (e instanceof IOException) {
- toast("网络异常,请检查您的网络再试~");
- LoginPhoneActivity.startForResult(QuickPassLoginAct.this, quickPassRequestCode);
- } else {
- toast(e.getMessage());
- LoginPhoneActivity.startForResult(QuickPassLoginAct.this, quickPassRequestCode);
- }
- }
-
- @Override
- public boolean onKeyDown(int keyCode, KeyEvent event) {
- if (keyCode == KeyEvent.KEYCODE_BACK) {
- moveTaskToBack(true);
- return true;
- }
- return super.onKeyDown(keyCode, event);
- }
-
- @Override
- protected void onActivityResult(int requestCode, int resultCode, Intent data) {
- super.onActivityResult(requestCode, resultCode, data);
- getDialogManager().dismissDialog();
-// phoneLogin.setEnabled(true);
-
- if (resultCode == RESULT_OK) {
- if (requestCode == quickPassRequestCode) {
- finish();
- }
- }
- }
-
- @Override
- protected void showThirdPartLogin(boolean isShowWechat, boolean isShowQq, boolean isOneClick) {
- wxLogin.setVisibility(isShowWechat ? View.VISIBLE : View.INVISIBLE);
- qqLogin.setVisibility(isShowQq ? View.VISIBLE : View.INVISIBLE);
- tvLoginQuickPass.setVisibility(isOneClick ? View.VISIBLE : View.INVISIBLE);
- super.showThirdPartLogin(isShowWechat, isShowQq, isOneClick);
- }
-
- private void setClickEnable(boolean enable) {
- if (tvLoginQuickPass != null) {
- tvLoginQuickPass.setEnabled(enable);
- }
- if (wxLogin != null) {
- wxLogin.setEnabled(enable);
- }
- if (qqLogin != null) {
- qqLogin.setEnabled(enable);
- }
-// if (phoneLogin != null) {
-// phoneLogin.setEnabled(enable);
-// }
- canClick = enable;
- }
-
- @Override
- protected void onDestroy() {
- super.onDestroy();
- EventBus.getDefault().unregister(this);
- }
-
- /**
- * 注册成功后发送过来的事件
- */
- @Subscribe(threadMode = ThreadMode.MAIN)
- public void onLoginEvent(LoginEvent event) {
- getDialogManager().dismissDialog();
- setResult(RESULT_OK);
- finish();
- }
-
-
- private boolean checkProtocol() {
-
- if (!tvProtocol.isChecked()) {
-
- }
-
- return false;
- }
-
-}
diff --git a/app/src/module_quick_pass/res/drawable-xhdpi/ic_full_arraw_right.png b/app/src/module_quick_pass/res/drawable-xhdpi/ic_full_arraw_right.png
deleted file mode 100644
index 1cf16315e..000000000
Binary files a/app/src/module_quick_pass/res/drawable-xhdpi/ic_full_arraw_right.png and /dev/null differ
diff --git a/app/src/module_quick_pass/res/drawable/quick_pass_back.png b/app/src/module_quick_pass/res/drawable/quick_pass_back.png
deleted file mode 100644
index 66cc0fe15..000000000
Binary files a/app/src/module_quick_pass/res/drawable/quick_pass_back.png and /dev/null differ
diff --git a/app/src/module_quick_pass/res/drawable/quick_pass_checked.png b/app/src/module_quick_pass/res/drawable/quick_pass_checked.png
deleted file mode 100644
index 607507ded..000000000
Binary files a/app/src/module_quick_pass/res/drawable/quick_pass_checked.png and /dev/null differ
diff --git a/app/src/module_quick_pass/res/drawable/quick_pass_logo.png b/app/src/module_quick_pass/res/drawable/quick_pass_logo.png
deleted file mode 100644
index f76a604bc..000000000
Binary files a/app/src/module_quick_pass/res/drawable/quick_pass_logo.png and /dev/null differ
diff --git a/app/src/module_quick_pass/res/drawable/quick_pass_uncheck.png b/app/src/module_quick_pass/res/drawable/quick_pass_uncheck.png
deleted file mode 100644
index e293e63ae..000000000
Binary files a/app/src/module_quick_pass/res/drawable/quick_pass_uncheck.png and /dev/null differ
diff --git a/app/src/module_quick_pass/res/layout/act_quick_pass.xml b/app/src/module_quick_pass/res/layout/act_quick_pass.xml
deleted file mode 100644
index 7e4f80687..000000000
--- a/app/src/module_quick_pass/res/layout/act_quick_pass.xml
+++ /dev/null
@@ -1,164 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/app/src/module_quick_pass/res/layout/custom_other_login.xml b/app/src/module_quick_pass/res/layout/custom_other_login.xml
deleted file mode 100644
index fbabd6d28..000000000
--- a/app/src/module_quick_pass/res/layout/custom_other_login.xml
+++ /dev/null
@@ -1,67 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/module_quick_pass/res/layout/dialog_protocol.xml b/app/src/module_quick_pass/res/layout/dialog_protocol.xml
deleted file mode 100644
index 74de832fc..000000000
--- a/app/src/module_quick_pass/res/layout/dialog_protocol.xml
+++ /dev/null
@@ -1,70 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/app/src/module_quick_pass/res/layout/fragment_add_user_info_old.xml b/app/src/module_quick_pass/res/layout/fragment_add_user_info_old.xml
deleted file mode 100644
index 6c595d1be..000000000
--- a/app/src/module_quick_pass/res/layout/fragment_add_user_info_old.xml
+++ /dev/null
@@ -1,213 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/module_quick_pass/res/layout/layout_other_account.xml b/app/src/module_quick_pass/res/layout/layout_other_account.xml
deleted file mode 100644
index 1ee226109..000000000
--- a/app/src/module_quick_pass/res/layout/layout_other_account.xml
+++ /dev/null
@@ -1,19 +0,0 @@
-
-
-
-
-
-
-
diff --git a/core/src/main/java/com/yizhuan/xchat_android_core/auth/AuthModel.java b/core/src/main/java/com/yizhuan/xchat_android_core/auth/AuthModel.java
index 5fa646f96..fac8067e0 100644
--- a/core/src/main/java/com/yizhuan/xchat_android_core/auth/AuthModel.java
+++ b/core/src/main/java/com/yizhuan/xchat_android_core/auth/AuthModel.java
@@ -3,7 +3,6 @@ package com.yizhuan.xchat_android_core.auth;
import android.text.TextUtils;
import android.util.Log;
-import com.google.gson.Gson;
import com.netease.nim.uikit.api.NimUIKit;
import com.netease.nim.uikit.common.util.log.LogUtil;
import com.netease.nim.uikit.common.util.string.StringUtil;
@@ -43,6 +42,7 @@ import com.yizhuan.xchat_android_core.linked.LinkedModel;
import com.yizhuan.xchat_android_core.linked.bean.LinkedInfo;
import com.yizhuan.xchat_android_core.utils.APIEncryptUtil;
import com.yizhuan.xchat_android_core.utils.CheckUtils;
+import com.yizhuan.xchat_android_core.utils.LogUtils;
import com.yizhuan.xchat_android_core.utils.OldHttpErrorHandleUtil;
import com.yizhuan.xchat_android_core.utils.net.RxHelper;
import com.yizhuan.xchat_android_library.net.rxnet.RxNet;
@@ -56,15 +56,15 @@ import com.yizhuan.xchat_android_library.utils.json.JsonUtils;
import org.greenrobot.eventbus.EventBus;
-import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
+import cn.sharesdk.facebook.Facebook;
import cn.sharesdk.framework.Platform;
import cn.sharesdk.framework.PlatformActionListener;
import cn.sharesdk.framework.ShareSDK;
-import cn.sharesdk.tencent.qq.QQ;
-import cn.sharesdk.wechat.friends.Wechat;
+import cn.sharesdk.google.GooglePlus;
+import cn.sharesdk.line.Line;
import io.reactivex.Single;
import io.reactivex.SingleEmitter;
import io.reactivex.SingleOnSubscribe;
@@ -75,8 +75,6 @@ import io.reactivex.functions.Function;
import io.reactivex.schedulers.Schedulers;
import lombok.Getter;
import okhttp3.ResponseBody;
-import retrofit2.HttpException;
-import retrofit2.Response;
import retrofit2.http.Field;
import retrofit2.http.FormUrlEncoded;
import retrofit2.http.GET;
@@ -115,6 +113,9 @@ public class AuthModel extends BaseModel implements IAuthModel {
*/
private static final int TYPE_LOGIN_NORMAL = 1;
private static final int TYPE_LOGIN_BIND_QQ = 2;
+ public static final int TYPE_GOOGLE_LOGIN = 5;
+ public static final int TYPE_LINE_LOGIN = 6;
+ public static final int TYPE_FACEBOOK_LOGIN = 7;
/**
* 校验验证码
*/
@@ -126,18 +127,16 @@ public class AuthModel extends BaseModel implements IAuthModel {
private static final int TYPE_WECHAT_LOGIN = 1;//微信登录类型
private static final int TYPE_QQ_LOGIN = 2;//QQ登录类型
private volatile static AuthModel instance = null;
- /**
- * 是否来源于登录
- */
- public boolean isFromLogin = false;
+
boolean isInit = false;
private Api api;
@Getter
private AccountInfo currentAccountInfo;
private TicketInfo ticketInfo;
private ThirdUserInfo thirdUserInfo;
- private Platform wechat;
- private Platform qq;
+ private Platform facebook;
+ private Platform line;
+ private Platform google;
/****************************************************** IM *************************************************************/
private StatusCode statusCode;
@@ -328,80 +327,71 @@ public class AuthModel extends BaseModel implements IAuthModel {
});
}
-
/**
* 微信登录
*
* @return
*/
@Override
- public Single wxLogin(String yiDunToken, String shuMeiDeviceId) {
- return Single.create(new SingleOnSubscribe() {
- @Override
- public void subscribe(SingleEmitter e) throws Exception {
- wechat = ShareSDK.getPlatform(Wechat.NAME);
- if (wechat == null || !wechat.isClientValid()) {
- e.onError(new Throwable("未安装微信"));
- return;
+ public Single facebookLogin() {
+ return Single.create((SingleOnSubscribe) e -> {
+ facebook = ShareSDK.getPlatform(Facebook.NAME);
+ if (facebook == null || !facebook.isClientValid()) {
+ e.onError(new Throwable("未安装facebook"));
+ return;
+ }
+ if (facebook.isAuthValid()) {
+ facebook.removeAccount(true);
+ }
+ facebook.setPlatformActionListener(new PlatformActionListener() {
+ @Override
+ public void onComplete(final Platform platform, int i, HashMap hashMap) {
+ if (i == Platform.ACTION_USER_INFOR) {
+ String openid = platform.getDb().getUserId();
+ String unionid = platform.getDb().get("unionid");
+ Logger.i(platform.getDb().getUserGender() + "----openid" + openid + "unionid" + unionid + platform.getDb().getUserIcon());
+ thirdUserInfo = new ThirdUserInfo();
+ thirdUserInfo.setPlatform("Facebook");
+ thirdUserInfo.setUserName(platform.getDb().getUserName());
+ thirdUserInfo.setUserGender(platform.getDb().getUserGender());
+ thirdUserInfo.setUserIcon(platform.getDb().getUserIcon());
+ e.onSuccess(platform);
+ }
}
- if (wechat.isAuthValid()) {
- wechat.removeAccount(true);
+
+ @Override
+ public void onError(Platform platform, int i, Throwable throwable) {
+ e.onError(new Throwable("登录出错"+ i));
+ throwable.printStackTrace();
}
- wechat.setPlatformActionListener(new PlatformActionListener() {
- @Override
- public void onComplete(final Platform platform, int i, HashMap hashMap) {
- if (i == Platform.ACTION_USER_INFOR) {
- String openid = platform.getDb().getUserId();
- String unionid = platform.getDb().get("unionid");
- Logger.i("openid" + openid + "unionid" + unionid + platform.getDb().getUserIcon());
- thirdUserInfo = new ThirdUserInfo();
- thirdUserInfo.setPlatform("微信");
- thirdUserInfo.setType(ThirdUserInfo.TYPE_WX);
- thirdUserInfo.setUserName(platform.getDb().getUserName());
- thirdUserInfo.setUserGender(platform.getDb().getUserGender());
- thirdUserInfo.setUserIcon(platform.getDb().getUserIcon());
- e.onSuccess(platform);
- }
- }
- @Override
- public void onError(Platform platform, int i, Throwable throwable) {
- e.onError(new Throwable("获取微信信息失败"));
- }
-
- @Override
- public void onCancel(Platform platform, int i) {
- e.onError(new Throwable("微信登录取消"));
- }
- });
- wechat.SSOSetting(false);
- wechat.showUser(null);
- }
+ @Override
+ public void onCancel(Platform platform, int i) {
+ e.onError(new Throwable("登录取消"));
+ }
+ });
+ facebook.SSOSetting(false);
+ facebook.showUser(null);
})
- .flatMap(new Function>() {
- @Override
- public SingleSource apply(Platform platform) throws Exception {
- String openid = platform.getDb().getUserId();
- String unionid = platform.getDb().get("unionid");
- return thirdLogin(openid, unionid, TYPE_WECHAT_LOGIN, yiDunToken, shuMeiDeviceId);
+ .flatMap(platform -> {
+ String openid = platform.getDb().getUserId();
+ String unionid = platform.getDb().get("unionid");
+ String avatar = thirdUserInfo.getUserIcon();
+ if (avatar != null && avatar.equals("null")) {
+ avatar = null;
}
- })
- .flatMap(new Function>() {
- @Override
- public SingleSource apply(String s) throws Exception {
- return imLogin(currentAccountInfo);
+ thirdUserInfo.setUserIcon(avatar);
+ String gender = thirdUserInfo.getUserGender();
+ if (gender != null && !gender.trim().isEmpty()) {
+ gender = gender.replace("m", "1").replace("f", "2");
}
+ thirdUserInfo.setUserGender(gender);
+ return thirdLogin(openid, unionid, TYPE_FACEBOOK_LOGIN, "", "");
})
+ .flatMap(s -> imLogin(currentAccountInfo))
.subscribeOn(AndroidSchedulers.mainThread())
.observeOn(AndroidSchedulers.mainThread())
- .doOnSuccess(new Consumer() {
- @Override
- public void accept(String s) throws Exception {
- //登录成功
- EventBus.getDefault().post(new LoginEvent());
- }
- });
-
+ .doOnSuccess(s -> EventBus.getDefault().post(new LoginEvent()));
}
/**
@@ -410,19 +400,19 @@ public class AuthModel extends BaseModel implements IAuthModel {
* @return
*/
@Override
- public Single qqLogin(String yiDunToken, String shuMeiDeviceId) {
+ public Single lineLogin() {
return Single.create(new SingleOnSubscribe() {
@Override
public void subscribe(SingleEmitter e) throws Exception {
- qq = ShareSDK.getPlatform(QQ.NAME);
- if (qq == null || !qq.isClientValid()) {
- e.onError(new Throwable("未安装腾讯QQ或TIM"));
+ line = ShareSDK.getPlatform(Line.NAME);
+ if (line == null || !line.isClientValid()) {
+ e.onError(new Throwable("未安装Line"));
return;
}
- if (qq.isAuthValid()) {
- qq.removeAccount(true);
+ if (line.isAuthValid()) {
+ line.removeAccount(true);
}
- qq.setPlatformActionListener(new PlatformActionListener() {
+ line.setPlatformActionListener(new PlatformActionListener() {
@Override
public void onComplete(Platform platform, int i, HashMap hashMap) {
if (i == Platform.ACTION_USER_INFOR) {
@@ -431,7 +421,7 @@ public class AuthModel extends BaseModel implements IAuthModel {
Logger.i("openid:" + openid + " unionid:" + unionid + platform.getDb().getUserIcon());
thirdUserInfo = new ThirdUserInfo();
- thirdUserInfo.setType(ThirdUserInfo.TYPE_QQ);
+ thirdUserInfo.setPlatform("LINE");
thirdUserInfo.setUserName(platform.getDb().getUserName());
thirdUserInfo.setUserGender(platform.getDb().getUserGender());
thirdUserInfo.setUserIcon(platform.getDb().getUserIcon());
@@ -441,44 +431,112 @@ public class AuthModel extends BaseModel implements IAuthModel {
@Override
public void onError(Platform platform, int i, Throwable throwable) {
- e.onError(new Throwable("获取QQ登录信息错误"));
+ e.onError(new Throwable("登录出错" + i));
+ throwable.printStackTrace();
}
@Override
public void onCancel(Platform platform, int i) {
- e.onError(new Throwable("QQ登录取消"));
+ e.onError(new Throwable("取消登录"));
}
});
- qq.SSOSetting(false);
- qq.showUser(null);
+ line.SSOSetting(false);
+ line.showUser(null);
}
})
- .flatMap(new Function>() {
- @Override
- public SingleSource apply(Platform platform) throws Exception {
- String openid = platform.getDb().getUserId();
- String unionid = platform.getDb().get("unionid");
- return thirdLogin(openid, unionid, TYPE_QQ_LOGIN, yiDunToken, shuMeiDeviceId);
+ .flatMap(platform -> {
+ String openid = platform.getDb().getUserId();
+ String unionid = platform.getDb().get("unionid");
+ String avatar = thirdUserInfo.getUserIcon();
+ if (avatar != null && avatar.equals("null")) {
+ avatar = null;
}
- })
- .flatMap(new Function>() {
- @Override
- public SingleSource apply(String s) throws Exception {
- return imLogin(currentAccountInfo);
+ thirdUserInfo.setUserIcon(avatar);
+ String gender = thirdUserInfo.getUserGender();
+ if (gender != null && !gender.trim().isEmpty()) {
+ gender = gender.replace("m", "1").replace("f", "2");
}
+ thirdUserInfo.setUserGender(gender);
+ return thirdLogin(openid, unionid, TYPE_LINE_LOGIN, "", "");
})
+ .flatMap(s -> imLogin(currentAccountInfo))
.subscribeOn(AndroidSchedulers.mainThread())
.observeOn(AndroidSchedulers.mainThread())
- .doOnSuccess(new Consumer() {
- @Override
- public void accept(String s) throws Exception {
- //登录成功
- EventBus.getDefault().post(new LoginEvent());
- }
- });
+ .compose(RxHelper.handleException())
+ .doOnSuccess(s -> EventBus.getDefault().post(new LoginEvent()));
}
+ @Override
+ public Single googleLogin() {
+ return Single.create(new SingleOnSubscribe() {
+ @Override
+ public void subscribe(SingleEmitter e) throws Exception {
+ google = ShareSDK.getPlatform(GooglePlus.NAME);
+ //是否安装客户端
+ if (google == null || !google.isClientValid()) {
+ e.onError(new Throwable("未安装gmail"));
+ return;
+ }
+ //判断指定平台是否已经完成授权
+ if (google.isAuthValid()) {
+ google.removeAccount(true);
+ }
+ google.setPlatformActionListener(new PlatformActionListener() {
+ @Override
+ public void onComplete(Platform platform, int i, HashMap hashMap) {
+ if (i == Platform.ACTION_USER_INFOR) {
+ String openid = platform.getDb().getUserId();
+ String unionid = platform.getDb().get("unionid");
+ Logger.i("openid:" + openid + " unionid:" + unionid + platform.getDb().getUserIcon());
+
+ thirdUserInfo = new ThirdUserInfo();
+ thirdUserInfo.setPlatform("Google");
+ thirdUserInfo.setUserName(platform.getDb().getUserName());
+ thirdUserInfo.setUserGender(platform.getDb().getUserGender());
+ thirdUserInfo.setUserIcon(platform.getDb().getUserIcon());
+ e.onSuccess(platform);
+ }
+ }
+
+ @Override
+ public void onError(Platform platform, int i, Throwable throwable) {
+ throwable.printStackTrace();
+ LogUtils.d("googleLogin" + i);
+ e.onError(new Throwable("登录出错" + i));
+ }
+
+ @Override
+ public void onCancel(Platform platform, int i) {
+ e.onError(new Throwable("取消登录"));
+ }
+ });
+ google.SSOSetting(false);
+ google.showUser(null);
+
+ }
+ })
+ .flatMap(platform -> {
+ String openid = platform.getDb().getUserId();
+ String unionid = platform.getDb().get("unionid");
+ String avatar = thirdUserInfo.getUserIcon();
+ if (avatar != null && avatar.equals("null")) {
+ avatar = null;
+ }
+ thirdUserInfo.setUserIcon(avatar);
+ String gender = thirdUserInfo.getUserGender();
+ if (gender != null && !gender.trim().isEmpty()) {
+ gender = gender.replace("m", "1").replace("f", "2");
+ }
+ thirdUserInfo.setUserGender(gender);
+ return thirdLogin(openid, unionid, TYPE_GOOGLE_LOGIN, "", "");
+ })
+ .flatMap(s -> imLogin(currentAccountInfo))
+ .subscribeOn(AndroidSchedulers.mainThread())
+ .observeOn(AndroidSchedulers.mainThread())
+ .compose(RxHelper.handleException())
+ .doOnSuccess(s -> EventBus.getDefault().post(new LoginEvent()));
+ }
/**
* 第三方信息登录
*
@@ -546,75 +604,6 @@ public class AuthModel extends BaseModel implements IAuthModel {
}
- @Override
- public Single quickPassLogin(String token, String accessToken, String shuMeiDeviceId, String yiDunToken) {
- return Single.create(new SingleOnSubscribe() {
- @Override
- public void subscribe(SingleEmitter emitter) throws Exception {
- //获取登录信息
- try {
- LoginResult loginResult = api.quickPassLogin(token, accessToken, yiDunToken, shuMeiDeviceId).blockingGet();
- if (!loginResult.isSuccess()) {
- if (loginResult.getCode() == CODE_BAN_ACCOUNT || loginResult.getCode() == CODE_BAN_DEVICE) {
- emitter.onError(new BanAccountException(loginResult.getReason(), loginResult.getDate()));
- } else if (loginResult.getCode() == CODE_ACCOUNT_CANCEL) {
- emitter.onError(new AccountCancelException(loginResult.getMessage(), loginResult.getErbanNo(), loginResult.getCancelDate()));
- } else if (loginResult.getCode() == SUPER_CODE_SHOW_CODE) {
- //是否是超管
- if (loginResult.getSuperCodeVerify() == 1) {
- emitter.onError(new IsSuperAdminException(loginResult.getMessage()));
- } else {
- emitter.onError(new Throwable(loginResult.getMessage()));
- }
- } else if (loginResult.getCode() == CODE_BIG_HEAD_NUM) {
- emitter.onError(new BigHeadPhoneException(loginResult.getMessage()));
- } else {
- emitter.onError(new Throwable(loginResult.getMessage()));
- }
- return;
- }
- currentAccountInfo = loginResult.getData();
- DemoCache.saveCurrentAccountInfo(currentAccountInfo);
- //成功获取到uid后,就通知首页刷新审核中状态的数据
- EventBus.getDefault().post(new GetCurrentUidEvent(true));
- } catch (Exception e) {
- emitter.onError(new Throwable(OldHttpErrorHandleUtil.handle(e)));
- return;
- }
- //获取tick
- try {
- TicketResult ticketResult = requestTicket().blockingGet();
- if (!ticketResult.isSuccess()) {
- emitter.onError(new Throwable(ticketResult.getMessage()));
- return;
- }
- ticketInfo = ticketResult.getData();
- DemoCache.saveTicketInfo(ticketInfo);
-
- } catch (Exception e) {
- emitter.onError(new Throwable(OldHttpErrorHandleUtil.handle(e)));
- return;
- }
- emitter.onSuccess("登录成功!");
- }
- })
- .subscribeOn(Schedulers.io())
- .observeOn(AndroidSchedulers.mainThread())
- .flatMap(new Function>() {
- @Override
- public SingleSource apply(String s) throws Exception {
- return imLogin(currentAccountInfo);
- }
- })
- .doOnSuccess(new Consumer() {
- @Override
- public void accept(String s) throws Exception {
- //登录成功后发出登录事件
- EventBus.getDefault().post(new LoginEvent());
- }
- });
- }
-
/**
* 获取tick
*
@@ -627,10 +616,6 @@ public class AuthModel extends BaseModel implements IAuthModel {
);
}
- public Single> isExistsQQAccount(String qqOpenid) {
- return api.isExistsQqAccount(qqOpenid);
- }
-
/**
* 重置
*/
@@ -653,36 +638,6 @@ public class AuthModel extends BaseModel implements IAuthModel {
return pwd;
}
- /**
- * 获取短信验证码
- *
- * @param phone
- * @param type
- * @return
- */
- @Override
- public Single requestSMSCode(String phone, int type) {
- return Single.create(new SingleOnSubscribe() {
- @Override
- public void subscribe(SingleEmitter emitter) throws Exception {
- try {
- ServiceResult serviceResult = api.requestSMSCode(
- DESUtils.DESAndBase64(phone),
- String.valueOf(type)
- ).blockingGet();
- if (!serviceResult.isSuccess()) {
- emitter.onError(new Throwable(serviceResult.getMessage()));
- return;
- }
- emitter.onSuccess("获取短信验证码成功");
- } catch (Exception e) {
- emitter.onError(new Throwable(OldHttpErrorHandleUtil.handle(e)));
- }
- }
- }).subscribeOn(Schedulers.io())
- .observeOn(AndroidSchedulers.mainThread());
- }
-
/**
* 重置密码
*
@@ -773,42 +728,6 @@ public class AuthModel extends BaseModel implements IAuthModel {
.compose(RxHelper.handleSchedulers());
}
- /**
- * 获取手机验证码
- *
- * @param phone
- * @return
- */
- @Override
- public Single getSMSCode(String phone) {
-
- Map paramsEncrypt = new HashMap<>();
- paramsEncrypt.put("phone", phone);
- String paramsStr = "";
- String signStr = "";
- try {
- paramsStr = APIEncryptUtil.encryptParams(paramsEncrypt);
- signStr = APIEncryptUtil.paramsToSign(paramsEncrypt);
- } catch (Exception e) {
- e.printStackTrace();
- }
- return api.getSMSCode(
- paramsStr,
- signStr
- )
- .flatMap(new Function>() {
- @Override
- public SingleSource apply(ServiceResult serviceResult) throws Exception {
- if (!serviceResult.isSuccess()) {
- return Single.error(new Throwable(serviceResult.getMessage()));
- }
- return Single.just("获取手机验证码成功");
- }
- })
- .subscribeOn(Schedulers.io())
- .observeOn(AndroidSchedulers.mainThread());
-
- }
/**
* 注册
@@ -855,21 +774,6 @@ public class AuthModel extends BaseModel implements IAuthModel {
}
- /**
- * 注册-获取验证码
- *
- * @param phone
- * @return
- */
- @Override
- public Single getVerificationCode(String phone) {
- long timestamp = System.currentTimeMillis() + InitialModel.get().getTimeDiff();
- String nonce = RandomStringUtil.getRandomString(6);
- String sign = MD5Utils.getMD5String(phone + nonce + timestamp);
- return api.getVerificationCode(phone, timestamp, nonce, sign)
- .compose(RxHelper.handleSchedulers());
- }
-
/**
* 退出登录
*
@@ -972,12 +876,6 @@ public class AuthModel extends BaseModel implements IAuthModel {
.compose(new Transformer<>());
}
- @Override
- public Single> recoverAccount(String erbanNo) {
- return api.recoverAccount(erbanNo)
- .compose(RxHelper.handleSchedulers());
- }
-
/**
* 判断IM 登录状态
*
diff --git a/core/src/main/java/com/yizhuan/xchat_android_core/auth/IAuthModel.java b/core/src/main/java/com/yizhuan/xchat_android_core/auth/IAuthModel.java
index 88f4b432f..75f9e9c01 100644
--- a/core/src/main/java/com/yizhuan/xchat_android_core/auth/IAuthModel.java
+++ b/core/src/main/java/com/yizhuan/xchat_android_core/auth/IAuthModel.java
@@ -50,25 +50,17 @@ public interface IAuthModel extends IModel{
*/
Single login(String account, String password, String code, String yiDunToken, String shuMeiDeviceId);
- Single wxLogin(String yiDunToken, String shuMeiDeviceId);
+ Single facebookLogin();
- Single qqLogin(String yiDunToken, String shuMeiDeviceId);
+ Single lineLogin();
- Single> isExistsQQAccount(String qqOpenid);
+ Single googleLogin();
/**
* 重置用户信息
*/
void reset();
- /**
- * 获取短信验证码
- * @param phone
- * @param type
- * @return
- */
- Single requestSMSCode(String phone, int type);
-
/**
* 重置密码
* @param phone
@@ -92,13 +84,6 @@ public interface IAuthModel extends IModel{
*/
Single bindPhone(String phone, String code);
- /**
- * 获取手机验证码
- * @param phone
- * @return
- */
- Single getSMSCode(String phone);
-
/**
* 注册
* @param phone
@@ -111,13 +96,6 @@ public interface IAuthModel extends IModel{
Single register(String phone, String sms_code, String verifyCode, String password,
String yiDunToken, String shuMeiDeviceId);
- /**
- * 注册-获取验证码
- * @param phone
- * @return
- */
- Single getVerificationCode(String phone);
-
Single logout();
/**
@@ -146,10 +124,4 @@ public interface IAuthModel extends IModel{
*/
boolean isImLogin();
- /**
- * 一键登录
- */
- Single quickPassLogin(String token, String accessToken, String shuMeiDeviceId, String yiDunToken);
-
- Single> recoverAccount(String erbanNo);
}
diff --git a/mob.gradle b/mob.gradle
index 577750b2b..47b396227 100644
--- a/mob.gradle
+++ b/mob.gradle
@@ -8,25 +8,26 @@ MobSDK {
//平台配置信息
gui false
devInfo {
- Wechat {
- appId "wx3f0462eb7eccd64f"
- appSecret "1c07949e3f53433f1c6038bfcdd54c40"
- }
- WechatMoments {
- appId "wx3f0462eb7eccd64f"
- appSecret "1c07949e3f53433f1c6038bfcdd54c40"
- }
- QQ {
- appId "101937205"
- appKey "458ed9d671ba4b177799189db5fbc434"
- shareByAppClient true
- }
- QZone {
- appId "101937205"
- appKey "458ed9d671ba4b177799189db5fbc434"
+ Facebook {
+ appKey "1266232494209868"
+ appSecret "c9b170b383f8be9cdf118823b8632821"
+ callbackUri "https://mob.com"
shareByAppClient true
+ enable true
}
+ GooglePlus {
+ appId "766987211654-2b4de5kbhe7tpgtfto4bjll3dj7ih26u.apps.googleusercontent.com"
+ callbackUri "http://localhost"
+ officialVersion "default"
+ enable true
+ }
+
+ Line {
+ appId "1657475529"
+ appSecret "903d014c269d65b827cd32997836e60b"
+ enable true
+ }
}
}
diff --git a/peko.jks b/peko.jks
new file mode 100644
index 000000000..7d7163574
Binary files /dev/null and b/peko.jks differ
diff --git a/tmpmob/ShareSDK/assets/ShareSDK.xml b/tmpmob/ShareSDK/assets/ShareSDK.xml
index 509f87a8e..ff1339d5a 100644
--- a/tmpmob/ShareSDK/assets/ShareSDK.xml
+++ b/tmpmob/ShareSDK/assets/ShareSDK.xml
@@ -3,22 +3,22 @@
-
+
-
+
-
+
-
-
-
+
+
+
@@ -30,7 +30,7 @@
-
+
diff --git a/yinyou.jks b/yinyou.jks
deleted file mode 100644
index dc259fe59..000000000
Binary files a/yinyou.jks and /dev/null differ