From 57a05be8ea321d9268c146a542b1ecf7d023bf1c Mon Sep 17 00:00:00 2001
From: hxb <hxb@hdlchina.com.cn>
Date: 星期二, 22 十一月 2022 17:17:44 +0800
Subject: [PATCH] 增加了播放
---
AndroidOpenDemo/app/src/main/java/com/net/IUserDataCallBack.java | 2
/dev/null | 132 --------------
AndroidOpenDemo/app/src/main/java/com/utils/HdlToLcUtils.java | 199 ++++++++++++++++++++++
AndroidOpenDemo/.idea/workspace.xml | 63 ++++--
AndroidOpenDemo/app/src/main/java/com/net/UserNetManager.java | 2
AndroidOpenDemo/app/src/main/java/com/lechange/demo/ui/EnvGuideActivity.java | 12 +
AndroidOpenDemo/app/src/main/java/com/lechange/demo/ui/DeviceListActivity.java | 4
AndroidOpenDemo/app/src/main/java/com/utils/DeviceUtils.java | 82 +++++++++
8 files changed, 333 insertions(+), 163 deletions(-)
diff --git a/AndroidOpenDemo/.idea/workspace.xml b/AndroidOpenDemo/.idea/workspace.xml
index 98cdf1f..848df7b 100644
--- a/AndroidOpenDemo/.idea/workspace.xml
+++ b/AndroidOpenDemo/.idea/workspace.xml
@@ -15,11 +15,12 @@
</component>
<component name="ChangeListManager">
<list default="true" id="7bacc5cf-316f-4ad4-b191-7f5297eb7bcf" name="Default Changelist" comment="">
+ <change afterPath="$PROJECT_DIR$/app/src/main/java/com/utils/DeviceUtils.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
- <change beforePath="$PROJECT_DIR$/DeviceAddModule/src/main/java/com/mm/android/deviceaddmodule/openapi/HttpClient.java" beforeDir="false" afterPath="$PROJECT_DIR$/DeviceAddModule/src/main/java/com/mm/android/deviceaddmodule/openapi/HttpClient.java" afterDir="false" />
- <change beforePath="$PROJECT_DIR$/DeviceAddModule/src/main/java/com/mm/android/deviceaddmodule/openapi/HttpSend.java" beforeDir="false" afterPath="$PROJECT_DIR$/DeviceAddModule/src/main/java/com/mm/android/deviceaddmodule/openapi/HttpSend.java" afterDir="false" />
- <change beforePath="$PROJECT_DIR$/app/src/main/java/com/common/openapi/DeviceInfoOpenApiManager.java" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/com/common/openapi/DeviceInfoOpenApiManager.java" afterDir="false" />
- <change beforePath="$PROJECT_DIR$/app/src/main/java/com/hdl/HdlToLc.java" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/com/hdl/HdlToLc.java" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/app/src/main/java/com/hdl/HdlToLc.java" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/com/utils/HdlToLcUtils.java" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/app/src/main/java/com/hdl/net/IUserDataCallBack.java" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/com/net/IUserDataCallBack.java" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/app/src/main/java/com/hdl/net/UserNetManager.java" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/com/net/UserNetManager.java" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/app/src/main/java/com/lechange/demo/ui/DeviceListActivity.java" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/com/lechange/demo/ui/DeviceListActivity.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/src/main/java/com/lechange/demo/ui/EnvGuideActivity.java" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/com/lechange/demo/ui/EnvGuideActivity.java" afterDir="false" />
</list>
<option name="SHOW_DIALOG" value="false" />
@@ -136,6 +137,7 @@
<recent name="com" />
</key>
<key name="CopyClassDialog.RECENTS_KEY">
+ <recent name="com.utils" />
<recent name="com.mm.android.deviceaddmodule.utils" />
</key>
<key name="CopyFile.RECENT_KEYS">
@@ -348,51 +350,59 @@
</ignored-roots>
</component>
<component name="WindowStateProjectService">
- <state x="453" y="91" key="#com.intellij.ide.util.MemberChooser" timestamp="1669099481115">
+ <state x="453" y="91" key="#com.intellij.ide.util.MemberChooser" timestamp="1669107811029">
<screen x="0" y="0" width="1280" height="800" />
</state>
- <state x="453" y="91" key="#com.intellij.ide.util.MemberChooser/0.0.1280.800@0.0.1280.800" timestamp="1669099481115" />
- <state width="503" height="480" key="DebuggerActiveHint" timestamp="1669101875842">
+ <state x="453" y="91" key="#com.intellij.ide.util.MemberChooser/0.0.1280.800@0.0.1280.800" timestamp="1669107811029" />
+ <state x="180" y="331" key="#com.intellij.refactoring.move.MoveHandler.SelectRefactoringDialog" timestamp="1669107459555">
<screen x="0" y="0" width="1280" height="800" />
</state>
- <state width="503" height="480" key="DebuggerActiveHint/0.0.1280.800@0.0.1280.800" timestamp="1669101875842" />
+ <state x="180" y="331" key="#com.intellij.refactoring.move.MoveHandler.SelectRefactoringDialog/0.0.1280.800@0.0.1280.800" timestamp="1669107459555" />
+ <state x="326" y="288" key="#com.intellij.refactoring.move.moveClassesOrPackages.MoveClassesOrPackagesDialog.packages" timestamp="1669107461906">
+ <screen x="0" y="0" width="1280" height="800" />
+ </state>
+ <state x="326" y="288" key="#com.intellij.refactoring.move.moveClassesOrPackages.MoveClassesOrPackagesDialog.packages/0.0.1280.800@0.0.1280.800" timestamp="1669107461905" />
+ <state width="503" height="480" key="DebuggerActiveHint" timestamp="1669108173504">
+ <screen x="0" y="0" width="1280" height="800" />
+ </state>
+ <state width="503" height="480" key="DebuggerActiveHint/0.0.1280.800@0.0.1280.800" timestamp="1669108173504" />
<state width="462" height="480" key="DebuggerActiveHint/0.23.1280.777@0.23.1280.777" timestamp="1669100189203" />
- <state width="1236" height="287" key="GridCell.Tab.0.bottom" timestamp="1669101968820">
+ <state width="1236" height="287" key="GridCell.Tab.0.bottom" timestamp="1669108419917">
<screen x="0" y="0" width="1280" height="800" />
</state>
- <state width="1236" height="287" key="GridCell.Tab.0.bottom/0.0.1280.800@0.0.1280.800" timestamp="1669101968820" />
+ <state width="1236" height="287" key="GridCell.Tab.0.bottom/0.0.1280.800@0.0.1280.800" timestamp="1669108419917" />
<state width="1236" height="206" key="GridCell.Tab.0.bottom/0.23.1280.777@0.23.1280.777" timestamp="1669007123738" />
- <state width="1236" height="287" key="GridCell.Tab.0.center" timestamp="1669101968818">
+ <state width="1236" height="287" key="GridCell.Tab.0.center" timestamp="1669108419916">
<screen x="0" y="0" width="1280" height="800" />
</state>
- <state width="1236" height="287" key="GridCell.Tab.0.center/0.0.1280.800@0.0.1280.800" timestamp="1669101968818" />
+ <state width="1236" height="287" key="GridCell.Tab.0.center/0.0.1280.800@0.0.1280.800" timestamp="1669108419916" />
<state width="1236" height="206" key="GridCell.Tab.0.center/0.23.1280.777@0.23.1280.777" timestamp="1669007123735" />
- <state width="1236" height="287" key="GridCell.Tab.0.left" timestamp="1669101968816">
+ <state width="1236" height="287" key="GridCell.Tab.0.left" timestamp="1669108419916">
<screen x="0" y="0" width="1280" height="800" />
</state>
- <state width="1236" height="287" key="GridCell.Tab.0.left/0.0.1280.800@0.0.1280.800" timestamp="1669101968816" />
+ <state width="1236" height="287" key="GridCell.Tab.0.left/0.0.1280.800@0.0.1280.800" timestamp="1669108419916" />
<state width="1236" height="206" key="GridCell.Tab.0.left/0.23.1280.777@0.23.1280.777" timestamp="1669007123734" />
- <state width="1236" height="287" key="GridCell.Tab.0.right" timestamp="1669101968819">
+ <state width="1236" height="287" key="GridCell.Tab.0.right" timestamp="1669108419917">
<screen x="0" y="0" width="1280" height="800" />
</state>
- <state width="1236" height="287" key="GridCell.Tab.0.right/0.0.1280.800@0.0.1280.800" timestamp="1669101968819" />
+ <state width="1236" height="287" key="GridCell.Tab.0.right/0.0.1280.800@0.0.1280.800" timestamp="1669108419917" />
<state width="1236" height="206" key="GridCell.Tab.0.right/0.23.1280.777@0.23.1280.777" timestamp="1669007123736" />
- <state width="1236" height="287" key="GridCell.Tab.1.bottom" timestamp="1669101968826">
+ <state width="1236" height="287" key="GridCell.Tab.1.bottom" timestamp="1669108419920">
<screen x="0" y="0" width="1280" height="800" />
</state>
- <state width="1236" height="287" key="GridCell.Tab.1.bottom/0.0.1280.800@0.0.1280.800" timestamp="1669101968826" />
- <state width="1236" height="287" key="GridCell.Tab.1.center" timestamp="1669101968824">
+ <state width="1236" height="287" key="GridCell.Tab.1.bottom/0.0.1280.800@0.0.1280.800" timestamp="1669108419920" />
+ <state width="1236" height="287" key="GridCell.Tab.1.center" timestamp="1669108419919">
<screen x="0" y="0" width="1280" height="800" />
</state>
- <state width="1236" height="287" key="GridCell.Tab.1.center/0.0.1280.800@0.0.1280.800" timestamp="1669101968824" />
- <state width="1236" height="287" key="GridCell.Tab.1.left" timestamp="1669101968822">
+ <state width="1236" height="287" key="GridCell.Tab.1.center/0.0.1280.800@0.0.1280.800" timestamp="1669108419919" />
+ <state width="1236" height="287" key="GridCell.Tab.1.left" timestamp="1669108419918">
<screen x="0" y="0" width="1280" height="800" />
</state>
- <state width="1236" height="287" key="GridCell.Tab.1.left/0.0.1280.800@0.0.1280.800" timestamp="1669101968822" />
- <state width="1236" height="287" key="GridCell.Tab.1.right" timestamp="1669101968825">
+ <state width="1236" height="287" key="GridCell.Tab.1.left/0.0.1280.800@0.0.1280.800" timestamp="1669108419918" />
+ <state width="1236" height="287" key="GridCell.Tab.1.right" timestamp="1669108419919">
<screen x="0" y="0" width="1280" height="800" />
</state>
- <state width="1236" height="287" key="GridCell.Tab.1.right/0.0.1280.800@0.0.1280.800" timestamp="1669101968825" />
+ <state width="1236" height="287" key="GridCell.Tab.1.right/0.0.1280.800@0.0.1280.800" timestamp="1669108419919" />
<state x="332" y="44" width="769" height="629" key="find.popup" timestamp="1669101340329">
<screen x="0" y="0" width="1280" height="800" />
</state>
@@ -441,6 +451,11 @@
<line>187</line>
<option name="timeStamp" value="84" />
</line-breakpoint>
+ <line-breakpoint enabled="true" suspend="THREAD" type="java-line">
+ <url>file://$PROJECT_DIR$/app/src/main/java/com/lechange/demo/adapter/DeviceListAdapter.java</url>
+ <line>48</line>
+ <option name="timeStamp" value="92" />
+ </line-breakpoint>
</breakpoints>
</breakpoint-manager>
<watches-manager>
diff --git a/AndroidOpenDemo/app/src/main/java/com/hdl/HdlToLc.java b/AndroidOpenDemo/app/src/main/java/com/hdl/HdlToLc.java
deleted file mode 100644
index 1331223..0000000
--- a/AndroidOpenDemo/app/src/main/java/com/hdl/HdlToLc.java
+++ /dev/null
@@ -1,132 +0,0 @@
-package com.hdl;
-
-import android.Manifest;
-import android.app.Activity;
-import android.content.Intent;
-import android.content.pm.PackageManager;
-import android.os.Build;
-import android.widget.Toast;
-import android.support.v4.app.ActivityCompat;
-
-import com.common.openapi.ClassInstanceManager;
-import com.lechange.demo.tools.MediaPlayHelper;
-import com.mm.android.deviceaddmodule.CommonParam;
-import com.mm.android.deviceaddmodule.LCDeviceEngine;
-import com.mm.android.deviceaddmodule.mobilecommon.AppConsume.ProviderManager;
-import com.mm.android.deviceaddmodule.openapi.CONST;
-import com.usermodule.net.IUserDataCallBack;
-import com.usermodule.net.UserNetManager;
-
-public class HdlToLc {
-
- private static Activity mActivity;
-
- public static void initData(Activity activity,String appKey,String secretKey, boolean isChina) {
- mActivity = activity;
- MediaPlayHelper.initContext(mActivity.getApplication().getApplicationContext());
- ClassInstanceManager.newInstance().init(mActivity.getApplication());
- String mUrl;
- if (isChina) {
-// mAppSecret = "f869433de68a4a06bb8f9bb89118fc";
-// mAppid = "lc2ea929282d5f4636";
- mUrl = CONST.Envirment.CHINA_TEST.url;
- ProviderManager.getAppProvider().setAppType(0);
- } else {
-// mAppSecret = "017fc27bb987496f9a677e4e6f0c88";
-// mAppid = "lc0285433bc7e8423d";
-// mUrl = CONST.Envirment.OVERSEAS_PRO.url;
- mUrl=CONST.Envirment.CHINA_TEST.url;
- ProviderManager.getAppProvider().setAppType(1);
- }
-
-
-
- try {
- CommonParam commonParam = new CommonParam();
- commonParam.setEnvirment(mUrl);//浜戠杩炴帴
- commonParam.setContext(mActivity.getApplication());
- commonParam.setAppId(appKey);
- commonParam.setAppSecret(secretKey);
-
- //SDK淇℃伅鍒濆鍖�
- LCDeviceEngine.newInstance().init(commonParam);
- } catch (Throwable e) {
- Toast.makeText(mActivity, e.getMessage(), Toast.LENGTH_SHORT).show();
- }
- }
- public static void openActivity(String homeId,String token,String subAccessToken) {
- try {
-// getSubAccountToken("827a98c98da7469b8bc19bb6a3c7651906");
- LCDeviceEngine.newInstance().setHomeId(homeId);
- LCDeviceEngine.newInstance().accessToken=(token);
- LCDeviceEngine.newInstance().setSubAccessToken(subAccessToken);
- mActivity.startActivity(new Intent(mActivity, com.lechange.demo.ui.DeviceListActivity.class));
- } catch (Throwable e) {
- Toast.makeText(mActivity, e.getMessage(), Toast.LENGTH_SHORT).show();
- }
- }
-
- private static void getSubAccountToken(String openId){
- UserNetManager.getInstance().subAccountToken(openId, new IUserDataCallBack() {
- @Override
- public void onCallBackOpenId(String str) {
- if (str!=null){
- //鏆備笉淇濆瓨鍒皊p涓簡锛屽洜涓鸿幏鍙栭渶瑕乧ontext銆�
- // PreferencesHelper.getInstance(getApplicationContext()).set(Constants.SUBACCOUNTTOKEN,str);
- LCDeviceEngine.newInstance().setSubAccessToken(str);
-
- mActivity.startActivity(new Intent(mActivity,com.lechange.demo.ui.DeviceListActivity.class));
- }
- }
-
- @Override
- public void onError(Throwable throwable) {
-
- }
- });
- }
-
-
- /**
- * 璇锋眰瀵硅鏉冮檺
- */
- public static void requestPermission() {
- boolean isMinSDKM = Build.VERSION.SDK_INT < 23;
- boolean isGranted = ActivityCompat.checkSelfPermission(mActivity, Manifest.permission.RECORD_AUDIO) == PackageManager.PERMISSION_GRANTED
- && ActivityCompat.checkSelfPermission(mActivity, Manifest.permission.ACCESS_COARSE_LOCATION) == PackageManager.PERMISSION_GRANTED
- && ActivityCompat.checkSelfPermission(mActivity, Manifest.permission.CAMERA) == PackageManager.PERMISSION_GRANTED
- && ActivityCompat.checkSelfPermission(mActivity, Manifest.permission.WRITE_EXTERNAL_STORAGE) == PackageManager.PERMISSION_GRANTED
- && ActivityCompat.checkSelfPermission(mActivity, Manifest.permission.READ_EXTERNAL_STORAGE) == PackageManager.PERMISSION_GRANTED;
- if (isMinSDKM || isGranted) {
- return;
- }
- requestRecordAudioPermission();
- }
-
- private static void requestRecordAudioPermission() {
- if (ActivityCompat.shouldShowRequestPermissionRationale(mActivity, Manifest.permission.RECORD_AUDIO)
- || ActivityCompat.shouldShowRequestPermissionRationale(mActivity, Manifest.permission.ACCESS_COARSE_LOCATION)
- || ActivityCompat.shouldShowRequestPermissionRationale(mActivity, Manifest.permission.CAMERA)
- || ActivityCompat.shouldShowRequestPermissionRationale(mActivity, Manifest.permission.WRITE_EXTERNAL_STORAGE)
- || ActivityCompat.shouldShowRequestPermissionRationale(mActivity, Manifest.permission.READ_EXTERNAL_STORAGE)) {
- ActivityCompat.requestPermissions(mActivity,
- new String[]{
- Manifest.permission.RECORD_AUDIO,
- Manifest.permission.ACCESS_COARSE_LOCATION,
- Manifest.permission.CAMERA,
- Manifest.permission.WRITE_EXTERNAL_STORAGE,
- Manifest.permission.READ_EXTERNAL_STORAGE},
- 1);
- } else {
- ActivityCompat.requestPermissions(mActivity,
- new String[]{
- Manifest.permission.RECORD_AUDIO,
- Manifest.permission.ACCESS_COARSE_LOCATION,
- Manifest.permission.CAMERA,
- Manifest.permission.WRITE_EXTERNAL_STORAGE,
- Manifest.permission.READ_EXTERNAL_STORAGE},
- 1);
- }
- }
-
-}
diff --git a/AndroidOpenDemo/app/src/main/java/com/lechange/demo/ui/DeviceListActivity.java b/AndroidOpenDemo/app/src/main/java/com/lechange/demo/ui/DeviceListActivity.java
index b4e88e6..9fc6ccc 100644
--- a/AndroidOpenDemo/app/src/main/java/com/lechange/demo/ui/DeviceListActivity.java
+++ b/AndroidOpenDemo/app/src/main/java/com/lechange/demo/ui/DeviceListActivity.java
@@ -19,7 +19,6 @@
import com.common.openapi.MethodConst;
import com.common.openapi.entity.DeviceDetailListData;
import com.common.openapi.entity.DeviceListData;
-import com.hdl.HdlToLc;
import com.lechange.demo.R;
import com.lechange.demo.adapter.DeviceListAdapter;
import com.lechange.demo.view.LcPullToRefreshRecyclerView;
@@ -27,6 +26,7 @@
import com.lechange.pulltorefreshlistview.PullToRefreshBase;
import com.mm.android.deviceaddmodule.LCDeviceEngine;
import com.mm.android.deviceaddmodule.mobilecommon.utils.LogUtil;
+import com.utils.HdlToLcUtils;
import java.util.ArrayList;
import java.util.Iterator;
@@ -53,7 +53,7 @@
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_device_list);
initView();
- HdlToLc.requestPermission();
+ HdlToLcUtils.getInstance().requestPermission();
}
private void initView() {
diff --git a/AndroidOpenDemo/app/src/main/java/com/lechange/demo/ui/EnvGuideActivity.java b/AndroidOpenDemo/app/src/main/java/com/lechange/demo/ui/EnvGuideActivity.java
index e045fb7..d4b138c 100644
--- a/AndroidOpenDemo/app/src/main/java/com/lechange/demo/ui/EnvGuideActivity.java
+++ b/AndroidOpenDemo/app/src/main/java/com/lechange/demo/ui/EnvGuideActivity.java
@@ -6,10 +6,11 @@
import android.view.View;
import android.widget.TextView;
import android.widget.Toast;
-import com.hdl.HdlToLc;
+
import com.lechange.demo.R;
import com.lechange.demo.tools.RootUtil;
import com.mm.android.deviceaddmodule.utils.SDsolutionUtility;
+import com.utils.HdlToLcUtils;
public class EnvGuideActivity extends Activity implements View.OnClickListener {
private TextView tvTitleCn;
@@ -64,10 +65,15 @@
if (id == R.id.tv_title_cn) {
// HdlToLc.initData( this,true,"");
} else if (id == R.id.tv_overseas) {
- HdlToLc.initData(this,"HDL-HOME-APP-TEST","WeJ8TY88vbakCcnvH8G1tDUqzLWY8yss",false);
+ HdlToLcUtils.getInstance().initData(this, "HDL-HOME-APP-TEST", "WeJ8TY88vbakCcnvH8G1tDUqzLWY8yss", false);
}
- HdlToLc.openActivity("1547099040465408002","eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJqdGkiOiIzMTI5ZjNlMDAwY2Q0YzhiOTgyYjUyNTk5MTE2MTJlMCIsImNvbXBhbnlJZCI6IjIwMiIsInJvbGUiOiIiLCJoZWFkZXJQcmVmaXgiOiJCZWFyZXIgIiwidXNlckFjY291bnQiOiJ3eHIiLCJ0ZW5hbnRJZCI6IjIwIiwidXNlclR5cGUiOiJVU0VSX0IiLCJ0b2tlblR5cGUiOiJhY2Nlc3NfdG9rZW4iLCJ1c2VyTmFtZSI6Ind4ciIsIm9wZW5BcHBsaWNhdGlvbklkIjoiMCIsInVzZXJJZCI6IjEzOTIwMzU1NjgyMDQ0MjMxNjkiLCJleHAiOjE2NjkxMDkxMjcsIm5iZiI6MTY2OTEwMTkyN30.TIyMqggqbaYoBEApeHTq3AidoKWZt5HpO2eUkhn_58VslSTxc-NhHwclTHjLpdVaMklJk1HMLQLwPOiJGhbUksOewO2dStzW1xYOpb_6zDs6Rw6v0h5cKmAYOf1f1S6RLqF2EHigf9fyy090ClWYcJo-9c_CFBXir4Y1lzDmLZQ","St_00003ee84eda32b14126af958052f20a");
+ HdlToLcUtils.getInstance().setHomeId("1547099040465408002");
+ HdlToLcUtils.getInstance().setToken("eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJqdGkiOiIzMTI5ZjNlMDAwY2Q0YzhiOTgyYjUyNTk5MTE2MTJlMCIsImNvbXBhbnlJZCI6IjIwMiIsInJvbGUiOiIiLCJoZWFkZXJQcmVmaXgiOiJCZWFyZXIgIiwidXNlckFjY291bnQiOiJ3eHIiLCJ0ZW5hbnRJZCI6IjIwIiwidXNlclR5cGUiOiJVU0VSX0IiLCJ0b2tlblR5cGUiOiJhY2Nlc3NfdG9rZW4iLCJ1c2VyTmFtZSI6Ind4ciIsIm9wZW5BcHBsaWNhdGlvbklkIjoiMCIsInVzZXJJZCI6IjEzOTIwMzU1NjgyMDQ0MjMxNjkiLCJleHAiOjE2NjkxMDkxMjcsIm5iZiI6MTY2OTEwMTkyN30.TIyMqggqbaYoBEApeHTq3AidoKWZt5HpO2eUkhn_58VslSTxc-NhHwclTHjLpdVaMklJk1HMLQLwPOiJGhbUksOewO2dStzW1xYOpb_6zDs6Rw6v0h5cKmAYOf1f1S6RLqF2EHigf9fyy090ClWYcJo-9c_CFBXir4Y1lzDmLZQ");
+ HdlToLcUtils.getInstance().setSubAccessToken("St_00003ee84eda32b14126af958052f20a");
+// HdlToLcUtils.getInstance().openActivity();
+ //HdlToLcUtils.getInstance().AddCamera();
+ HdlToLcUtils.getInstance().play("8F05F83AAG05B3A");
}
diff --git a/AndroidOpenDemo/app/src/main/java/com/hdl/net/IUserDataCallBack.java b/AndroidOpenDemo/app/src/main/java/com/net/IUserDataCallBack.java
similarity index 89%
rename from AndroidOpenDemo/app/src/main/java/com/hdl/net/IUserDataCallBack.java
rename to AndroidOpenDemo/app/src/main/java/com/net/IUserDataCallBack.java
index 0d8fb4e..62708aa 100644
--- a/AndroidOpenDemo/app/src/main/java/com/hdl/net/IUserDataCallBack.java
+++ b/AndroidOpenDemo/app/src/main/java/com/net/IUserDataCallBack.java
@@ -1,4 +1,4 @@
-package com.hdl.net;
+package com.net;
public interface IUserDataCallBack {
void onCallBackOpenId(String str);
diff --git a/AndroidOpenDemo/app/src/main/java/com/hdl/net/UserNetManager.java b/AndroidOpenDemo/app/src/main/java/com/net/UserNetManager.java
similarity index 99%
rename from AndroidOpenDemo/app/src/main/java/com/hdl/net/UserNetManager.java
rename to AndroidOpenDemo/app/src/main/java/com/net/UserNetManager.java
index 6ffa6c1..d78bd22 100644
--- a/AndroidOpenDemo/app/src/main/java/com/hdl/net/UserNetManager.java
+++ b/AndroidOpenDemo/app/src/main/java/com/net/UserNetManager.java
@@ -1,4 +1,4 @@
-package com.hdl.net;
+package com.net;
import android.os.Handler;
import android.os.Message;
diff --git a/AndroidOpenDemo/app/src/main/java/com/utils/DeviceUtils.java b/AndroidOpenDemo/app/src/main/java/com/utils/DeviceUtils.java
new file mode 100644
index 0000000..ac96eb4
--- /dev/null
+++ b/AndroidOpenDemo/app/src/main/java/com/utils/DeviceUtils.java
@@ -0,0 +1,82 @@
+package com.utils;
+
+import android.content.Intent;
+import android.os.Bundle;
+import android.widget.Toast;
+
+import com.common.openapi.ClassInstanceManager;
+import com.common.openapi.DeviceSubAccountListService;
+import com.common.openapi.IGetDeviceInfoCallBack;
+import com.common.openapi.MethodConst;
+import com.common.openapi.entity.DeviceDetailListData;
+import com.lechange.demo.ui.DeviceDetailActivity;
+import com.lechange.demo.ui.DeviceListActivity;
+import com.lechange.demo.ui.DeviceOnlineMediaPlayActivity;
+import com.mm.android.deviceaddmodule.openapi.HDLMD5Utils;
+
+
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+
+/**
+ * Created by hxb on 2022/11/22.
+ */
+public class DeviceUtils implements IGetDeviceInfoCallBack.ISubAccountDevice< DeviceDetailListData.Response> {
+
+ private String deviceId;
+ public DeviceUtils(String deviceId){
+ this.deviceId=deviceId;
+ }
+ private List<DeviceDetailListData.ResponseData.DeviceListBean> datas = new ArrayList<>();
+
+ private void getDeviceList() {
+ DeviceSubAccountListService deviceSubAccountListService = ClassInstanceManager.newInstance().getDeviceSubAccountListService();
+ deviceSubAccountListService.getSubAccountDeviceList(1,this);
+ }
+
+ public void play() {
+ if (datas.size() == 0) {
+ getDeviceList();
+ } else {
+ for (DeviceDetailListData.ResponseData.DeviceListBean deviceListBean : datas) {
+ if (deviceListBean.deviceId.equals(deviceId)) {
+ if (!deviceListBean.status.equals("online")) {
+ return;
+ }
+ Bundle bundle = new Bundle();
+ bundle.putSerializable(MethodConst.ParamConst.deviceDetail, deviceListBean);
+ Intent intent = new Intent(HdlToLcUtils.getInstance().getActivity(), DeviceOnlineMediaPlayActivity.class);
+ intent.putExtras(bundle);
+ HdlToLcUtils.getInstance().getActivity().startActivity(intent);
+ }
+ }
+ }
+ }
+ @Override
+ public void DeviceList(DeviceDetailListData.Response responseData) {
+
+ if (responseData.data != null && responseData.data.deviceList != null && responseData.data.deviceList.size() != 0) {
+ Iterator<DeviceDetailListData.ResponseData.DeviceListBean> iterator = responseData.data.deviceList.iterator();
+ while (iterator.hasNext()) {
+ DeviceDetailListData.ResponseData.DeviceListBean next = iterator.next();
+ if (next.channels != null && next.channels.size() == 0 && !next.catalog.contains("NVR")) {
+ // 浣跨敤杩唬鍣ㄤ腑鐨剅emove()鏂规硶,鍙互鍒犻櫎鍏冪礌.
+ iterator.remove();
+ }
+ }
+ }
+
+ if ((responseData.data == null || responseData.data.deviceList == null || responseData.data.deviceList.size() == 0)) {
+ return;
+ }
+
+ datas.addAll(responseData.data.deviceList);
+
+ play();
+ }
+ @Override
+ public void onError(Throwable throwable) {
+ Toast.makeText(HdlToLcUtils.getInstance().getActivity(), throwable.getMessage(), Toast.LENGTH_SHORT).show();
+ }
+}
diff --git a/AndroidOpenDemo/app/src/main/java/com/utils/HdlToLcUtils.java b/AndroidOpenDemo/app/src/main/java/com/utils/HdlToLcUtils.java
new file mode 100644
index 0000000..06a9b33
--- /dev/null
+++ b/AndroidOpenDemo/app/src/main/java/com/utils/HdlToLcUtils.java
@@ -0,0 +1,199 @@
+package com.utils;
+
+import android.Manifest;
+import android.app.Activity;
+import android.content.Intent;
+import android.content.pm.PackageManager;
+import android.os.Build;
+import android.support.v4.app.ActivityCompat;
+import android.widget.Toast;
+
+import com.common.openapi.ClassInstanceManager;
+import com.lechange.demo.tools.MediaPlayHelper;
+import com.mm.android.deviceaddmodule.CommonParam;
+import com.mm.android.deviceaddmodule.DeviceAddActivity;
+import com.mm.android.deviceaddmodule.LCDeviceEngine;
+import com.mm.android.deviceaddmodule.mobilecommon.AppConsume.ProviderManager;
+import com.mm.android.deviceaddmodule.openapi.CONST;
+import com.usermodule.net.IUserDataCallBack;
+import com.usermodule.net.UserNetManager;
+
+public class HdlToLcUtils {
+
+ private Activity activity;
+ private String homeId;
+ private String token;
+ private String subAccessToken;
+
+ public Activity getActivity() {
+ return activity;
+ }
+
+ /**
+ * instance
+ */
+ private volatile static HdlToLcUtils instance;
+
+ /**
+ * getInstance
+ *
+ * @return HDLLink
+ */
+ public static synchronized HdlToLcUtils getInstance() {
+ if (instance == null) {
+ synchronized (HdlToLcUtils.class) {
+ if (instance == null) {
+ instance = new HdlToLcUtils();
+ }
+ }
+ }
+ return instance;
+ }
+
+ public void initData(Activity activity, String appKey, String secretKey, boolean isChina) {
+ this.activity = activity;
+ MediaPlayHelper.initContext(activity.getApplication().getApplicationContext());
+ ClassInstanceManager.newInstance().init(activity.getApplication());
+ String mUrl;
+ if (isChina) {
+// mAppSecret = "f869433de68a4a06bb8f9bb89118fc";
+// mAppid = "lc2ea929282d5f4636";
+ mUrl = CONST.Envirment.CHINA_TEST.url;
+ ProviderManager.getAppProvider().setAppType(0);
+ } else {
+// mAppSecret = "017fc27bb987496f9a677e4e6f0c88";
+// mAppid = "lc0285433bc7e8423d";
+// mUrl = CONST.Envirment.OVERSEAS_PRO.url;
+ mUrl=CONST.Envirment.CHINA_TEST.url;
+ ProviderManager.getAppProvider().setAppType(1);
+ }
+
+
+
+ try {
+ CommonParam commonParam = new CommonParam();
+ commonParam.setEnvirment(mUrl);//浜戠杩炴帴
+ commonParam.setContext(activity.getApplication());
+ commonParam.setAppId(appKey);
+ commonParam.setAppSecret(secretKey);
+
+ //SDK淇℃伅鍒濆鍖�
+ LCDeviceEngine.newInstance().init(commonParam);
+ } catch (Throwable e) {
+ Toast.makeText(activity, e.getMessage(), Toast.LENGTH_SHORT).show();
+ }
+ }
+ 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();
+ }
+ }
+
+ public void addCamera() {
+ //寮�鍚坊鍔犻〉闈�
+ activity.startActivity(new Intent(activity.getApplication(), DeviceAddActivity.class));
+ }
+
+ public void play(String deviceId){
+ new DeviceUtils(deviceId).play();
+ }
+
+
+ public void setActivity(Activity activity) {
+ this.activity = activity;
+ }
+
+ public String getHomeId() {
+ return homeId;
+ }
+
+ public void setHomeId(String homeId) {
+ this.homeId = homeId;
+ LCDeviceEngine.newInstance().setHomeId(homeId);
+ }
+
+ public String getToken() {
+ return token;
+ }
+
+ public void setToken(String token) {
+ this.token = token;
+ LCDeviceEngine.newInstance().accessToken=(token);
+ }
+
+ public String getSubAccessToken() {
+ return subAccessToken;
+ }
+
+ public void setSubAccessToken(String subAccessToken) {
+ this.subAccessToken = subAccessToken;
+ LCDeviceEngine.newInstance().setSubAccessToken(subAccessToken);
+ }
+
+ private void getSubAccountToken(String openId){
+ UserNetManager.getInstance().subAccountToken(openId, new IUserDataCallBack() {
+ @Override
+ public void onCallBackOpenId(String str) {
+ if (str!=null){
+ //鏆備笉淇濆瓨鍒皊p涓簡锛屽洜涓鸿幏鍙栭渶瑕乧ontext銆�
+ // PreferencesHelper.getInstance(getApplicationContext()).set(Constants.SUBACCOUNTTOKEN,str);
+ LCDeviceEngine.newInstance().setSubAccessToken(str);
+
+ activity.startActivity(new Intent(activity,com.lechange.demo.ui.DeviceListActivity.class));
+ }
+ }
+
+ @Override
+ public void onError(Throwable throwable) {
+
+ }
+ });
+ }
+
+
+ /**
+ * 璇锋眰瀵硅鏉冮檺
+ */
+ public void requestPermission() {
+ boolean isMinSDKM = Build.VERSION.SDK_INT < 23;
+ boolean isGranted = ActivityCompat.checkSelfPermission(activity, Manifest.permission.RECORD_AUDIO) == PackageManager.PERMISSION_GRANTED
+ && ActivityCompat.checkSelfPermission(activity, Manifest.permission.ACCESS_COARSE_LOCATION) == PackageManager.PERMISSION_GRANTED
+ && 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;
+ }
+ requestRecordAudioPermission();
+ }
+
+ private void requestRecordAudioPermission() {
+ if (ActivityCompat.shouldShowRequestPermissionRationale(activity, Manifest.permission.RECORD_AUDIO)
+ || ActivityCompat.shouldShowRequestPermissionRationale(activity, Manifest.permission.ACCESS_COARSE_LOCATION)
+ || 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.RECORD_AUDIO,
+ Manifest.permission.ACCESS_COARSE_LOCATION,
+ Manifest.permission.CAMERA,
+ Manifest.permission.WRITE_EXTERNAL_STORAGE,
+ Manifest.permission.READ_EXTERNAL_STORAGE},
+ 1);
+ } else {
+ ActivityCompat.requestPermissions(activity,
+ new String[]{
+ Manifest.permission.RECORD_AUDIO,
+ Manifest.permission.ACCESS_COARSE_LOCATION,
+ Manifest.permission.CAMERA,
+ Manifest.permission.WRITE_EXTERNAL_STORAGE,
+ Manifest.permission.READ_EXTERNAL_STORAGE},
+ 1);
+ }
+ }
+
+}
--
Gitblit v1.8.0