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 { //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 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); } }