123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247 |
- package com.edufound.android.xyyf.config;
- import android.app.Activity;
- import android.content.Context;
- import android.content.pm.ActivityInfo;
- import android.graphics.Color;
- import android.os.Build;
- import android.text.Editable;
- import android.text.TextWatcher;
- import android.view.Gravity;
- import android.view.MotionEvent;
- import android.view.View;
- import android.widget.EditText;
- import android.widget.ImageView;
- import android.widget.LinearLayout;
- import android.widget.TextView;
- import com.edufound.android.xyyf.R;
- import com.edufound.android.xyyf.activity.MainActivity;
- import com.edufound.android.xyyf.main.MainView;
- import com.edufound.android.xyyf.phonelogin.PhoneLoginPersenter;
- import com.edufound.android.xyyf.util.Logger;
- import com.edufound.android.xyyf.util.ToastUtil;
- import com.mobile.auth.gatewayauth.AuthRegisterXmlConfig;
- import com.mobile.auth.gatewayauth.AuthUIConfig;
- import com.mobile.auth.gatewayauth.AuthUIControlClickListener;
- import com.mobile.auth.gatewayauth.PhoneNumberAuthHelper;
- import com.mobile.auth.gatewayauth.ui.AbstractPnsViewDelegate;
- import org.json.JSONException;
- import org.json.JSONObject;
- import java.io.IOException;
- public class DialogLandConfig extends BaseUIConfig {
- private int mOldScreenOrientation = ActivityInfo.SCREEN_ORIENTATION_SENSOR_PORTRAIT;
- MainView mView;
- int showType = 0;
- PhoneLoginPersenter mPersenter;
- TextView title;
- TextView change;
- LinearLayout mLayout;
- EditText mPhoneNum;
- TextView mGetVer;
- EditText mInputVer;
- LinearLayout mClose;
- ImageView mHWLogin;
- boolean isCheckedUP = false;
- public DialogLandConfig(Activity activity, PhoneNumberAuthHelper authHelper, MainView view) {
- super(activity, authHelper, view);
- mView = view;
- mPersenter = new PhoneLoginPersenter(null);
- }
- public DialogLandConfig(Activity activity, PhoneNumberAuthHelper authHelper) {
- super(activity, authHelper);
- mPersenter = new PhoneLoginPersenter(null);
- }
- @Override
- public void configAuthPage() {
- mAuthHelper.removeAuthRegisterXmlConfig();
- mAuthHelper.removeAuthRegisterViewConfig();
- int authPageOrientation = ActivityInfo.SCREEN_ORIENTATION_SENSOR_LANDSCAPE;
- if (Build.VERSION.SDK_INT == 26) {
- mOldScreenOrientation = mActivity.getRequestedOrientation();
- mActivity.setRequestedOrientation(authPageOrientation);
- authPageOrientation = ActivityInfo.SCREEN_ORIENTATION_BEHIND;
- }
- updateScreenSize(authPageOrientation);
- final int dialogWidth = (int) (mScreenWidthDp * 1.1);
- final int dialogHeight = (int) (mScreenHeightDp * 0.4);
- mAuthHelper.addAuthRegisterXmlConfig(new AuthRegisterXmlConfig.Builder()
- .setLayout(R.layout.custom_land_dialog, new AbstractPnsViewDelegate() {
- @Override
- public void onViewCreated(final View view) {
- title = view.findViewById(R.id.custom_land_login_phone_title);
- change = view.findViewById(R.id.changePhoneNumLogin);
- mLayout = view.findViewById(R.id.custom_land_login_phone_frame);
- mPhoneNum = view.findViewById(R.id.phonenumber_login_number);
- mGetVer = view.findViewById(R.id.phonenumber_getverifcation);
- mInputVer = view.findViewById(R.id.phonenumber_login_ver);
- mClose = view.findViewById(R.id.login_phone_landscape_close);
- mHWLogin = view.findViewById(R.id.huawei_login);
- mGetVer.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- }
- });
- mPersenter.setVerText(mGetVer);
- mGetVer.setOnTouchListener(new View.OnTouchListener() {
- @Override
- public boolean onTouch(View v, MotionEvent event) {
- switch (event.getAction()) {
- case MotionEvent.ACTION_DOWN:
- mGetVer.setBackgroundResource(R.drawable.shape_login_phonenumber_getverification_selected);
- mGetVer.setTextColor(Color.WHITE);
- break;
- case MotionEvent.ACTION_CANCEL:
- case MotionEvent.ACTION_UP:
- try {
- mPersenter.getVCode(mPhoneNum.getText().toString());
- } catch (IOException e) {
- e.printStackTrace();
- }
- break;
- }
- return false;
- }
- });
- change.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- switch (showType) {
- case 0:
-
- view.bringToFront();
- mLayout.setVisibility(View.VISIBLE);
- title.setText("登录注册解锁更多精彩内容");
- change.setText("一键登录");
- showType = 1;
- break;
- case 1:
- mLayout.setVisibility(View.INVISIBLE);
- change.setText("切换账号");
- title.setText("登录");
- showType = 0;
- break;
- }
- }
- });
- mInputVer.addTextChangedListener(new TextWatcher() {
- @Override
- public void beforeTextChanged(CharSequence s, int start, int count, int after) {
- }
- @Override
- public void onTextChanged(CharSequence s, int start, int before, int count) {
- if (s.toString().length() == 4) {
- Logger.e("检查验证码并且登录");
- if (!isCheckedUP) {
- ToastUtil.showToast("请同意服务条款");
- return;
- }
- try {
- mPersenter.LoginByVCode(mPhoneNum.getText().toString(), mInputVer.getText().toString());
- } catch (JSONException e) {
- e.printStackTrace();
- }
- }
- }
- @Override
- public void afterTextChanged(Editable s) {
- }
- });
- mClose.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- MainActivity.getInstance().loadJSMehtodPost("closeLogin('700000')");
- mAuthHelper.quitLoginPage();
- }
- });
- mHWLogin.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- mAuthHelper.quitLoginPage();
- mPersenter.huaweiLogin(MainActivity.getInstance(), 8888);
- }
- });
- }
- }).build());
- showAllUi(dialogWidth, dialogHeight, authPageOrientation);
- }
- void showAllUi(int dialogWidth, int dialogHeight, int authPageOrientation) {
- mAuthHelper.setAuthUIConfig(new AuthUIConfig.Builder()
- .setNavHidden(true)
- .setCheckboxHidden(false)
- .setLogoHidden(true)
- .setSloganHidden(true)
- .setNavReturnHidden(true)
- .setSwitchAccHidden(true)
- .setNumberLayoutGravity(Gravity.CENTER)
- .setNumberSize(24)
- .setNumFieldOffsetY(10)
- .setLogBtnOffsetY(60)
- .setPrivacyOffsetY_B(10)
- .setLogBtnMarginLeftAndRight(20)
- .setLogBtnWidth(175)
- .setLogBtnHeight(35)
- .setLogBtnLayoutGravity(Gravity.CENTER)
- .setLogBtnText("本机号码一键登录")
- .setLogBtnTextSize(18)
- .setDialogWidth(dialogWidth)
- .setNavText("")
- .setDialogHeight(dialogHeight)
- .setDialogOffsetY(0)
- .setScreenOrientation(authPageOrientation)
- .setAppPrivacyOne("《隐私权限和用户协议》", "http://m-xyyf-web.ai160.com/res/protocol/protocol.htm")
- .setStatusBarHidden(true)
- .setPrivacyMargin(60)
- .setPrivacyTextSize(12)
- .setVendorPrivacyPrefix("《")
- .setVendorPrivacySuffix("》")
- .create());
- mAuthHelper.setUIClickListener(new AuthUIControlClickListener() {
- @Override
- public void onClick(String s, Context context, String s1) {
- switch (Integer.valueOf(s)) {
- case 700003:
- JSONObject jsonObject = null;
- try {
- jsonObject = new JSONObject(s1);
- isCheckedUP = jsonObject.getBoolean("isChecked");
- if (isCheckedUP && mInputVer.getText().toString().length() == 4) {
- mPersenter.LoginByVCode(mPhoneNum.getText().toString(), mInputVer.getText().toString());
- }
- } catch (Exception e) {
- e.printStackTrace();
- }
- break;
- }
- }
- });
- }
- @Override
- public void onResume() {
- super.onResume();
- if (mOldScreenOrientation != mActivity.getRequestedOrientation()) {
- mActivity.setRequestedOrientation(mOldScreenOrientation);
- }
- }
- }
|