光环助手V3.7.2-新增游戏时长功能(基本完成数据提交部分) https://gitlab.ghzs.com/pm/halo-app-issues/issues/722

This commit is contained in:
kehaoyuan
2019-12-05 18:10:35 +08:00
parent 75883e11d8
commit d02a527b36
7 changed files with 284 additions and 10 deletions

View File

@ -23,6 +23,10 @@ import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.appcompat.app.AlertDialog;
import androidx.core.content.ContextCompat;
import com.gh.common.view.DrawableView;
import com.gh.gamecenter.AboutActivity;
import com.gh.gamecenter.R;
@ -33,10 +37,6 @@ import com.lightgame.utils.Utils;
import java.util.List;
import java.util.concurrent.atomic.AtomicBoolean;
import androidx.annotation.NonNull;
import androidx.appcompat.app.AlertDialog;
import androidx.core.content.ContextCompat;
public class DialogUtils {
public static Dialog showWaitDialog(Context context, String msg) {
@ -788,7 +788,7 @@ public class DialogUtils {
public static void showPrivacyPolicyDialog(Context context, String title, String content, EmptyCallback callback) {
final Context activityContext = checkDialogContext(context);
// 区分此 dialog 是点击 dialog 外部取消的还是点击返回取消的
AtomicBoolean isCanceledByClickOutsideOfDialog = new AtomicBoolean(true);
@ -804,7 +804,7 @@ public class DialogUtils {
}
final Dialog dialog = new Dialog(activityContext, R.style.GhAlertDialog);
dialog.getWindow().setBackgroundDrawableResource(android.R.color.transparent);
View contentView = LayoutInflater.from(activityContext).inflate(R.layout.dialog_privacy_policy, null);
TextView contentTv = contentView.findViewById(R.id.dialog_content);
@ -844,13 +844,13 @@ public class DialogUtils {
dialog.setOnDismissListener(d -> {
callback.onCallback();
});
dialog.setOnCancelListener(cd -> {
if (isCanceledByClickOutsideOfDialog.get()) {
MtaHelper.onEvent("隐私政策弹窗", "隐私政策弹窗", "点击空白");
}
});
dialog.setOnKeyListener((dialog1, keyCode, event) -> {
if (keyCode == KeyEvent.KEYCODE_BACK && event.getAction() == KeyEvent.ACTION_UP) {
isCanceledByClickOutsideOfDialog.set(false);
@ -923,6 +923,48 @@ public class DialogUtils {
return dialog;
}
public static Dialog showUsageStatsDialog(Context context, final ConfirmListener cmListener, final CancelListener clListener) {
context = checkDialogContext(context);
final Dialog dialog = new Dialog(context, R.style.GhAlertDialog);
View contentView = LayoutInflater.from(context).inflate(R.layout.dialog_alert, null);
TextView contentTv = contentView.findViewById(R.id.dialog_content);
TextView titleTv = contentView.findViewById(R.id.dialog_title);
TextView negativeTv = contentView.findViewById(R.id.dialog_negative);
TextView positiveTv = contentView.findViewById(R.id.dialog_positive);
contentTv.setText("开启后可以为你记录每款游戏的游戏时长,你只需再系统【有权查看使用情况的应用】设置中开启即可");
titleTv.setText("游戏时长记录");
negativeTv.setText("暂不");
positiveTv.setText("去开启");
negativeTv.setOnClickListener(view -> {
if (clListener != null) {
clListener.onCancel();
}
dialog.dismiss();
});
positiveTv.setOnClickListener(view -> {
if (cmListener != null) {
cmListener.onConfirm();
}
dialog.dismiss();
});
dialog.setOnDismissListener(dialog1 -> {
if (clListener != null) {
clListener.onCancel();
}
});
dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
dialog.setContentView(contentView);
dialog.show();
return dialog;
}
/**
* @param context may be is application context
* @return activity context