From 68d9078b49cfa8e83ed553835b05d4042c183969 Mon Sep 17 00:00:00 2001
From: wxr <464027401@qq.com>
Date: 星期四, 16 三月 2023 09:39:34 +0800
Subject: [PATCH] 云台不显示问题修复,LC问题

---
 AndroidOpenDemo/app/src/main/java/com/utils/HdlToLcUtils.java |   68 +++++++++++++++++++++++++++++-----
 1 files changed, 58 insertions(+), 10 deletions(-)

diff --git a/AndroidOpenDemo/app/src/main/java/com/utils/HdlToLcUtils.java b/AndroidOpenDemo/app/src/main/java/com/utils/HdlToLcUtils.java
index 75d5ed4..8dc4320 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;
 
@@ -66,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);
 //        }
 
@@ -89,7 +90,6 @@
     }
     public  void openActivity() {
         try {
-//            getSubAccountToken("827a98c98da7469b8bc19bb6a3c7651906");
             activity.startActivity(new Intent(activity, com.lechange.demo.ui.DeviceListActivity.class));
         } catch (Throwable e) {
             Toast.makeText(activity, e.getMessage(), Toast.LENGTH_SHORT).show();
@@ -100,24 +100,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 +179,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