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 |   86 +++++++++++++++++++++++++++++++++++++++----
 1 files changed, 78 insertions(+), 8 deletions(-)

diff --git a/AndroidOpenDemo/app/src/main/java/com/utils/HdlToLcUtils.java b/AndroidOpenDemo/app/src/main/java/com/utils/HdlToLcUtils.java
index fce5f7a..72f3259 100644
--- a/AndroidOpenDemo/app/src/main/java/com/utils/HdlToLcUtils.java
+++ b/AndroidOpenDemo/app/src/main/java/com/utils/HdlToLcUtils.java
@@ -8,6 +8,7 @@
 import android.support.v4.app.ActivityCompat;
 import android.widget.Toast;
 
+import com.callBack.IAddCamera;
 import com.common.openapi.ClassInstanceManager;
 import com.lechange.demo.tools.MediaPlayHelper;
 import com.mm.android.deviceaddmodule.CommonParam;
@@ -15,17 +16,23 @@
 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;
 
+import org.greenrobot.eventbus.EventBus;
+import org.greenrobot.eventbus.Subscribe;
+import org.greenrobot.eventbus.ThreadMode;
+
 public class HdlToLcUtils {
 
-    private  Activity activity;
+    private Activity activity;
     private String homeId;
     private String token;
     private String subAccessToken;
+    private IAddCamera iAddCamera;
 
-    public  Activity getActivity() {
+    public Activity getActivity() {
         return activity;
     }
 
@@ -60,9 +67,9 @@
 //            mUrl = CONST.Envirment.CHINA_TEST.url;
 //            ProviderManager.getAppProvider().setAppType(0);
 //        } else {
-//            mAppSecret = "017fc27bb987496f9a677e4e6f0c88";
-//            mAppid = "lc0285433bc7e8423d";
-//            mUrl = CONST.Envirment.OVERSEAS_PRO.url;
+//            secretKey = "017fc27bb987496f9a677e4e6f0c88";
+//            appKey = "lc0285433bc7e8423d";
+//            url = CONST.Envirment.OVERSEAS_PRO.url;
              ProviderManager.getAppProvider().setAppType(1);
 //        }
 
@@ -90,13 +97,35 @@
         }
     }
 
-    public  void addCamera() {
+    public  void addCamera(IAddCamera iAddCamera) {
+        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 play(String deviceId){
-        new DeviceUtils(deviceId).play();
+    public void ShowErrorInfo(boolean isShow){
+        HttpClient.SetShowErrorInfo(isShow);
+    }
+
+    @Subscribe(threadMode = ThreadMode.MAIN)
+    public void onGetMessage(String obj) {
+        if (obj.equals("backXamarin")) {
+            if (EventBus.getDefault().isRegistered(this)) {
+                EventBus.getDefault().unregister(this);
+            }
+
+            if (iAddCamera != null)
+                iAddCamera.back();
+        }
+    }
+
+    public  void play(String deviceId,String title){
+        new DeviceUtils(deviceId,title).play();
     }
 
 
@@ -151,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