rk
2 天以前 4a8ff39b0fab0627ef8f7459587d514cc01c3676
keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/guide/GuideActivity.java
对比新文件
@@ -0,0 +1,165 @@
package com.doumee.keyCabinet.ui.guide;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.text.TextUtils;
import android.view.KeyEvent;
import android.widget.Toast;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.lifecycle.Observer;
import com.doumee.keyCabinet.databinding.GuideActivityBinding;
import com.doumee.keyCabinet.utils.LMobileInfo;
import com.doumee.keyCabinet.utils.LogoutTool;
import com.doumee.keyCabinet.utils.face.GateConfigUtils;
import com.doumee.lib_coremodel.bean.event.ActionEventData;
import com.doumee.lib_coremodel.util.SpUtil;
import com.doumee.keyCabinet.MApplication;
import com.doumee.keyCabinet.R;
import com.doumee.keyCabinet.base.MyBaseActivity;
import com.doumee.keyCabinet.bean.DevConfigBean;
import com.doumee.keyCabinet.ui.main.MainActivity;
import com.doumee.keyCabinet.utils.LanguageUtil;
import com.doumee.keyCabinet.utils.update.PermissionUtils;
import com.doumee.keyCabinet.utils.update.PermissiondDialog;
import com.yanzhenjie.permission.runtime.Permission;
import java.util.List;
import dagger.hilt.android.AndroidEntryPoint;
import static android.Manifest.permission.RECEIVE_BOOT_COMPLETED;
@AndroidEntryPoint
public class GuideActivity extends MyBaseActivity<GuideViewModel, GuideActivityBinding> {
    //private final String videoUrl="http://doumeetest.oss-cn-beijing.aliyuncs.com/SVID_20230904_162640_1.mp4";
    private Handler handler = new Handler(){
        @Override
        public void handleMessage(@NonNull Message msg) {
            switch (msg.what) {
                case 1:
                    /*if(MApplication.getConfigBean().getShopId()==null){
                        if(isHavePermission){
                            handler.sendEmptyMessageDelayed(2,20000);
                            getVM().devLogin();
                        }
                    }*/
                    break;
                case 2:
                    getVM().resetReq();
                    break;
            }
        }
    };
    @Override
    public int getLayoutId() {
        return R.layout.guide_activity;
    }
    @Override
    public void initView(@Nullable Bundle savedInstanceState) {
        isAddCountTimer = false;
        normalConfig();
        SpUtil.initWH(this);
        LogoutTool.finishOtherAllActivity(GuideActivity.class.getSimpleName());
        getDB().setModel(getVM());
        GateConfigUtils.isConfigExit(this);
        getPermission();
        getDB().tvDvcode.setText(LMobileInfo.getDeviceUniqueId());
    }
    @Override
    public void initData(@Nullable Bundle savedInstanceState) {
    }
    private boolean isHavePermission = false;
    private void getPermission(){
        PermissionUtils.getPermission(this, new PermissionUtils.CallBack() {
            @Override
            public void sucess() {
                //鏄剧ず
                isHavePermission = true;
                getVM().devLogin();
                handler.sendEmptyMessageDelayed(2,20000);
            }
            @Override
            public void fail(List<String> permissions) {
                //System.out.println("----->"+ GsonTools.changeGsonToJson(permissions));
                showNoPermissionTip();
            }
        }, new String[]{Permission.WRITE_EXTERNAL_STORAGE,RECEIVE_BOOT_COMPLETED});
    }
    private PermissiondDialog permissiondDialog;
    private void showNoPermissionTip() {
        try {
            Toast.makeText(this,getString(R.string.guide_permiss_1) , Toast.LENGTH_LONG).show();
            if (permissiondDialog == null) {
                permissiondDialog = new PermissiondDialog(this, getString(R.string.help), getString(R.string.guide_permiss_2), getString(R.string.cancel),
                        getString(R.string.empower), new PermissiondDialog.OnClickListener() {
                    @Override
                    public void clickOk() {
                        permissiondDialog.dismiss();
                        PermissionUtils.gotoPermission(getContext());
                    }
                    @Override
                    public void clickNo() {
                        permissiondDialog.dismiss();
                        finish();
                    }
                });
            }
            if (!permissiondDialog.isShowing()) {
                permissiondDialog.show();
            }
        } catch (Exception e) {
        }
    }
    @Override
    protected void doRegister(int type, ActionEventData data) {
        switch (type){
            case 1:
                handler.sendEmptyMessageDelayed(1,30000);
                break;
            default:
                break;
        }
    }
    @Override
    protected void onResume() {
        super.onResume();
        if(!isHavePermission){
            getPermission();
        }
    }
    @Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        if (keyCode == KeyEvent.KEYCODE_BACK) {
            return true;
        }
        /*// 鎷︽埅MENU鎸夐挳鐐瑰嚮浜嬩欢锛岃浠栨棤浠讳綍鎿嶄綔
        if (keyCode == KeyEvent.KEYCODE_MENU) {
            return true;
        }*/
        return super.onKeyDown(keyCode, event);
    }
    @Override
    protected void onDestroy() {
        super.onDestroy();
        handler.removeCallbacksAndMessages(null);
        handler = null;
        //unregisterReceiver(mReceiver);
    }
}