From 399ac289f80b7a40aa4210341db6b447cacdcf14 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期二, 09 八月 2022 17:42:33 +0800 Subject: [PATCH] 广告升级,隐私政策整改 --- app/src/main/java/com/tejia/lijin/app/ui/mine/LoginSelectActivity.java | 345 ++++++++++++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 291 insertions(+), 54 deletions(-) diff --git a/app/src/main/java/com/tejia/lijin/app/ui/mine/LoginSelectActivity.java b/app/src/main/java/com/tejia/lijin/app/ui/mine/LoginSelectActivity.java index 3e4dc49..c8051c2 100644 --- a/app/src/main/java/com/tejia/lijin/app/ui/mine/LoginSelectActivity.java +++ b/app/src/main/java/com/tejia/lijin/app/ui/mine/LoginSelectActivity.java @@ -1,46 +1,57 @@ package com.tejia.lijin.app.ui.mine; -import android.app.Activity; import android.content.DialogInterface; import android.content.Intent; import android.content.SharedPreferences; -import android.graphics.Color; import android.os.Bundle; import android.text.Editable; import android.text.TextWatcher; import android.util.Log; import android.view.View; -import android.widget.FrameLayout; +import android.view.animation.AnimationUtils; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.TextView; import android.widget.Toast; import com.androidquery.AQuery; -import com.mobile.auth.gatewayauth.AuthUIConfig; -import com.mobile.auth.gatewayauth.PhoneNumberAuthHelper; -import com.mobile.auth.gatewayauth.TokenResultListener; -import com.tejia.lijin.app.util.user.AliyunSmsOneKeyLoginManager; -import com.tencent.mm.opensdk.modelmsg.SendAuth; -import com.umeng.analytics.MobclickAgent; -import com.wpc.library.util.common.DimenUtils; -import com.wpc.library.util.common.StringUtils; -import com.wpc.library.widget.PhoneNumberClearEditText; +import com.google.gson.Gson; import com.tejia.lijin.app.BasicTextHttpResponseHandler; import com.tejia.lijin.app.R; import com.tejia.lijin.app.ShoppingApi; import com.tejia.lijin.app.ShoppingApplication; +import com.tejia.lijin.app.entity.UserInfo; import com.tejia.lijin.app.entity.eventbus.WXLoginEvent; +import com.tejia.lijin.app.ui.BaseActivity; import com.tejia.lijin.app.ui.dialog.AddZFBInfoDialog; import com.tejia.lijin.app.ui.dialog.ShapeLoadingDialog; import com.tejia.lijin.app.ui.dialog.VerifyMobileDialog; import com.tejia.lijin.app.ui.invite.ShareBrowserActivity; +import com.tejia.lijin.app.util.Constant; import com.tejia.lijin.app.util.KeFuUtil; +import com.tejia.lijin.app.util.SystemParamsUtil; import com.tejia.lijin.app.util.TopStatusSettings; +import com.tejia.lijin.app.util.ui.dialog.DialogUtil; import com.tejia.lijin.app.util.umengCustomEvent.UserCustomEvent; +import com.tejia.lijin.app.util.user.AccountBindManager; +import com.tejia.lijin.app.util.user.AliyunSmsOneKeyLoginManager; +import com.tejia.lijin.app.util.user.LoginManager; +import com.tejia.lijin.app.util.user.QQLoginManager; import com.tejia.lijin.app.util.user.UserUtil; +import com.tejia.lijin.wxapi.WXEntryActivity; +import com.tencent.connect.auth.QQToken; +import com.tencent.mm.opensdk.modelmsg.SendAuth; +import com.tencent.tauth.DefaultUiListener; +import com.tencent.tauth.IUiListener; +import com.tencent.tauth.Tencent; +import com.tencent.tauth.UiError; +import com.umeng.analytics.MobclickAgent; +import com.wpc.library.util.SingleToast; +import com.wpc.library.util.common.StringUtils; +import com.wpc.library.widget.PhoneNumberClearEditText; import org.apache.http.Header; +import org.json.JSONException; import org.json.JSONObject; import de.greenrobot.event.EventBus; @@ -49,7 +60,7 @@ * Created by weikou2015 on 2017/12/15. */ -public class LoginSelectActivity extends Activity implements View.OnClickListener { +public class LoginSelectActivity extends BaseActivity implements View.OnClickListener { public final static int TYPE_LOGIN = 1;//鐧诲綍 public final static int TYPE_BIND = 2;//缁戝畾 @@ -71,20 +82,23 @@ private AliyunSmsOneKeyLoginManager aliyunSmsOneKeyLoginManager; - private boolean showOnkeyLoginToast = true; + private boolean showOnkeyLoginToast = false; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_login_select); + setShowRecommend(false); mAquery = new AQuery(this); TopStatusSettings.setStatusViewAndDeepColorNoView(this); initData(getIntent()); String from = getIntent().getStringExtra("from"); UserCustomEvent.userLogin(this, StringUtils.isEmpty(from) ? "鍏跺畠" : from); EventBus.getDefault().register(this); - aliyunSmsOneKeyLoginManager = new AliyunSmsOneKeyLoginManager(this, null); + + String secretInfo = "rb6R3o8sx4BVXzip2GLC27gDVtY8EWD3BHYM8dAuvCE1e7Ux/6jHkaZjgOStr/EGvyH0Q2XHZnM6u0tp7mXY3wsHv6+bJaB6hsgzYEu1up3UgmIIrGwNOkDInWe5n6QOnNN+XSc4oF3Od1AJtAgd6oun7JkrbdJCqDN5qTPXF7rS44sYGlh7apz+fJAU9Nn1/Jzt5qdqEWsjmqu07Z3Gasrl+cEeBC9li2+5yqAnnXB+PflFHd/kdN9iCHRuY99qBVUizej95oL/jRMzw4SQKgWDW2PF9llOcSyYWivRGeFAaDISQSmc4g=="; + aliyunSmsOneKeyLoginManager = new AliyunSmsOneKeyLoginManager(this, secretInfo); aliyunSmsOneKeyLoginManager.init(new AliyunSmsOneKeyLoginManager.IOneKeyLoginListener() { @Override @@ -97,7 +111,7 @@ @Override public void onCancel() { - showOnkeyLoginToast = false; + showOnkeyLoginToast = true; } @Override @@ -114,42 +128,130 @@ @Override public void onToken(String token) { - //鑾峰彇鍒癟oken + aliyunSmsOneKeyLoginManager.quitLoginPage(); + //鐧诲綍 + if (type == TYPE_LOGIN) { + LoginManager.loginByPhone(null, null, token, new LoginManager.LoginAndBindListener() { + @Override + public void onLoginStart() { + DialogUtil.show(loadingDialog); + } + + @Override + public void onLoginFinish() { + DialogUtil.dismiss(loadingDialog); + } + + @Override + public void onLoginSuccess(UserInfo user) { + UserUtil.loginSuccess(getApplicationContext(), user); + Toast.makeText(getApplicationContext(), "鎭枩浣狅紝鐧诲綍鎴愬姛", Toast.LENGTH_SHORT).show(); + finish(); + } + + @Override + public void onLoginFail(int code, String msg) { + Toast.makeText(LoginSelectActivity.this, msg, Toast.LENGTH_SHORT).show(); + } + }); + } else if (type == TYPE_BIND_WITHOUT_LOGINED) { + LoginManager.loginWithPhone(null, null, token, key, new LoginManager.LoginAndBindListener() { + @Override + public void onBindStart() { + DialogUtil.show(loadingDialog); + } + + @Override + public void onBindFinish() { + DialogUtil.dismiss(loadingDialog); + } + + @Override + public void onBindSuccess(UserInfo user) { + UserUtil.loginSuccess(getApplicationContext(), user); + Toast.makeText(getApplicationContext(), "鎭枩浣狅紝鐧诲綍鎴愬姛", Toast.LENGTH_SHORT).show(); + finish(); + } + + @Override + public void onBindFail(int code, String msg) { + Toast.makeText(LoginSelectActivity.this, msg, Toast.LENGTH_SHORT).show(); + } + }); + } else { + //鐢佃瘽鍙风爜缁戝畾 + AccountBindManager.bindPhone(getApplicationContext(), null, null, token, new LoginManager.LoginAndBindListener() { + + @Override + public void onBindFail(int code, String msg) { + super.onBindFail(code, msg); + if (code == 2) { + AddZFBInfoDialog.Builder builder = new AddZFBInfoDialog.Builder(LoginSelectActivity.this); + builder.setTitle("鍙风爜宸插崰鐢ㄦ彁绀�").setMessage("寰堟姳姝夛紝璇ユ墜鏈哄彿宸茶鍏朵粬甯愬彿鍗犵敤锛�" + + "鑻ヨ缁х画瀹屾垚鏈笎鍙锋墜鏈哄彿鏇存崲锛岃鍘诲彇娑堝崰鐢ㄦ垨鏇存崲鍏朵粬鎵嬫満鍙凤紝璋㈣阿銆俓n") + .setPositiveButton("鐭ラ亾浜�", new DialogInterface.OnClickListener() { + @Override + public void onClick(DialogInterface dialog, int which) { + dialog.dismiss(); + } + }).create().show(); + setResult(100); + } else { + Toast.makeText(getApplicationContext(), msg, Toast.LENGTH_SHORT).show(); + } + } + + @Override + public void onBindFinish() { + super.onBindFinish(); + } + + @Override + public void onBindStart() { + super.onBindStart(); + } + + @Override + public void onBindSuccess(UserInfo user) { + super.onBindSuccess(user); + UserUtil.loginSuccess(getApplicationContext(), user); + Toast.makeText(getApplicationContext(), "缁戝畾鎴愬姛", Toast.LENGTH_SHORT).show(); + finish(); + } + }); + } } + }); - openOneKeyLogin(showOnkeyLoginToast); + +// openOneKeyLogin(showOnkeyLoginToast); + } private synchronized void openOneKeyLogin(final boolean notify) { - aliyunSmsOneKeyLoginManager.checkEnv(); + ShoppingApi.allowOneKeyLogin(this, new BasicTextHttpResponseHandler() { - //TODO 涓�閿櫥褰曟潈闄愯姹� + @Override + public void onStart() { + DialogUtil.show(loadingDialog); + } -// ShoppingApi.allowOneKeyLogin(this, UserUtil.getLoginUid(this), new BasicTextHttpResponseHandler() { -// -// @Override -// public void onStart() { -// DialogUtil.show(loadingDialog); -// } -// -// @Override -// public void onSuccessPerfect(int statusCode, Header[] headers, JSONObject jsonObject) throws Exception { -// if (jsonObject.optBoolean("IsPost")) { -// aliyunSmsOneKeyLoginManager.checkEnv(); -// } else { -// if (notify) { -// Toast.makeText(PhoneLoginActivity.this, jsonObject.optString("Error"), Toast.LENGTH_SHORT).show(); -// } -// } -// } -// -// @Override -// public void onFinish() { -// DialogUtil.dismiss(loadingDialog); -// } -// }); + @Override + public void onSuccessPerfect(int statusCode, Header[] headers, JSONObject jsonObject) throws Exception { + if (jsonObject.optInt("code") == 0) { + aliyunSmsOneKeyLoginManager.checkEnv(); + } else { + if (notify) { + Toast.makeText(LoginSelectActivity.this, jsonObject.optString("msg"), Toast.LENGTH_SHORT).show(); + } + } + } - + @Override + public void onFinish() { + DialogUtil.dismiss(loadingDialog); + } + }); } private void initData(Intent intent) { @@ -189,9 +291,28 @@ *娣诲姞鐩戝惉 */ private void addListener() { + tv_login_gain_sms.setOnClickListener(this); tv_user_agreement.setOnClickListener(this); tv_other_login.setOnClickListener(this); tv_privacy_policies.setOnClickListener(this); + mAquery.id(R.id.tv_login_onekey).clicked(new View.OnClickListener() { + @Override + public void onClick(View v) { + openOneKeyLogin(true); + } + }); + mAquery.id(R.id.iv_close).clicked(this); + mAquery.id(R.id.tv_login_wx).clicked(this); + mAquery.id(R.id.tv_login_qq).clicked(this); + mAquery.id(R.id.tv_agree).clicked(this); + mAquery.id(R.id.tv_help).clicked(new View.OnClickListener() { + @Override + public void onClick(View v) { + startActivity(new Intent(getApplicationContext(), ShareBrowserActivity.class).putExtra("url", SystemParamsUtil.getHelpUrl(getApplicationContext()))); + } + }); + + et_mobile_num.addTextChangedListener(new TextWatcher() { @Override public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) { @@ -207,12 +328,21 @@ canSend = true; } } + if(canSend) { + tv_login_gain_sms.setEnabled(canSend); + } } @Override public void afterTextChanged(Editable editable) { -// fl_login_gain_sms.setEnabled(editable.length() == 13 ? true : false); -// fl_login_gain_sms.setBackgroundResource(editable.length() == 13 ? + String text=editable !=null?editable.toString():""; + if(text.replace(" ","").length()==11){ + tv_login_gain_sms.setEnabled(true); + }else{ + tv_login_gain_sms.setEnabled(false); + } + +// tv_login_gain_sms.setBackgroundResource(editable.length() == 13 ? // R.drawable.shape_mobile_login_light : R.drawable.shape_login_gain_sms); } }); @@ -222,7 +352,6 @@ protected void onResume() { super.onResume(); Log.i(TAG, "onResume"); - MobclickAgent.onResume(this); boolean isLogin = UserUtil.isLogin(getApplicationContext()); if (isLogin) {//鐢ㄦ埛宸茬粡鐧诲綍 if (isWXLogin) { @@ -252,6 +381,9 @@ mAquery.id(R.id.ll_other_login).visibility(View.GONE); mAquery.id(R.id.tv_login_onekey).text("鏈満鍙风爜涓�閿粦瀹�"); mAquery.id(R.id.tv_mobile_hint).text(String.format("鏂扮殑鎵嬫満鍙峰繀椤绘病鏈夌粦瀹氳繃鍏朵粬%s甯愬彿", getResources().getString(R.string.app_name))); + + mAquery.id(R.id.cb_agree).checked(false); + break; } @@ -285,6 +417,9 @@ startActivity(intent1); break; case R.id.tv_login_wx: + if (!isAgreed()) { + return; + } UserCustomEvent.userLoginWeixin(LoginSelectActivity.this); if (ShoppingApplication.application.mWxApi.isWXAppInstalled()) { isWXLogin = true; @@ -297,10 +432,102 @@ } break; case R.id.tv_login_qq: - //TODO QQ鐧诲綍 + if (!isAgreed()) { + return; + } + //QQ鐧诲綍寮�濮� + DialogUtil.show(loadingDialog); + QQLoginManager.getInstance(getApplicationContext()).startLogin(this, new QQLoginManager.QQLoginListener() { + @Override + public void onAuthCancel() { + DialogUtil.dismiss(loadingDialog); + } + + @Override + public void onAuthSuccess(String openId) { + } + + @Override + public void onAuthFail(int code, String msg) { + DialogUtil.dismiss(loadingDialog); + SingleToast.showToast(getApplicationContext(), "QQ鎺堟潈澶辫触锛岃绋嶅悗鍐嶈瘯"); + } + + @Override + public void onGetUserInfoSuccess(final QQLoginManager.QQUserInfo user) { + Log.i(TAG, new Gson().toJson(user)); + runOnUiThread(new Runnable() { + @Override + public void run() { + DialogUtil.dismiss(loadingDialog); + //TODO 鍋歈Q鐧诲綍 + LoginManager.loginByQQ(user, new LoginManager.LoginAndBindListener() { + + @Override + public void onLoginStart() { + super.onLoginStart(); + DialogUtil.show(loadingDialog); + } + + @Override + public void onLoginFinish() { + super.onLoginFinish(); + DialogUtil.dismiss(loadingDialog); + } + + @Override + public void onLoginFail(int code, String msg) { + super.onLoginFail(code, msg); + Toast.makeText(getApplicationContext(), msg, Toast.LENGTH_SHORT).show(); + } + + @Override + public void onLoginSuccess(UserInfo user) { + super.onLoginSuccess(user); + UserUtil.loginSuccess(getApplicationContext(), user); + Toast.makeText(getApplicationContext(), "鎭枩浣狅紝鐧诲綍鎴愬姛", Toast.LENGTH_SHORT).show(); + finish(); + } + + @Override + public void bindPhone(String key) { + super.bindPhone(key); + Intent intent = new Intent(getApplicationContext(), LoginSelectActivity.class); + intent.putExtra("type", LoginSelectActivity.TYPE_BIND_WITHOUT_LOGINED); + intent.putExtra("key", key); + startActivity(intent); +// finish(); + } + + + }); + + + } + }); + + + } + + @Override + public void onGetUserInfoFail(int code, String msg) { + runOnUiThread(new Runnable() { + @Override + public void run() { + SingleToast.showToast(getApplicationContext(), "鐢ㄦ埛淇℃伅鑾峰彇澶辫触锛岃绋嶅悗鍐嶈瘯"); + DialogUtil.dismiss(loadingDialog); + } + }); + + } + }); + break; case R.id.tv_login_gain_sms: + if (!isAgreed() && (type == TYPE_LOGIN || type == TYPE_BIND_WITHOUT_LOGINED)) { + return; + } tv_login_gain_sms.setEnabled(false); UserCustomEvent.userLoginSms(LoginSelectActivity.this); isWXLogin = false; @@ -311,11 +538,20 @@ } break; - case R.id.tv_login_onekey: - //TODO 涓�閿櫥褰� - openOneKeyLogin(true) + case R.id.tv_agree: + mAquery.id(R.id.cb_agree).checked(!mAquery.id(R.id.cb_agree).isChecked()); break; } + } + + private boolean isAgreed() { + if (!mAquery.id(R.id.cb_agree).isChecked()) { + LinearLayout ll_user_agreement = (LinearLayout) mAquery.id(R.id.ll_user_agreement).getView(); + ll_user_agreement.startAnimation(AnimationUtils.loadAnimation(this, R.anim.user_agreement)); + SingleToast.showToast(getApplicationContext(), "璇峰悓鎰忕敤鎴峰崗璁笌闅愮鏀跨瓥"); + return false; + } + return true; } private boolean isIntent = false; @@ -323,7 +559,6 @@ @Override protected void onPause() { super.onPause(); - MobclickAgent.onPause(this); if (isIntent) { finish(); } @@ -490,10 +725,11 @@ @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { - super.onActivityResult(requestCode, resultCode, data); if (requestCode == 99 && resultCode == 100) { finish(); } + QQLoginManager.getInstance(getApplicationContext()).onActivityResult(requestCode, resultCode, data); + super.onActivityResult(requestCode, resultCode, data); } public void onEventMainThread(WXLoginEvent event) { @@ -508,7 +744,8 @@ @Override protected void onDestroy() { - super.onDestroy(); + aliyunSmsOneKeyLoginManager.quitLoginPage(); EventBus.getDefault().unregister(this); + super.onDestroy(); } } -- Gitblit v1.8.0