AboutActivity.java 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. package com.datarecovery.master.module.about;
  2. import android.app.Activity;
  3. import android.content.Context;
  4. import android.content.Intent;
  5. import android.os.Bundle;
  6. import android.text.TextUtils;
  7. import androidx.annotation.NonNull;
  8. import androidx.databinding.Bindable;
  9. import com.atmob.app.lib.base.BaseActivity;
  10. import com.atmob.common.data.KVUtils;
  11. import com.atmob.user.AtmobUser;
  12. import com.datarecovery.master.data.consts.Constants;
  13. import com.datarecovery.master.data.consts.EventId;
  14. import com.datarecovery.master.data.repositories.ConfigRepository;
  15. import com.datarecovery.master.databinding.ActivityAboutBinding;
  16. import com.datarecovery.master.handler.EventHelper;
  17. import com.datarecovery.master.module.browser.BrowserActivity;
  18. import com.datarecovery.master.sdk.gravity.GravityHelper;
  19. import com.datarecovery.master.utils.BoxingUtil;
  20. import com.datarecovery.master.utils.SystemUtil;
  21. import com.datarecovery.master.utils.ToastUtil;
  22. import com.gyf.immersionbar.ImmersionBar;
  23. import java.util.concurrent.TimeUnit;
  24. import atmob.reactivex.rxjava3.core.Observable;
  25. import atmob.reactivex.rxjava3.disposables.Disposable;
  26. import dagger.hilt.android.AndroidEntryPoint;
  27. /**
  28. * 关于
  29. */
  30. @AndroidEntryPoint
  31. public class AboutActivity extends BaseActivity<ActivityAboutBinding> {
  32. public static void start(Context context) {
  33. Intent intent = new Intent(context, AboutActivity.class);
  34. if (!(context instanceof Activity)) {
  35. intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
  36. }
  37. context.startActivity(intent);
  38. }
  39. private int times = 0;
  40. private Disposable subscribe;
  41. @Override
  42. protected void onCreate(Bundle savedInstanceState) {
  43. super.onCreate(savedInstanceState);
  44. initView();
  45. }
  46. @Override
  47. protected boolean shouldImmersion() {
  48. return true;
  49. }
  50. @Override
  51. protected void configImmersion(@NonNull ImmersionBar immersionBar) {
  52. immersionBar.statusBarDarkFont(true);
  53. }
  54. private void initView() {
  55. binding.tvVersionCode.setText(SystemUtil.getVersionName(getBaseContext()));
  56. binding.toolBar.setNavigationOnClickListener(v -> onBackPressed());
  57. addTopStatusBarHeight(binding.toolBar);
  58. binding.setUserAgreementClick(v -> {
  59. EventHelper.report(EventId.hf1001103);
  60. BrowserActivity.start(this, Constants.USER_AGREEMENT);
  61. });
  62. binding.setPrivacyAgreementClick(v -> {
  63. EventHelper.report(EventId.hf1001104);
  64. BrowserActivity.start(this, Constants.PRIVACY_POLICY);
  65. });
  66. binding.vTrial.setOnClickListener(v -> {
  67. if (times == 0) {
  68. if (subscribe != null && !subscribe.isDisposed()) {
  69. subscribe.dispose();
  70. }
  71. subscribe = Observable.timer(5000, TimeUnit.MILLISECONDS)
  72. .subscribe(aLong -> times = 0);
  73. times++;
  74. } else if (times == 10) {
  75. showTrialToast();
  76. } else {
  77. times++;
  78. }
  79. });
  80. binding.setInformationListClick(v -> BrowserActivity.start(this, Constants.USER_INFO_LIST));
  81. binding.setSdkSharingListClick(v -> BrowserActivity.start(this, Constants.THREE_SDK_LIST));
  82. }
  83. @Override
  84. protected void onDestroy() {
  85. super.onDestroy();
  86. if (subscribe != null && !subscribe.isDisposed()) {
  87. subscribe.dispose();
  88. }
  89. }
  90. private void showTrialToast() {
  91. //显示 是否开启试用 -- 打包渠道 -- 归因结果 -- 归因渠道
  92. StringBuilder sb = new StringBuilder();
  93. sb.append("--");
  94. sb.append(ConfigRepository.getInstance().isIsOpenTrialMembership());
  95. sb.append("--");
  96. sb.append(AtmobUser.getAtmobChannel());
  97. sb.append("--");
  98. sb.append(GravityHelper.isAttribution());
  99. sb.append("--");
  100. String gravityCompany = GravityHelper.getGravityCompany();
  101. sb.append((TextUtils.isEmpty(gravityCompany)) ? "null" : gravityCompany);
  102. ToastUtil.show(sb.toString(), ToastUtil.LENGTH_SHORT);
  103. }
  104. }