导航菜单

页面标题

页面副标题

微商客 v2.1.2 - FunctionPermissionManageActivity.java 源代码

正在查看: 微商客 v2.1.2 应用的 FunctionPermissionManageActivity.java JAVA 源代码文件

本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。


package com.jianzhen.wsk.ui;

import android.app.Activity;
import android.content.Context;
import android.content.pm.ActivityInfo;
import android.os.Build;
import android.os.Bundle;
import android.view.View;
import android.widget.TextView;
import androidx.core.content.ContextCompat;
import com.auxiliary.library.util.SettingUtil;
import com.hjq.permissions.OnPermissionCallback;
import com.hjq.permissions.Permission;
import com.hjq.permissions.XXPermissions;
import com.jianzhen.wsk.BaseActivity;
import com.jianzhen.wsk.R;
import com.jianzhen.wsk.dialog.FzTipDialog;
import com.umeng.analytics.MobclickAgent;
import java.lang.reflect.Field;
import java.util.List;
import yscom.google.android.marvin.talkback.TalkBackService;

public class FunctionPermissionManageActivity extends BaseActivity {
    public static final int REQUEST_CODE = 333;
    private boolean hasAccessPermission;
    private boolean hasFloatPermission;
    private boolean hasStoragePermission;
    private boolean hasUsageAccess;
    private TextView tvOpen1;
    private TextView tvOpen2;
    private TextView tvOpen3;
    private TextView tvOpen4;

    @Override
    protected int getLayoutId() {
        return R.layout.dlg_permission_manage;
    }

    @Override
    protected void initTitle() {
    }

    @Override
    protected boolean isSetBaseTitle() {
        return false;
    }

    @Override
    protected void onCreate(Bundle bundle) {
        if (needCheckOrientation()) {
            fixOrientation();
        }
        super.onCreate(bundle);
    }

    protected void onResume() {
        backApplyPermission();
        super.onResume();
    }

    public void lambda$initPageView$0(View view) {
        finish();
    }

    @Override
    protected void initPageView() {
        findViewById(R.id.iv_close).setOnClickListener(new View.OnClickListener() {
            @Override
            public final void onClick(View view) {
                FunctionPermissionManageActivity.this.lambda$initPageView$0(view);
            }
        });
        this.tvOpen1 = (TextView) findViewById(R.id.tv_cc_start);
        this.tvOpen2 = (TextView) findViewById(R.id.tv_xfc_start);
        this.tvOpen3 = (TextView) findViewById(R.id.tv_syqk_start);
        this.tvOpen4 = (TextView) findViewById(R.id.tv_fzfw_start);
        this.tvOpen1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                XXPermissions.with((Context) FunctionPermissionManageActivity.this).permission(Permission.WRITE_EXTERNAL_STORAGE).permission(Permission.READ_EXTERNAL_STORAGE).request(new OnPermissionCallback() {
                    @Override
                    public void onDenied(List<String> list, boolean z) {
                    }

                    @Override
                    public void onGranted(List<String> list, boolean z) {
                        if (z) {
                            FunctionPermissionManageActivity.this.hasStoragePermission = true;
                        }
                    }
                });
            }
        });
        this.tvOpen2.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                SettingUtil.requestAlertWindow(FunctionPermissionManageActivity.this, 100);
            }
        });
        this.tvOpen3.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                SettingUtil.startUsageAccess(FunctionPermissionManageActivity.this, 200);
            }
        });
        this.tvOpen4.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                new FzTipDialog(FunctionPermissionManageActivity.this).show();
            }
        });
        backApplyPermission();
        MobclickAgent.onEvent(this, "start_permission");
    }

    private void backApplyPermission() {
        adjustUI();
    }

    private void adjustUI() {
        String[] strArr = {Permission.READ_MEDIA_IMAGES, Permission.READ_MEDIA_VIDEO, Permission.READ_MEDIA_AUDIO};
        this.hasFloatPermission = XXPermissions.isGranted((Context) this, Permission.SYSTEM_ALERT_WINDOW);
        this.hasAccessPermission = TalkBackService.INSTANCE != null || SettingUtil.isAccessibility(this, TalkBackService.class.getName());
        this.hasUsageAccess = SettingUtil.isUsageAccess(this);
        boolean isGranted = XXPermissions.isGranted((Context) this, strArr);
        this.hasStoragePermission = isGranted;
        if (isGranted) {
            this.tvOpen1.setSelected(true);
            this.tvOpen1.setText("已开启");
            this.tvOpen1.setBackgroundResource(R.drawable.ok_button_bg_2);
            this.tvOpen1.setTextColor(ContextCompat.getColor(this, R.color.text_black));
        } else {
            this.tvOpen1.setSelected(false);
            this.tvOpen1.setText("去开启");
            this.tvOpen1.setEnabled(true);
            this.tvOpen1.setBackgroundResource(R.drawable.ok_button_bg_1);
            this.tvOpen1.setTextColor(ContextCompat.getColor(this, 2131099964));
        }
        if (!this.hasFloatPermission) {
            this.tvOpen2.setSelected(false);
            this.tvOpen2.setText("去开启");
            this.tvOpen2.setEnabled(true);
            this.tvOpen2.setBackgroundResource(R.drawable.ok_button_bg_1);
            this.tvOpen2.setTextColor(ContextCompat.getColor(this, 2131099964));
        } else {
            this.tvOpen2.setSelected(true);
            this.tvOpen2.setText("已开启");
            this.tvOpen2.setBackgroundResource(R.drawable.ok_button_bg_2);
            this.tvOpen2.setTextColor(ContextCompat.getColor(this, R.color.text_black));
        }
        if (!this.hasUsageAccess) {
            this.tvOpen3.setSelected(false);
            this.tvOpen3.setText("去开启");
            this.tvOpen3.setBackgroundResource(R.drawable.ok_button_bg_1);
            this.tvOpen3.setTextColor(ContextCompat.getColor(this, 2131099964));
        } else {
            this.tvOpen3.setSelected(true);
            this.tvOpen3.setText("已开启");
            this.tvOpen3.setBackgroundResource(R.drawable.ok_button_bg_2);
            this.tvOpen3.setTextColor(ContextCompat.getColor(this, R.color.text_black));
        }
        if (!this.hasAccessPermission) {
            this.tvOpen4.setSelected(false);
            this.tvOpen4.setText("去开启");
            this.tvOpen4.setBackgroundResource(R.drawable.ok_button_bg_1);
            this.tvOpen4.setTextColor(ContextCompat.getColor(this, 2131099964));
        } else {
            this.tvOpen4.setSelected(true);
            this.tvOpen4.setText("已开启");
            this.tvOpen4.setBackgroundResource(R.drawable.ok_button_bg_2);
            this.tvOpen4.setTextColor(ContextCompat.getColor(this, R.color.text_black));
        }
        if (this.hasFloatPermission && this.hasAccessPermission) {
            MobclickAgent.onEvent(this, "permission__start_success");
            finish();
        }
    }

    protected void onPause() {
        super.onPause();
    }

    private boolean needCheckOrientation() {
        return Build.VERSION.SDK_INT == 26;
    }

    private void fixOrientation() {
        try {
            Field declaredField = Activity.class.getDeclaredField("mActivityInfo");
            declaredField.setAccessible(true);
            ((ActivityInfo) declaredField.get(this)).screenOrientation = -1;
            declaredField.setAccessible(false);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}