From 0fd690cf61ce8b954cd742fb790cd8c3cce18d6d Mon Sep 17 00:00:00 2001 From: wxr <464027401@qq.com> Date: 星期二, 03 一月 2023 17:31:02 +0800 Subject: [PATCH] 备份 --- AndroidOpenDemo/app/src/main/java/com/utils/HdlToLcUtils.java | 61 +++++++++++++++++++++++++++--- 1 files changed, 55 insertions(+), 6 deletions(-) diff --git a/AndroidOpenDemo/app/src/main/java/com/utils/HdlToLcUtils.java b/AndroidOpenDemo/app/src/main/java/com/utils/HdlToLcUtils.java index 0fdee9f..72f3259 100644 --- a/AndroidOpenDemo/app/src/main/java/com/utils/HdlToLcUtils.java +++ b/AndroidOpenDemo/app/src/main/java/com/utils/HdlToLcUtils.java @@ -16,6 +16,7 @@ import com.mm.android.deviceaddmodule.LCDeviceEngine; import com.mm.android.deviceaddmodule.mobilecommon.AppConsume.ProviderManager; import com.mm.android.deviceaddmodule.openapi.CONST; +import com.mm.android.deviceaddmodule.openapi.HttpClient; import com.usermodule.net.IUserDataCallBack; import com.usermodule.net.UserNetManager; @@ -100,24 +101,31 @@ if(!EventBus.getDefault().isRegistered(this)){ EventBus.getDefault().register(this); } + this.iAddCamera = iAddCamera; //寮�鍚坊鍔犻〉闈� activity.startActivity(new Intent(activity.getApplication(), DeviceAddActivity.class)); + HdlToLcUtils.getInstance().requestCameraPermissions(); + } + + public void ShowErrorInfo(boolean isShow){ + HttpClient.SetShowErrorInfo(isShow); } @Subscribe(threadMode = ThreadMode.MAIN) public void onGetMessage(String obj) { - if(obj.equals("backXamarin")){ - iAddCamera.back(); - - if(EventBus.getDefault().isRegistered(this)){ + if (obj.equals("backXamarin")) { + if (EventBus.getDefault().isRegistered(this)) { EventBus.getDefault().unregister(this); } + + if (iAddCamera != null) + iAddCamera.back(); } } - public void play(String deviceId){ - new DeviceUtils(deviceId).play(); + public void play(String deviceId,String title){ + new DeviceUtils(deviceId,title).play(); } @@ -172,6 +180,47 @@ }); } + public boolean checkCameraPermissions(){ + boolean isGranted = ActivityCompat.checkSelfPermission(activity, Manifest.permission.CAMERA) == PackageManager.PERMISSION_GRANTED + && ActivityCompat.checkSelfPermission(activity, Manifest.permission.WRITE_EXTERNAL_STORAGE) == PackageManager.PERMISSION_GRANTED + && ActivityCompat.checkSelfPermission(activity, Manifest.permission.READ_EXTERNAL_STORAGE) == PackageManager.PERMISSION_GRANTED; + return isGranted; + } + + /** + * 璇锋眰鎽勫儚澶村叏涓� + */ + public void requestCameraPermissions(){ + boolean isMinSDKM = Build.VERSION.SDK_INT < 23; + boolean isGranted = ActivityCompat.checkSelfPermission(activity, Manifest.permission.CAMERA) == PackageManager.PERMISSION_GRANTED + && ActivityCompat.checkSelfPermission(activity, Manifest.permission.WRITE_EXTERNAL_STORAGE) == PackageManager.PERMISSION_GRANTED + && ActivityCompat.checkSelfPermission(activity, Manifest.permission.READ_EXTERNAL_STORAGE) == PackageManager.PERMISSION_GRANTED; + if (isMinSDKM || isGranted) { + return; + } + requestRecordCameraPermission(); + } + + + private void requestRecordCameraPermission() { + if (ActivityCompat.shouldShowRequestPermissionRationale(activity, Manifest.permission.CAMERA) + || ActivityCompat.shouldShowRequestPermissionRationale(activity, Manifest.permission.WRITE_EXTERNAL_STORAGE) + || ActivityCompat.shouldShowRequestPermissionRationale(activity, Manifest.permission.READ_EXTERNAL_STORAGE)) { + ActivityCompat.requestPermissions(activity, + new String[]{ + Manifest.permission.CAMERA, + Manifest.permission.WRITE_EXTERNAL_STORAGE, + Manifest.permission.READ_EXTERNAL_STORAGE}, + 1); + } else { + ActivityCompat.requestPermissions(activity, + new String[]{ + Manifest.permission.CAMERA, + Manifest.permission.WRITE_EXTERNAL_STORAGE, + Manifest.permission.READ_EXTERNAL_STORAGE}, + 1); + } + } /** * 璇锋眰瀵硅鏉冮檺 -- Gitblit v1.8.0