UserRegisterFragment.java 9.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257
  1. package com.yyrh.ui.fragment;
  2. import android.app.Fragment;
  3. import android.os.Bundle;
  4. import android.os.CountDownTimer;
  5. import android.support.annotation.NonNull;
  6. import android.support.annotation.Nullable;
  7. import android.text.method.HideReturnsTransformationMethod;
  8. import android.text.method.PasswordTransformationMethod;
  9. import android.view.LayoutInflater;
  10. import android.view.View;
  11. import android.view.ViewGroup;
  12. import android.widget.Button;
  13. import android.widget.CheckBox;
  14. import android.widget.EditText;
  15. import android.widget.ImageView;
  16. import android.widget.TextView;
  17. import android.widget.Toast;
  18. import com.yyrh.constant.SDKSettings;
  19. import com.yyrh.constant.URLConstants;
  20. import com.yyrh.networking.NetRequestApi;
  21. import com.yyrh.sdk.SDKEntry;
  22. import com.yyrh.sdk.YyrhSdkManager;
  23. import com.yyrh.sdk.callback.RegisterCallback;
  24. import com.yyrh.ui.floatmenu.WvPageListDialog;
  25. import com.yyrh.utils.ResourceUtil;
  26. import com.yyrh.utils.ScreenShotUtil;
  27. import com.yyrh.utils.TosUtil;
  28. import com.yyrh.utils.Utils;
  29. public class UserRegisterFragment extends BaseFragment {
  30. private EditText reg_account_edit,reg_pwd_edit;
  31. private ImageView iv_clear_text,iv_show_pwd;
  32. private TextView tv_tip,tv_private_policy;
  33. private Button reg_compete_btn,btn_account_login,btn_guest_login,close_btn;
  34. private CheckBox cb_register;
  35. private boolean isShowPwd = true;
  36. private TimeCount time;
  37. @Nullable
  38. @Override
  39. public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
  40. View view = inflater.inflate(ResourceUtil.getLayoutId(getActivity(),"qj_register_dialog"), container, false);
  41. view.setClickable(true);
  42. return view;
  43. }
  44. @Override
  45. public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
  46. super.onViewCreated(view, savedInstanceState);
  47. reg_account_edit = view.findViewById(ResourceUtil.getId(getActivity(),"reg_account_edit"));
  48. reg_pwd_edit= view.findViewById(ResourceUtil.getId(getActivity(),"reg_pwd_edit"));
  49. reg_account_edit.setText("qj" + Utils.getRandom(7));
  50. reg_pwd_edit.setText(Utils.getRandom(7));
  51. cb_register= view.findViewById(ResourceUtil.getId(getActivity(),"cb_register"));
  52. iv_clear_text = view.findViewById(ResourceUtil.getId(getActivity(),"iv_clear_text"));
  53. iv_clear_text.setOnClickListener(this);
  54. iv_show_pwd = view.findViewById(ResourceUtil.getId(getActivity(),"iv_show_pwd"));
  55. iv_show_pwd.setOnClickListener(this);
  56. tv_tip = view.findViewById(ResourceUtil.getId(getActivity(),"tv_tip"));
  57. tv_tip.setOnClickListener(this);
  58. tv_private_policy = view.findViewById(ResourceUtil.getId(getActivity(),"tv_private_policy"));
  59. tv_private_policy.setOnClickListener(this);
  60. reg_compete_btn = view.findViewById(ResourceUtil.getId(getActivity(),"reg_compete_btn"));
  61. reg_compete_btn.setOnClickListener(this);
  62. btn_account_login = view.findViewById(ResourceUtil.getId(getActivity(),"btn_account_login"));
  63. btn_account_login.setOnClickListener(this);
  64. btn_guest_login = view.findViewById(ResourceUtil.getId(getActivity(),"btn_guest_login"));
  65. btn_guest_login.setOnClickListener(this);
  66. close_btn = view.findViewById(ResourceUtil.getId(getActivity(),"close_btn"));
  67. close_btn.setOnClickListener(this);
  68. }
  69. @Override
  70. public void onClick(View v) {
  71. super.onClick(v);
  72. int id = v.getId();
  73. if (id == ResourceUtil.getId(getActivity(), "reg_compete_btn")){
  74. registerInterval();
  75. startRegister(reg_account_edit.getText().toString(), reg_pwd_edit.getText().toString());
  76. }else if(id == ResourceUtil.getId(getActivity(), "iv_clear_text")){
  77. reg_account_edit.setText("");
  78. }else if(id == ResourceUtil.getId(getActivity(), "iv_show_pwd")){
  79. if (isShowPwd) {
  80. isShowPwd = false;
  81. reg_pwd_edit.setTransformationMethod(PasswordTransformationMethod.getInstance());
  82. iv_show_pwd.setImageResource(ResourceUtil.getMipmapId(getActivity(), "qj_close_eye"));
  83. } else {
  84. isShowPwd = true;
  85. reg_pwd_edit.setTransformationMethod(HideReturnsTransformationMethod.getInstance());
  86. iv_show_pwd.setImageResource(ResourceUtil.getMipmapId(getActivity(), "qj_open_eye"));
  87. }
  88. }else if(id == ResourceUtil.getId(getActivity(), "tv_tip")){
  89. String url = SDKSettings.UserCentUrl + URLConstants.USERPROTOCOLWEB + "gcp_code=" + SDKSettings.gcp_code
  90. + "&game_code=" + SDKSettings.game_code;
  91. new WvPageListDialog(getActivity(),ResourceUtil.getStyleId(getActivity(),"qj_base_dialog"),url).show();
  92. }else if(id == ResourceUtil.getId(getActivity(), "tv_private_policy")){
  93. String url = SDKSettings.UserCentUrl + URLConstants.USERPOLICYWEB + "gcp_code=" + SDKSettings.gcp_code
  94. + "&game_code=" + SDKSettings.game_code;
  95. new WvPageListDialog(getActivity(),ResourceUtil.getStyleId(getActivity(),"qj_base_dialog"),url).show();
  96. }else if(id == ResourceUtil.getId(getActivity(), "btn_account_login")){
  97. Fragment accountLoginFragment = FragmentUtils.getSdkFragment(getActivity(),FragmentUtils.SDK_PHONE_REGISTER_TAG);
  98. replaceFragmentToActivity(getFragmentManager(),accountLoginFragment,ResourceUtil.getId(getActivity(),"qj_content"));
  99. }else if(id == ResourceUtil.getId(getActivity(), "btn_guest_login")){
  100. Fragment accountLoginFragment = FragmentUtils.getSdkFragment(getActivity(),FragmentUtils.SDK_LOGIN_TAG);
  101. replaceFragmentToActivity(getFragmentManager(),accountLoginFragment,ResourceUtil.getId(getActivity(),"qj_content"));
  102. }else if(id == ResourceUtil.getId(getActivity(), "close_btn")){
  103. Fragment accountLoginFragment = FragmentUtils.getSdkFragment(getActivity(),FragmentUtils.SDK_PHONE_REGISTER_TAG);
  104. replaceFragmentToActivity(getFragmentManager(),accountLoginFragment,ResourceUtil.getId(getActivity(),"qj_content"));
  105. }
  106. }
  107. private void startRegister(final String account, final String pwd) {
  108. if (!cb_register.isChecked()){
  109. new TosUtil(getActivity(),TosUtil.TOAST_ERROR, getActivity().getString(ResourceUtil.getStringId(getActivity(), "qj_pls_checked_reg_tip"))).show();
  110. return;
  111. }
  112. if (Utils.judgeStrNull(account)){
  113. new TosUtil(getActivity(),TosUtil.TOAST_ERROR, getActivity().getString(ResourceUtil.getStringId(getActivity(), "qj_band_need_account"))).show();
  114. return;
  115. }
  116. if (Utils.isNumeric(account)){
  117. new TosUtil(getActivity(),TosUtil.TOAST_ERROR, getActivity().getString(ResourceUtil.getStringId(getActivity(), "qj_acount_not_only_number"))).show();
  118. return;
  119. }
  120. if (Utils.judgeStrNull(pwd)){
  121. new TosUtil(getActivity(),TosUtil.TOAST_ERROR, getActivity().getString(ResourceUtil.getStringId(getActivity(), "qj_band_need_pwd"))).show();
  122. return;
  123. }
  124. if (account.length() < 6 || pwd.length() > 20) {
  125. new TosUtil(getActivity(),TosUtil.TOAST_ERROR, getActivity().getString(ResourceUtil.getStringId(getActivity(), "qj_regist_account_error"))).show();
  126. return;
  127. }
  128. if (pwd.length() < 6 || pwd.length() > 20) {
  129. new TosUtil(getActivity(), TosUtil.TOAST_ERROR, getActivity().getString(ResourceUtil.getStringId(getActivity(), "qj_regist_pwd_error"))).show();
  130. return;
  131. }
  132. NetRequestApi.registerWithYy( getActivity(), account, pwd, new RegisterCallback() {
  133. @Override
  134. public void onRegisterSuccess(String token) {
  135. if (ScreenShotUtil.shotByView(getActivity(),getView())){
  136. new TosUtil(getActivity(),TosUtil.TOAST_GREEN, getString(ResourceUtil.getStringId(getActivity(), "qj_register_screen_tip"))).show();
  137. }
  138. SDKSettings.isVefityRealName = false;
  139. YyrhSdkManager.defaultManager(SDKEntry.getSdkInstance().gameAct).saveUserLoginInfo(SDKEntry.getSdkInstance().gameAct,account,pwd,token);
  140. SDKEntry.getSdkInstance().adSdkCallback.onRegisterSuccess(account);
  141. if (time != null){
  142. time.cancel();
  143. }
  144. getActivity().finish();
  145. }
  146. @Override
  147. public void onRegisterFailed(String msg) {
  148. new TosUtil(getActivity(),TosUtil.TOAST_ERROR, msg).show();
  149. }
  150. });
  151. }
  152. private void registerInterval() {
  153. reg_compete_btn.setEnabled(false);
  154. reg_compete_btn.setText("3s");
  155. reg_compete_btn.setBackgroundResource(ResourceUtil.getDrawableId(getActivity(),"qj_login_button_grayed_style"));
  156. time = new TimeCount(3000, 1000);
  157. time.start();
  158. }
  159. class TimeCount extends CountDownTimer {
  160. public TimeCount(long millisInFuture, long countDownInterval) {
  161. super(millisInFuture, countDownInterval);
  162. // TODO Auto-generated constructor stub
  163. }
  164. @Override
  165. public void onTick(long millisUntilFinished) {
  166. // TODO Auto-generated method stub
  167. reg_compete_btn.setText(millisUntilFinished / 1000 + "s");
  168. }
  169. @Override
  170. public void onFinish() {
  171. // TODO Auto-generated method stub
  172. reg_compete_btn.setEnabled(true);
  173. reg_compete_btn.setBackgroundResource(ResourceUtil.getDrawableId(getActivity(),"qj_login_button_style"));
  174. reg_compete_btn.setText(ResourceUtil.getStringId(getActivity(), "qj_login"));
  175. }
  176. }
  177. }