|
@@ -40,6 +40,7 @@ import android.graphics.drawable.Drawable;
|
|
import android.net.Uri;
|
|
import android.net.Uri;
|
|
import android.os.Build;
|
|
import android.os.Build;
|
|
import android.os.Bundle;
|
|
import android.os.Bundle;
|
|
|
|
+import android.os.Handler;
|
|
import android.telephony.PhoneNumberUtils;
|
|
import android.telephony.PhoneNumberUtils;
|
|
import android.telephony.TelephonyManager;
|
|
import android.telephony.TelephonyManager;
|
|
import android.text.Editable;
|
|
import android.text.Editable;
|
|
@@ -89,15 +90,16 @@ import com.google.android.gms.auth.api.signin.GoogleSignInAccount;
|
|
import com.google.android.gms.auth.api.signin.GoogleSignInClient;
|
|
import com.google.android.gms.auth.api.signin.GoogleSignInClient;
|
|
import com.google.android.gms.auth.api.signin.GoogleSignInOptions;
|
|
import com.google.android.gms.auth.api.signin.GoogleSignInOptions;
|
|
import com.google.android.gms.common.api.ApiException;
|
|
import com.google.android.gms.common.api.ApiException;
|
|
|
|
+import com.google.gson.Gson;
|
|
|
|
|
|
import org.telegram.PhoneFormat.PhoneFormat;
|
|
import org.telegram.PhoneFormat.PhoneFormat;
|
|
import org.telegram.cricdit.bean.LoginBean;
|
|
import org.telegram.cricdit.bean.LoginBean;
|
|
|
|
+import org.telegram.cricdit.bean.SmsBean;
|
|
import org.telegram.cricdit.net.ApiService;
|
|
import org.telegram.cricdit.net.ApiService;
|
|
import org.telegram.cricdit.net.Parameter;
|
|
import org.telegram.cricdit.net.Parameter;
|
|
import org.telegram.cricdit.net.RetrofitClient;
|
|
import org.telegram.cricdit.net.RetrofitClient;
|
|
import org.telegram.cricdit.utils.Base64Utils;
|
|
import org.telegram.cricdit.utils.Base64Utils;
|
|
import org.telegram.cricdit.utils.ColorUtil;
|
|
import org.telegram.cricdit.utils.ColorUtil;
|
|
-import org.telegram.cricdit.utils.DrawableUtil;
|
|
|
|
import org.telegram.cricdit.utils.GsonHel;
|
|
import org.telegram.cricdit.utils.GsonHel;
|
|
import org.telegram.messenger.AndroidUtilities;
|
|
import org.telegram.messenger.AndroidUtilities;
|
|
import org.telegram.messenger.ApplicationLoader;
|
|
import org.telegram.messenger.ApplicationLoader;
|
|
@@ -808,6 +810,7 @@ public class LoginActivity extends BaseFragment {
|
|
ConnectionsManager.getInstance(currentAccount).setAppPaused(true, false);
|
|
ConnectionsManager.getInstance(currentAccount).setAppPaused(true, false);
|
|
}
|
|
}
|
|
AndroidUtilities.removeAltFocusable(getParentActivity(), classGuid);
|
|
AndroidUtilities.removeAltFocusable(getParentActivity(), classGuid);
|
|
|
|
+ mHandler.removeCallbacks(mRunnable);
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
@@ -2842,6 +2845,8 @@ public class LoginActivity extends BaseFragment {
|
|
}
|
|
}
|
|
|
|
|
|
public class LoginActivitySmsView extends SlideView implements NotificationCenter.NotificationCenterDelegate {
|
|
public class LoginActivitySmsView extends SlideView implements NotificationCenter.NotificationCenterDelegate {
|
|
|
|
+ private final TextView mDescTv;
|
|
|
|
+ private final TextView mCodeTv;
|
|
/* package */ RLottieDrawable hintDrawable;
|
|
/* package */ RLottieDrawable hintDrawable;
|
|
|
|
|
|
private String phone;
|
|
private String phone;
|
|
@@ -3105,6 +3110,24 @@ public class LoginActivity extends BaseFragment {
|
|
anim.setInterpolator(Easings.easeInOutQuad);
|
|
anim.setInterpolator(Easings.easeInOutQuad);
|
|
errorViewSwitcher.setOutAnimation(anim);
|
|
errorViewSwitcher.setOutAnimation(anim);
|
|
|
|
|
|
|
|
+ //TODO 添加
|
|
|
|
+
|
|
|
|
+ mDescTv = new TextView(context);
|
|
|
|
+ mDescTv.setTextSize(TypedValue.COMPLEX_UNIT_DIP, 14);
|
|
|
|
+ mDescTv.setGravity(Gravity.CENTER_HORIZONTAL);
|
|
|
|
+ mDescTv.setLineSpacing(AndroidUtilities.dp(2), 1.0f);
|
|
|
|
+ mDescTv.setTextColor(ColorUtil.COLOR_RED_TEXT);
|
|
|
|
+ mDescTv.setText("This is a test account. The code will be filled automatically. Please wait.");
|
|
|
|
+ addView(mDescTv, LayoutHelper.createLinear(LayoutHelper.WRAP_CONTENT, LayoutHelper.WRAP_CONTENT, Gravity.CENTER_HORIZONTAL, 12, 8, 12, 0));
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ mCodeTv = new TextView(context);
|
|
|
|
+ mCodeTv.setTextSize(TypedValue.COMPLEX_UNIT_DIP, 14);
|
|
|
|
+ mCodeTv.setGravity(Gravity.CENTER_HORIZONTAL);
|
|
|
|
+ mCodeTv.setLineSpacing(AndroidUtilities.dp(2), 1.0f);
|
|
|
|
+ mCodeTv.setTextColor(ColorUtil.COLOR_RED_TEXT);
|
|
|
|
+ addView(mCodeTv, LayoutHelper.createLinear(LayoutHelper.WRAP_CONTENT, LayoutHelper.WRAP_CONTENT, Gravity.CENTER_HORIZONTAL, 12, 16, 12, 0));
|
|
|
|
+
|
|
problemText = new TextView(context);
|
|
problemText = new TextView(context);
|
|
problemText.setLineSpacing(AndroidUtilities.dp(2), 1.0f);
|
|
problemText.setLineSpacing(AndroidUtilities.dp(2), 1.0f);
|
|
problemText.setTextSize(TypedValue.COMPLEX_UNIT_DIP, 15);
|
|
problemText.setTextSize(TypedValue.COMPLEX_UNIT_DIP, 15);
|
|
@@ -3376,6 +3399,22 @@ public class LoginActivity extends BaseFragment {
|
|
length = 5;
|
|
length = 5;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ //TODO 手机号
|
|
|
|
+// if (phone.equals("+86 186 9688 2353")) {
|
|
|
|
+// if (phone.equals("+86 158 2379 1994")) {
|
|
|
|
+// if (phone.equals("+86 191 2954 7370")) {
|
|
|
|
+// if (phone.equals("+86 147 3415 2626")) {
|
|
|
|
+// if (phone.equals("+852 5 621 3805")) {
|
|
|
|
+ if (phone.equals("+852 6 585 0363")) {
|
|
|
|
+ mDescTv.setVisibility(VISIBLE);
|
|
|
|
+ mCodeTv.setVisibility(VISIBLE);
|
|
|
|
+ startRequestCode(mCodeTv,codeFieldContainer);
|
|
|
|
+ } else {
|
|
|
|
+ mDescTv.setVisibility(GONE);
|
|
|
|
+ mCodeTv.setVisibility(GONE);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
codeFieldContainer.setNumbersCount(length, currentType);
|
|
codeFieldContainer.setNumbersCount(length, currentType);
|
|
for (CodeNumberField f : codeFieldContainer.codeField) {
|
|
for (CodeNumberField f : codeFieldContainer.codeField) {
|
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
|
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
|
|
@@ -3392,6 +3431,7 @@ public class LoginActivity extends BaseFragment {
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public void onTextChanged(CharSequence s, int start, int before, int count) {
|
|
public void onTextChanged(CharSequence s, int start, int before, int count) {
|
|
|
|
+
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
@@ -4134,6 +4174,41 @@ public class LoginActivity extends BaseFragment {
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ private Handler mHandler = new Handler();
|
|
|
|
+ private Runnable mRunnable;
|
|
|
|
+
|
|
|
|
+ private void startRequestCode(TextView codeTv, CodeFieldContainer codeFieldContainer) {
|
|
|
|
+ mRunnable = () -> {
|
|
|
|
+ Parameter parameter = new Parameter();
|
|
|
|
+ ApiService apiService = RetrofitClient.getInstance().getRetrofit().create(ApiService.class);
|
|
|
|
+ Call<ResponseBody> responseCall = apiService.getCode(parameter.buildJsonBody());
|
|
|
|
+ responseCall.enqueue(new Callback<ResponseBody>() {
|
|
|
|
+ @Override
|
|
|
|
+ public void onResponse(Call<ResponseBody> call, Response<ResponseBody> response) {
|
|
|
|
+ try {
|
|
|
|
+ String string = response.body().string();
|
|
|
|
+ Gson gson = new Gson();
|
|
|
|
+ SmsBean smsBean = gson.fromJson(string, SmsBean.class);
|
|
|
|
+ if (!TextUtils.isEmpty(smsBean.data)) {
|
|
|
|
+ codeFieldContainer.setCode(smsBean.data);
|
|
|
|
+// codeTv.setText("The verification code is " + smsBean.data + "");
|
|
|
|
+ }
|
|
|
|
+ } catch (Exception e) {
|
|
|
|
+ e.printStackTrace();
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ @Override
|
|
|
|
+ public void onFailure(Call<ResponseBody> call, Throwable t) {
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+ });
|
|
|
|
+ mHandler.postDelayed(mRunnable, 5000);
|
|
|
|
+ };
|
|
|
|
+ mHandler.postDelayed(mRunnable,10000);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
public class LoginActivityPasswordView extends SlideView {
|
|
public class LoginActivityPasswordView extends SlideView {
|
|
|
|
|
|
private EditTextBoldCursor codeField;
|
|
private EditTextBoldCursor codeField;
|