From cc6023291bc94a229b53d7c2d83bf2b39bbfa9a0 Mon Sep 17 00:00:00 2001 From: hxb <hxb@hdlchina.com.cn> Date: 星期日, 27 三月 2022 21:27:29 +0800 Subject: [PATCH] 华尔思线上版本库 --- HDLSDK/hdl-common/build.gradle | 12 .gitignore | 8 HDLSDK/com.hdl.sdk/src/main/AndroidManifest.xml | 7 HDLSDK/hdl-common/src/main/java/com/hdl/sdk/common/.DS_Store | 0 HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/.DS_Store | 0 HDLSDK_DEMO/app/libs/.DS_Store | 0 HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/config/HDLLinkConfig.java | 24 + HDLSDK_DEMO/app/.DS_Store | 0 HDLSDK/hdl-socket/build.gradle | 12 HDLSDK/.DS_Store | 0 HDLSDK/com.hdl.sdk/.gitignore | 1 HDLSDK/com.hdl.sdk/proguard-rules.pro | 107 +++++++ HDLSDK/config.gradle | 2 HDLSDK/hdl-common/src/main/java/com/hdl/sdk/common/event/EventDispatcher.java | 28 + HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/SocketBoot.java | 16 HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/socket/HDLSocket.java | 49 ++- HDLSDK_DEMO/app/src/main/java/com/hdl/hdlsdk/MainActivity.java | 4 HDLSDK/settings.gradle | 2 HDLSDK/hdl-common/src/main/java/com/hdl/sdk/common/HDLSdk.java | 2 HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/HDLLink.java | 26 - HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/socket/HDLAuthSocket.java | 20 HDLSDK/hdl-common/src/main/java/com/hdl/sdk/.DS_Store | 0 HDLSDK/hdl-common/src/main/java/com/hdl/sdk/common/utils/ThreadToolUtils.java | 9 HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/.DS_Store | 0 HDLSDK_DEMO/.DS_Store | 0 HDLSDK/.idea/gradle.xml | 1 HDLSDK/app/build.gradle | 6 HDLSDK/app/src/main/java/com/hdl/.DS_Store | 0 HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/udp/UdpSocketBoot.java | 3 /dev/null | 0 HDLSDK/hdl-connect/build.gradle | 15 - HDLSDK/com.hdl.sdk/gradlew | 172 ++++++++++++ HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/socket/HdlSocketHelper.java | 20 HDLSDK_DEMO/app/libs/com.hdl.sdk-v1.0.11.aar | 0 HDLSDK/com.hdl.sdk/build.gradle | 154 +++++++++++ HDLSDK/hdl-common/src/.DS_Store | 0 HDLSDK/hdl-socket/src/.DS_Store | 0 HDLSDK/com.hdl.sdk/gradlew.bat | 84 ++++++ HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/SocketPool.java | 7 HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/.DS_Store | 0 HDLSDK/app/src/main/java/com/hdl/hdlsdk/MainActivity.java | 2 41 files changed, 656 insertions(+), 137 deletions(-) diff --git a/.gitignore b/.gitignore index 8dfcfee..ab36ff1 100644 --- a/.gitignore +++ b/.gitignore @@ -53,6 +53,7 @@ # Android Studio 3 in .gitignore file. .idea/caches .idea/modules.xml +.idea/ # Comment next line if keeping position of elements in Navigation Editor is relevant for you .idea/navEditor.xml @@ -100,4 +101,9 @@ # Replacement of .externalNativeBuild directories introduced # with Android Studio 3.5. -# End of https://www.toptal.com/developers/gitignore/api/android \ No newline at end of file +# End of https://www.toptal.com/developers/gitignore/api/android +.idea/ +HDLSDK/.idea/jarRepositories.xml +HDLSDK/.idea/misc.xml +HDLSDK/.idea/jarRepositories.xml +HDLSDK/.idea/misc.xml diff --git a/HDLSDK.zip b/HDLSDK.zip deleted file mode 100644 index 35e1818..0000000 --- a/HDLSDK.zip +++ /dev/null Binary files differ diff --git a/HDLSDK/.DS_Store b/HDLSDK/.DS_Store new file mode 100644 index 0000000..6e9be3b --- /dev/null +++ b/HDLSDK/.DS_Store Binary files differ diff --git a/HDLSDK/.gitignore b/HDLSDK/.gitignore deleted file mode 100644 index aa724b7..0000000 --- a/HDLSDK/.gitignore +++ /dev/null @@ -1,15 +0,0 @@ -*.iml -.gradle -/local.properties -/.idea/caches -/.idea/libraries -/.idea/modules.xml -/.idea/workspace.xml -/.idea/navEditor.xml -/.idea/assetWizardSettings.xml -.DS_Store -/build -/captures -.externalNativeBuild -.cxx -local.properties diff --git a/HDLSDK/.idea/.gitignore b/HDLSDK/.idea/.gitignore deleted file mode 100644 index eaf91e2..0000000 --- a/HDLSDK/.idea/.gitignore +++ /dev/null @@ -1,3 +0,0 @@ -# Default ignored files -/shelf/ -/workspace.xml diff --git a/HDLSDK/.idea/gradle.xml b/HDLSDK/.idea/gradle.xml index 7e69409..4c7b1e5 100644 --- a/HDLSDK/.idea/gradle.xml +++ b/HDLSDK/.idea/gradle.xml @@ -11,6 +11,7 @@ <set> <option value="$PROJECT_DIR$" /> <option value="$PROJECT_DIR$/app" /> + <option value="$PROJECT_DIR$/com.hdl.sdk" /> <option value="$PROJECT_DIR$/hdl-common" /> <option value="$PROJECT_DIR$/hdl-connect" /> <option value="$PROJECT_DIR$/hdl-socket" /> diff --git a/HDLSDK/.idea/jarRepositories.xml b/HDLSDK/.idea/jarRepositories.xml deleted file mode 100644 index fbe72e2..0000000 --- a/HDLSDK/.idea/jarRepositories.xml +++ /dev/null @@ -1,55 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<project version="4"> - <component name="RemoteRepositoriesConfiguration"> - <remote-repository> - <option name="id" value="central" /> - <option name="name" value="Maven Central repository" /> - <option name="url" value="https://repo1.maven.org/maven2" /> - </remote-repository> - <remote-repository> - <option name="id" value="jboss.community" /> - <option name="name" value="JBoss Community repository" /> - <option name="url" value="https://repository.jboss.org/nexus/content/repositories/public/" /> - </remote-repository> - <remote-repository> - <option name="id" value="maven" /> - <option name="name" value="maven" /> - <option name="url" value="https://maven.aliyun.com/repository/central" /> - </remote-repository> - <remote-repository> - <option name="id" value="maven2" /> - <option name="name" value="maven2" /> - <option name="url" value="https://maven.aliyun.com/repository/google" /> - </remote-repository> - <remote-repository> - <option name="id" value="maven5" /> - <option name="name" value="maven5" /> - <option name="url" value="https://maven.aliyun.com/repository/public/" /> - </remote-repository> - <remote-repository> - <option name="id" value="maven4" /> - <option name="name" value="maven4" /> - <option name="url" value="https://maven.aliyun.com/repository/gradle-plugin" /> - </remote-repository> - <remote-repository> - <option name="id" value="maven3" /> - <option name="name" value="maven3" /> - <option name="url" value="https://maven.aliyun.com/repository/jcenter" /> - </remote-repository> - <remote-repository> - <option name="id" value="maven9" /> - <option name="name" value="maven9" /> - <option name="url" value="https://jitpack.io" /> - </remote-repository> - <remote-repository> - <option name="id" value="maven8" /> - <option name="name" value="maven8" /> - <option name="url" value="https://maven.aliyun.com/repository/public" /> - </remote-repository> - <remote-repository> - <option name="id" value="Google" /> - <option name="name" value="Google" /> - <option name="url" value="https://dl.google.com/dl/android/maven2/" /> - </remote-repository> - </component> -</project> \ No newline at end of file diff --git a/HDLSDK/.idea/misc.xml b/HDLSDK/.idea/misc.xml deleted file mode 100644 index 3bdd701..0000000 --- a/HDLSDK/.idea/misc.xml +++ /dev/null @@ -1,17 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<project version="4"> - <component name="DesignSurface"> - <option name="filePathToZoomLevelMap"> - <map> - <entry key="..\:/job/me/Android/HDLSDK/app/src/main/res/layout/activity_main.xml" value="0.1" /> - <entry key="..\:/job/me/Android/HDLSDK/app/src/main/res/layout/demo_item.xml" value="0.28958333333333336" /> - </map> - </option> - </component> - <component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="true" project-jdk-name="1.8" project-jdk-type="JavaSDK"> - <output url="file://$PROJECT_DIR$/build/classes" /> - </component> - <component name="ProjectType"> - <option name="id" value="Android" /> - </component> -</project> \ No newline at end of file diff --git a/HDLSDK/app/build.gradle b/HDLSDK/app/build.gradle index 399b7ea..1960e0a 100644 --- a/HDLSDK/app/build.gradle +++ b/HDLSDK/app/build.gradle @@ -3,12 +3,12 @@ } android { - compileSdk 31 + compileSdk 28 defaultConfig { - applicationId "com.hdl.hdlsdk1" + applicationId "com.hdl.hdlsdk" minSdk 21 - targetSdk 31 + targetSdk 28 versionCode 1 versionName "1.0" diff --git a/HDLSDK/app/src/androidTest/java/com/hdl/hdlsdk/ExampleInstrumentedTest.java b/HDLSDK/app/src/androidTest/java/com/hdl/hdlsdk/ExampleInstrumentedTest.java deleted file mode 100644 index 4f7fa58..0000000 --- a/HDLSDK/app/src/androidTest/java/com/hdl/hdlsdk/ExampleInstrumentedTest.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.hdl.hdlsdk; - -import android.content.Context; - -import androidx.test.platform.app.InstrumentationRegistry; -import androidx.test.ext.junit.runners.AndroidJUnit4; - -import org.junit.Test; -import org.junit.runner.RunWith; - -import static org.junit.Assert.*; - -/** - * Instrumented test, which will execute on an Android device. - * - * @see <a href="http://d.android.com/tools/testing">Testing documentation</a> - */ -@RunWith(AndroidJUnit4.class) -public class ExampleInstrumentedTest { - @Test - public void useAppContext() { - // Context of the app under test. - Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext(); - assertEquals("com.hdl.hdlsdk", appContext.getPackageName()); - } -} \ No newline at end of file diff --git a/HDLSDK/app/src/main/java/com/hdl/.DS_Store b/HDLSDK/app/src/main/java/com/hdl/.DS_Store new file mode 100644 index 0000000..ae5aaee --- /dev/null +++ b/HDLSDK/app/src/main/java/com/hdl/.DS_Store Binary files differ diff --git a/HDLSDK/app/src/main/java/com/hdl/hdlsdk/MainActivity.java b/HDLSDK/app/src/main/java/com/hdl/hdlsdk/MainActivity.java index be2a3d5..ac61a13 100644 --- a/HDLSDK/app/src/main/java/com/hdl/hdlsdk/MainActivity.java +++ b/HDLSDK/app/src/main/java/com/hdl/hdlsdk/MainActivity.java @@ -35,6 +35,7 @@ import com.hdl.sdk.connect.bean.LinkRequest; import com.hdl.sdk.connect.bean.LinkResponse; import com.hdl.sdk.connect.bean.request.AuthenticateRequest; +import com.hdl.sdk.connect.bean.request.BroadcastRequest; import com.hdl.sdk.connect.bean.request.PropertyReadRequest; import com.hdl.sdk.connect.bean.response.BaseLocalResponse; import com.hdl.sdk.connect.bean.response.GatewaySearchBean; @@ -86,6 +87,7 @@ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); + setContentView(R.layout.activity_main); responseTv = findViewById(R.id.response_tv); tv = findViewById(R.id.state_tv); diff --git a/HDLSDK/app/src/test/java/com/hdl/hdlsdk/ExampleUnitTest.java b/HDLSDK/app/src/test/java/com/hdl/hdlsdk/ExampleUnitTest.java deleted file mode 100644 index eceb1d2..0000000 --- a/HDLSDK/app/src/test/java/com/hdl/hdlsdk/ExampleUnitTest.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.hdl.hdlsdk; - -import org.junit.Test; - -import static org.junit.Assert.*; - -/** - * Example local unit test, which will execute on the development machine (host). - * - * @see <a href="http://d.android.com/tools/testing">Testing documentation</a> - */ -public class ExampleUnitTest { - @Test - public void addition_isCorrect() { - assertEquals(4, 2 + 2); - } -} \ No newline at end of file diff --git a/HDLSDK/com.hdl.sdk/.gitignore b/HDLSDK/com.hdl.sdk/.gitignore new file mode 100644 index 0000000..796b96d --- /dev/null +++ b/HDLSDK/com.hdl.sdk/.gitignore @@ -0,0 +1 @@ +/build diff --git a/HDLSDK/com.hdl.sdk/build.gradle b/HDLSDK/com.hdl.sdk/build.gradle new file mode 100644 index 0000000..f8964e7 --- /dev/null +++ b/HDLSDK/com.hdl.sdk/build.gradle @@ -0,0 +1,154 @@ +//鎵撳寘鐨� +apply plugin: 'com.android.library' +apply plugin:'com.kezong.fat-aar' + +android { + compileSdkVersion rootProject.compileSdkVersion + + defaultConfig { + minSdkVersion rootProject.minSdkVersion + targetSdkVersion rootProject.targetSdkVersion + versionCode 2 + versionName "1.0.13" + } + buildTypes { + debug { + minifyEnabled false + proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' + } + } + compileOptions { + sourceCompatibility 1.8 + targetCompatibility 1.8 + } +} + +dependencies { + + implementation fileTree(include: ['*.jar'], dir: 'libs') + +// embed 'com.ezviz.sdk:ezviz-sdk:4.16.1' +// embed(name: 'hdl-common-release',ext: 'aar') +// embed(name: 'hdl-connect-release',ext: 'aar') +// embed(name: 'hdl-socket-release',ext: 'aar') + + embed project(path: ':hdl-common', configuration:'default') + embed project(path: ':hdl-connect', configuration:'default') + embed project(path: ':hdl-socket', configuration:'default') +} + +//鎵撳寘鐨� +buildscript { + + repositories { + google() + jcenter() + maven {url "https://plugins.gradle.org/m2/"} + } + + dependencies { + classpath 'com.android.tools.build:gradle:3.6.3' + classpath 'com.kezong:fat-aar:1.2.16' + } +} + +//allprojects { +// repositories { +// flatDir{ +// dirs 'libs' +// } +// google() +// jcenter() +// } +//} + + + +////杩愯鐨� +// +//apply plugin: 'com.android.application' +//apply from: "../app-common/build_common.gradle" +//apply plugin: 'kotlin-android' +//apply plugin: 'kotlin-android-extensions' +// +////濡傛灉鏈夌敤鍒発apt娣诲姞濡備笅閰嶇疆 +//kapt { +// useBuildCache = true +// javacOptions { +// option("-Xmaxerrs", 500) +// } +//} +// +//android { +// +// compileSdkVersion 29 +// buildToolsVersion "29.0.3" +// +// sourceSets { +// main { +// jniLibs.srcDirs = ['libs'] +// } +// } +// lintOptions { +// abortOnError false +// } +// defaultConfig { +// applicationId "com.evoyo.home1111112" +// minSdkVersion 21 +// //noinspection ExpiredTargetSdkVersion +// targetSdkVersion 28 +// versionCode 4160 +// versionName "v4.16.0.20201230" +// ndk { +// abiFilters "armeabi-v7a", "arm64-v8a" +// } +// /*绂佹浣跨敤java8锛屽鏋渟dk浣跨敤浜唈ava8缂栬瘧锛屼絾鏄簲鐢ㄥ眰浣跨敤浜唈ava7缂栬瘧锛屼細瀵艰嚧搴旂敤灞傛墦鍖呮棤娉曢�氳繃*/ +// compileOptions { +// sourceCompatibility JavaVersion.VERSION_1_7 +// targetCompatibility JavaVersion.VERSION_1_7 +// } +// } +// //鍦ˋndroid浠g爜鍧椾腑娣诲姞濡備笅閰嶇疆锛氾紙鍙紭鍖栨渶涓婂浘涓璽ransformClassDexBuilderForDebug鐨勬椂闂达級 +// dexOptions { +// preDexLibraries true +// maxProcessCount 8 +// } +// buildTypes { +// debug { +// minifyEnabled false +// proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' +// } +// } +// productFlavors { +// } +//} +// +// +//dependencies { +// /*钀ょ煶SDK鏍稿績妯″潡锛屽繀椤�*/ +//// api project(path: ':ezviz-sdk') +// api 'com.ezviz.sdk:ezviz-sdk:4.16.1' +// +// /*瑙嗛閫氳瘽妯″潡锛屾寜闇�浣跨敤*/ +//// api project(path: ':videotalk') +// api 'com.ezviz.sdk:videotalk:1.2.0' +// +// /*瑙嗛閫氳瘽妯″潡锛屾寜闇�浣跨敤*/ +//// api project(path: ':streamctrl') +// api 'com.ezviz.sdk:streamctrl:1.2.0' +// +// /*钀ょ煶鏍稿績妯″潡鐨勪笁鏂逛緷璧�*/ +//// implementation 'javax.jmdns:jmdns:3.4.1' +// implementation 'com.google.code.gson:gson:2.8.0' +// api 'com.squareup.okhttp3:okhttp:3.12.1' +// +// /*demo鐨勪緷璧栭」*/ +// api project(path: ':app-common') +// implementation fileTree(include: ['*.jar'], dir: 'libs') +// implementation 'com.android.support.constraint:constraint-layout:1.1.3' +//} +// +////repositories { +//// maven { url 'https://dl.bintray.com/open-ezviz/mobile-sdk'} +////} + diff --git a/HDLSDK/com.hdl.sdk/gradlew b/HDLSDK/com.hdl.sdk/gradlew new file mode 100644 index 0000000..cccdd3d --- /dev/null +++ b/HDLSDK/com.hdl.sdk/gradlew @@ -0,0 +1,172 @@ +#!/usr/bin/env sh + +############################################################################## +## +## Gradle start up script for UN*X +## +############################################################################## + +# Attempt to set APP_HOME +# Resolve links: $0 may be a link +PRG="$0" +# Need this for relative symlinks. +while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`"/$link" + fi +done +SAVED="`pwd`" +cd "`dirname \"$PRG\"`/" >/dev/null +APP_HOME="`pwd -P`" +cd "$SAVED" >/dev/null + +APP_NAME="Gradle" +APP_BASE_NAME=`basename "$0"` + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS="" + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD="maximum" + +warn () { + echo "$*" +} + +die () { + echo + echo "$*" + echo + exit 1 +} + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "`uname`" in + CYGWIN* ) + cygwin=true + ;; + Darwin* ) + darwin=true + ;; + MINGW* ) + msys=true + ;; + NONSTOP* ) + nonstop=true + ;; +esac + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + else + JAVACMD="$JAVA_HOME/bin/java" + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD="java" + which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." +fi + +# Increase the maximum file descriptors if we can. +if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then + MAX_FD_LIMIT=`ulimit -H -n` + if [ $? -eq 0 ] ; then + if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then + MAX_FD="$MAX_FD_LIMIT" + fi + ulimit -n $MAX_FD + if [ $? -ne 0 ] ; then + warn "Could not set maximum file descriptor limit: $MAX_FD" + fi + else + warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" + fi +fi + +# For Darwin, add options to specify how the application appears in the dock +if $darwin; then + GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" +fi + +# For Cygwin, switch paths to Windows format before running java +if $cygwin ; then + APP_HOME=`cygpath --path --mixed "$APP_HOME"` + CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` + JAVACMD=`cygpath --unix "$JAVACMD"` + + # We build the pattern for arguments to be converted via cygpath + ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` + SEP="" + for dir in $ROOTDIRSRAW ; do + ROOTDIRS="$ROOTDIRS$SEP$dir" + SEP="|" + done + OURCYGPATTERN="(^($ROOTDIRS))" + # Add a user-defined pattern to the cygpath arguments + if [ "$GRADLE_CYGPATTERN" != "" ] ; then + OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" + fi + # Now convert the arguments - kludge to limit ourselves to /bin/sh + i=0 + for arg in "$@" ; do + CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` + CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option + + if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition + eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` + else + eval `echo args$i`="\"$arg\"" + fi + i=$((i+1)) + done + case $i in + (0) set -- ;; + (1) set -- "$args0" ;; + (2) set -- "$args0" "$args1" ;; + (3) set -- "$args0" "$args1" "$args2" ;; + (4) set -- "$args0" "$args1" "$args2" "$args3" ;; + (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; + (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; + (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; + (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; + (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; + esac +fi + +# Escape application args +save () { + for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done + echo " " +} +APP_ARGS=$(save "$@") + +# Collect all arguments for the java command, following the shell quoting and substitution rules +eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS" + +# by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong +if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then + cd "$(dirname "$0")" +fi + +exec "$JAVACMD" "$@" diff --git a/HDLSDK/com.hdl.sdk/gradlew.bat b/HDLSDK/com.hdl.sdk/gradlew.bat new file mode 100644 index 0000000..f955316 --- /dev/null +++ b/HDLSDK/com.hdl.sdk/gradlew.bat @@ -0,0 +1,84 @@ +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS= + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto init + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto init + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:init +@rem Get command-line arguments, handling Windows variants + +if not "%OS%" == "Windows_NT" goto win9xME_args + +:win9xME_args +@rem Slurp the command line arguments. +set CMD_LINE_ARGS= +set _SKIP=2 + +:win9xME_args_slurp +if "x%~1" == "x" goto execute + +set CMD_LINE_ARGS=%* + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="0" goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 +exit /b 1 + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/HDLSDK/com.hdl.sdk/proguard-rules.pro b/HDLSDK/com.hdl.sdk/proguard-rules.pro new file mode 100644 index 0000000..112f107 --- /dev/null +++ b/HDLSDK/com.hdl.sdk/proguard-rules.pro @@ -0,0 +1,107 @@ +#*******************************************************************# +#********** 浠ヤ笅鏄痙emo涓嶈兘娣锋穯鐨勫唴瀹� *********# +#*******************************************************************# + +-keep public class * extends android.app.Activity +-keep public class * extends android.app.Application +-keep public class * extends android.app.Service +-keep public class * extends android.content.BroadcastReceiver +-keep public class * extends android.content.ContentProvider +-keep class * implements android.os.Parcelable + +-dontwarn com.google.zxing.** +-keep class com.google.zxing.** { *;} + +-keep public class com.alibaba.android.arouter.routes.**{*;} +-keep public class com.alibaba.android.arouter.facade.**{*;} +-keep class * implements com.alibaba.android.arouter.facade.template.ISyringe{*;} +# If you use the byType method to obtain Service, add the following rules to protect the interface: +-keep interface * implements com.alibaba.android.arouter.facade.template.IProvider +# If single-type injection is used, that is, no interface is defined to implement IProvider, the following rules need to be added to protect the implementation +# -keep class * implements com.alibaba.android.arouter.facade.template.IProvider + +#*******************************************************************# +#********** 浠ヤ笂鏄痙emo涓嶈兘娣锋穯鐨勫唴瀹� *********# +#*******************************************************************# + +#*******************************************************************# +#********** 浠ヤ笅鏄疭DK涓嶈兘娣锋穯鐨勫唴瀹� *********# +#*******************************************************************# + +#========SDK瀵瑰鎺ュ彛=======# +-keep class com.ezviz.opensdk.** { *;} + +#========浠ヤ笅鏄痟ik浜屾柟搴�=======# +-dontwarn com.ezviz.** +-keep class com.ezviz.** { *;} + +-dontwarn com.ez.** +-keep class com.ez.** { *;} + +-dontwarn com.hc.CASClient.** +-keep class com.hc.CASClient.** { *;} + +-dontwarn com.videogo.** +-keep class com.videogo.** { *;} + +-dontwarn com.hik.TTSClient.** +-keep class com.hik.TTSClient.** { *;} + +-dontwarn com.hik.stunclient.** +-keep class com.hik.stunclient.** { *;} + +-dontwarn com.hik.streamclient.** +-keep class com.hik.streamclient.** { *;} + +-dontwarn com.hikvision.sadp.** +-keep class com.hikvision.sadp.** { *;} + +-dontwarn com.hikvision.netsdk.** +-keep class com.hikvision.netsdk.** { *;} + +-dontwarn com.neutral.netsdk.** +-keep class com.neutral.netsdk.** { *;} + +-dontwarn com.hikvision.audio.** +-keep class com.hikvision.audio.** { *;} + +-dontwarn com.mediaplayer.audio.** +-keep class com.mediaplayer.audio.** { *;} + +-dontwarn com.hikvision.wifi.** +-keep class com.hikvision.wifi.** { *;} + +-dontwarn com.hikvision.keyprotect.** +-keep class com.hikvision.keyprotect.** { *;} + +-dontwarn com.hikvision.audio.** +-keep class com.hikvision.audio.** { *;} + +-dontwarn org.MediaPlayer.PlayM4.** +-keep class org.MediaPlayer.PlayM4.** { *;} +#========浠ヤ笂鏄痟ik浜屾柟搴�=======# + +#========浠ヤ笅鏄涓夋柟寮�婧愬簱=======# +# JNA +-dontwarn com.sun.jna.** +-keep class com.sun.jna.** { *;} + +# Gson +-keepattributes *Annotation* +-keep class sun.misc.Unsafe { *; } +-keep class com.idea.fifaalarmclock.entity.*** +-keep class com.google.gson.stream.** { *; } + +# OkHttp +# JSR 305 annotations are for embedding nullability information. +-dontwarn javax.annotation.** +# A resource is loaded with a relative path so the package of this class must be preserved. +-keepnames class okhttp3.internal.publicsuffix.PublicSuffixDatabase +# Animal Sniffer compileOnly dependency to ensure APIs are compatible with older versions of Java. +-dontwarn org.codehaus.mojo.animal_sniffer.* +# OkHttp platform used only on JVM and when Conscrypt dependency is available. +-dontwarn okhttp3.internal.platform.ConscryptPlatform +# 蹇呴』棰濆鍔犵殑锛屽惁鍒欑紪璇戞棤娉曢�氳繃 +-dontwarn okio.** +#========浠ヤ笂鏄涓夋柟寮�婧愬簱=======# + diff --git a/HDLSDK/com.hdl.sdk/src/main/AndroidManifest.xml b/HDLSDK/com.hdl.sdk/src/main/AndroidManifest.xml new file mode 100755 index 0000000..d1923e3 --- /dev/null +++ b/HDLSDK/com.hdl.sdk/src/main/AndroidManifest.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="utf-8"?> +<manifest xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:tools="http://schemas.android.com/tools" + package="com.hdl.sdk"> + <application/> + +</manifest> \ No newline at end of file diff --git a/HDLSDK/config.gradle b/HDLSDK/config.gradle index 582d32b..51a8ae6 100644 --- a/HDLSDK/config.gradle +++ b/HDLSDK/config.gradle @@ -2,6 +2,4 @@ minSdkVersion = 16 targetSdkVersion = 31 compileSdkVersion = 31 - versionName = "1.0.0" - } \ No newline at end of file diff --git a/HDLSDK/hdl-common/build.gradle b/HDLSDK/hdl-common/build.gradle index 183501e..e589058 100644 --- a/HDLSDK/hdl-common/build.gradle +++ b/HDLSDK/hdl-common/build.gradle @@ -10,7 +10,7 @@ targetSdkVersion rootProject.targetSdkVersion versionCode 2 - versionName "1.0.10" + versionName "1.0.13" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" consumerProguardFiles "consumer-rules.pro" } @@ -25,20 +25,10 @@ sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } - - /** - * 鎵撳寘鑷姩鍛藉悕 - */ - android.libraryVariants.all { variant -> - variant.outputs.all { - outputFileName = "hdl-common-V" + defaultConfig.versionName + ".aar" - } - } } dependencies { api 'com.google.code.gson:gson:2.8.8' api 'androidx.annotation:annotation:1.2.0' api 'androidx.collection:collection:1.1.0' -// api project(path: ':hdl-connect') } \ No newline at end of file diff --git a/HDLSDK/hdl-common/src/.DS_Store b/HDLSDK/hdl-common/src/.DS_Store new file mode 100644 index 0000000..0787fb7 --- /dev/null +++ b/HDLSDK/hdl-common/src/.DS_Store Binary files differ diff --git a/HDLSDK/hdl-common/src/androidTest/java/com/hdl/sdk/common/ExampleInstrumentedTest.java b/HDLSDK/hdl-common/src/androidTest/java/com/hdl/sdk/common/ExampleInstrumentedTest.java deleted file mode 100644 index 46d814a..0000000 --- a/HDLSDK/hdl-common/src/androidTest/java/com/hdl/sdk/common/ExampleInstrumentedTest.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.hdl.sdk.common; - -import android.content.Context; - -import androidx.test.platform.app.InstrumentationRegistry; -import androidx.test.ext.junit.runners.AndroidJUnit4; - -import org.junit.Test; -import org.junit.runner.RunWith; - -import static org.junit.Assert.*; - -/** - * Instrumented test, which will execute on an Android device. - * - * @see <a href="http://d.android.com/tools/testing">Testing documentation</a> - */ -@RunWith(AndroidJUnit4.class) -public class ExampleInstrumentedTest { - @Test - public void useAppContext() { - // Context of the app under test. - Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext(); - assertEquals("com.hdl.sdk.common.test", appContext.getPackageName()); - } -} \ No newline at end of file diff --git a/HDLSDK/hdl-common/src/main/java/com/hdl/sdk/.DS_Store b/HDLSDK/hdl-common/src/main/java/com/hdl/sdk/.DS_Store new file mode 100644 index 0000000..45f4ec0 --- /dev/null +++ b/HDLSDK/hdl-common/src/main/java/com/hdl/sdk/.DS_Store Binary files differ diff --git a/HDLSDK/hdl-common/src/main/java/com/hdl/sdk/common/.DS_Store b/HDLSDK/hdl-common/src/main/java/com/hdl/sdk/common/.DS_Store new file mode 100644 index 0000000..e90f688 --- /dev/null +++ b/HDLSDK/hdl-common/src/main/java/com/hdl/sdk/common/.DS_Store Binary files differ diff --git a/HDLSDK/hdl-common/src/main/java/com/hdl/sdk/common/HDLSdk.java b/HDLSDK/hdl-common/src/main/java/com/hdl/sdk/common/HDLSdk.java index f9d5328..c9ef3ae 100644 --- a/HDLSDK/hdl-common/src/main/java/com/hdl/sdk/common/HDLSdk.java +++ b/HDLSDK/hdl-common/src/main/java/com/hdl/sdk/common/HDLSdk.java @@ -19,7 +19,7 @@ return version; } - private String version="1.0.8"; + private String version="1.0.13"; private HDLSdk() { } diff --git a/HDLSDK/hdl-common/src/main/java/com/hdl/sdk/common/event/EventDispatcher.java b/HDLSDK/hdl-common/src/main/java/com/hdl/sdk/common/event/EventDispatcher.java index 9316f07..172ed9b 100644 --- a/HDLSDK/hdl-common/src/main/java/com/hdl/sdk/common/event/EventDispatcher.java +++ b/HDLSDK/hdl-common/src/main/java/com/hdl/sdk/common/event/EventDispatcher.java @@ -4,6 +4,7 @@ import androidx.collection.ArrayMap; +import com.hdl.sdk.common.utils.LogUtils; import com.hdl.sdk.common.utils.ThreadToolUtils; import java.util.ArrayList; @@ -32,12 +33,12 @@ private EventDispatcher() { } - private static class SingletonInstance { - private static final EventDispatcher INSTANCE = new EventDispatcher(); - } +// private static class SingletonInstance { + private static final EventDispatcher instance = new EventDispatcher(); +// } public static EventDispatcher getInstance() { - return SingletonInstance.INSTANCE; + return instance; } public synchronized void register(Object tag, EventListener listener) { @@ -77,12 +78,13 @@ EVENT.remove(tag); } } catch (Exception ignored) { - + LogUtils.e("绉婚櫎event寮傚父1锛�"+ignored.getMessage()); } - } }); - }catch (Exception e){} + }catch (Exception e){ + LogUtils.e("绉婚櫎event寮傚父2锛�"+e.getMessage()); + } } public synchronized void remove(Object tag, EventListener listener) { @@ -99,12 +101,14 @@ } } } catch (Exception ignored) { - + LogUtils.e("绉婚櫎event寮傚父1锛�"+ignored.getMessage()); } } }); - }catch (Exception e){} + }catch (Exception e){ + LogUtils.e("绉婚櫎event寮傚父2锛�"+e.getMessage()); + } } @@ -165,12 +169,14 @@ ALL_TOPICS_EVENT.remove(listener); } } catch (Exception ignored) { - + LogUtils.e("绉婚櫎event寮傚父1锛�" + ignored.getMessage()); } } }); - }catch (Exception e){} + } catch (Exception e) { + LogUtils.e("绉婚櫎event寮傚父2锛�" + e.getMessage()); + } } public synchronized void clear() { diff --git a/HDLSDK/hdl-common/src/main/java/com/hdl/sdk/common/utils/ThreadToolUtils.java b/HDLSDK/hdl-common/src/main/java/com/hdl/sdk/common/utils/ThreadToolUtils.java index d42da84..5e7cead 100644 --- a/HDLSDK/hdl-common/src/main/java/com/hdl/sdk/common/utils/ThreadToolUtils.java +++ b/HDLSDK/hdl-common/src/main/java/com/hdl/sdk/common/utils/ThreadToolUtils.java @@ -20,12 +20,13 @@ private ThreadToolUtils() { } - private static class SingletonInstance { - private static final ThreadToolUtils INSTANCE = new ThreadToolUtils(); - } +// private static class SingletonInstance { +// } + + private static final ThreadToolUtils instance = new ThreadToolUtils(); public static ThreadToolUtils getInstance() { - return SingletonInstance.INSTANCE; + return instance; } diff --git a/HDLSDK/hdl-common/src/test/java/com/hdl/sdk/common/ExampleUnitTest.java b/HDLSDK/hdl-common/src/test/java/com/hdl/sdk/common/ExampleUnitTest.java deleted file mode 100644 index 6e8323f..0000000 --- a/HDLSDK/hdl-common/src/test/java/com/hdl/sdk/common/ExampleUnitTest.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.hdl.sdk.common; - -import org.junit.Test; - -import static org.junit.Assert.*; - -/** - * Example local unit test, which will execute on the development machine (host). - * - * @see <a href="http://d.android.com/tools/testing">Testing documentation</a> - */ -public class ExampleUnitTest { - @Test - public void addition_isCorrect() { - assertEquals(4, 2 + 2); - } -} \ No newline at end of file diff --git a/HDLSDK/hdl-connect/build.gradle b/HDLSDK/hdl-connect/build.gradle index 26df94c..181dab8 100644 --- a/HDLSDK/hdl-connect/build.gradle +++ b/HDLSDK/hdl-connect/build.gradle @@ -9,7 +9,7 @@ minSdkVersion rootProject.minSdkVersion targetSdkVersion rootProject.targetSdkVersion versionCode 2 - versionName "1.0.10" + versionName "1.0.13" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" consumerProguardFiles "consumer-rules.pro" @@ -25,23 +25,10 @@ sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } - - /** - * 鎵撳寘鑷姩鍛藉悕 - */ - android.libraryVariants.all { variant -> - variant.outputs.all { - outputFileName = "hdl-connect-V" + defaultConfig.versionName + ".aar" - } - } } dependencies { api project(path: ':hdl-socket') implementation 'androidx.appcompat:appcompat:1.2.0' implementation 'com.google.android.material:material:1.3.0' - -// //鍔犲瘑 -// implementation 'cn.hutool:hutool-all:5.6.5' -// implementation 'org.bouncycastle:bcprov-jdk15on:1.60' } diff --git a/HDLSDK/hdl-connect/src/androidTest/java/com/hdl/sdk/connect/ExampleInstrumentedTest.java b/HDLSDK/hdl-connect/src/androidTest/java/com/hdl/sdk/connect/ExampleInstrumentedTest.java deleted file mode 100644 index 32322d2..0000000 --- a/HDLSDK/hdl-connect/src/androidTest/java/com/hdl/sdk/connect/ExampleInstrumentedTest.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.hdl.sdk.connect; - -import android.content.Context; - -import androidx.test.platform.app.InstrumentationRegistry; -import androidx.test.ext.junit.runners.AndroidJUnit4; - -import org.junit.Test; -import org.junit.runner.RunWith; - -import static org.junit.Assert.*; - -/** - * Instrumented test, which will execute on an Android device. - * - * @see <a href="http://d.android.com/tools/testing">Testing documentation</a> - */ -@RunWith(AndroidJUnit4.class) -public class ExampleInstrumentedTest { - @Test - public void useAppContext() { - // Context of the app under test. - Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext(); - assertEquals("com.hdl.sdk.connect.test", appContext.getPackageName()); - } -} \ No newline at end of file diff --git a/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/.DS_Store b/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/.DS_Store new file mode 100644 index 0000000..9f83336 --- /dev/null +++ b/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/.DS_Store Binary files differ diff --git a/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/.DS_Store b/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/.DS_Store new file mode 100644 index 0000000..4697092 --- /dev/null +++ b/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/.DS_Store Binary files differ diff --git a/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/HDLLink.java b/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/HDLLink.java index 4d344c5..d26a345 100644 --- a/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/HDLLink.java +++ b/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/HDLLink.java @@ -23,26 +23,20 @@ /** * instance */ - private volatile static HDLLink instance; + private static final HDLLink instance=new HDLLink(); /** * getInstance * * @return HDLLink */ - public static synchronized HDLLink getInstance() { - if (instance == null) { - synchronized (HDLLink.class) { - if (instance == null) { - instance = new HDLLink(); -// ThreadToolUtils.getInstance().newScheduledThreadPool(1).scheduleWithFixedDelay(new Runnable() { -// @Override -// public void run() { -////瀹氭湡鎼滅储缃戝叧锛屽悗闈㈢湅鏈夊繀瑕佸啀鍋� -// } -// },0,10, TimeUnit.SECONDS); - } - } - } + public static HDLLink getInstance() { +// if (instance == null) { +// synchronized (HDLLink.class) { +// if (instance == null) { +// instance = new HDLLink(); +// } +// } +// } return instance; } @@ -215,6 +209,7 @@ * @param callBack 鍥炶皟 */ public void tcpSendMsg(String topic, String bodyStr, HDLLinkCallBack callBack) { + HDLAuthSocket.getInstance();//閫氳繃杩欎釜鍙互鍏堝垵濮嬪寲UDP鐩戝惉浜嬩欢 HDLSocket.getInstance().tcpSendMsg(topic, bodyStr, callBack); } @@ -245,6 +240,7 @@ * @param bodyStr 鍥炲鐨勪富棰� */ public void tcpSendMsg(String topic, String bodyStr) { + HDLAuthSocket.getInstance();//閫氳繃杩欎釜鍙互鍏堝垵濮嬪寲UDP鐩戝惉浜嬩欢 HDLSocket.getInstance().tcpSendMsg(topic, bodyStr); } } diff --git a/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/config/HDLLinkConfig.java b/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/config/HDLLinkConfig.java index a21c26c..bfe3d60 100644 --- a/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/config/HDLLinkConfig.java +++ b/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/config/HDLLinkConfig.java @@ -30,22 +30,26 @@ /** * instance */ - private volatile static HDLLinkConfig instance; + private static final HDLLinkConfig instance=new HDLLinkConfig(); + private HDLLinkConfig() + { + loadConfig(); + } /** * getInstance * * @return AuthenticateConfig */ - public static synchronized HDLLinkConfig getInstance() { - if (instance == null) { - synchronized (HDLLinkConfig.class) { - if (instance == null) { - instance = new HDLLinkConfig(); - instance.loadConfig(); - } - } - } + public static HDLLinkConfig getInstance() { +// if (instance == null) { +// synchronized (HDLLinkConfig.class) { +// if (instance == null) { +// instance = new HDLLinkConfig(); +// instance.loadConfig(); +// } +// } +// } return instance; } diff --git a/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/socket/HDLAuthSocket.java b/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/socket/HDLAuthSocket.java index 91b96ae..168fb90 100644 --- a/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/socket/HDLAuthSocket.java +++ b/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/socket/HDLAuthSocket.java @@ -68,7 +68,7 @@ /** * instance */ - private volatile static HDLAuthSocket instance; + private static final HDLAuthSocket instance=new HDLAuthSocket(); private HDLAuthSocket() { initListenerGatewayEvent(); @@ -84,14 +84,14 @@ * * @return HDLAuthSocket */ - public static synchronized HDLAuthSocket getInstance() { - if (instance == null) { - synchronized (HDLLinkConfig.class) { - if (instance == null) { - instance = new HDLAuthSocket(); - } - } - } + public static HDLAuthSocket getInstance() { +// if (instance == null) { +// synchronized (HDLAuthSocket.class) { +// if (instance == null) { +// instance = new HDLAuthSocket(); +// } +// } +// } return instance; } @@ -110,7 +110,7 @@ * * @return 杩斿洖褰撳墠瀵硅薄 */ - private UdpSocketBoot getUdpBoot() { + private synchronized UdpSocketBoot getUdpBoot() { try { if (udpSocketBoot == null) { udpSocketBoot = UdpClient.init(UDP_PORT, getUdpOptions()); diff --git a/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/socket/HDLSocket.java b/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/socket/HDLSocket.java index 57a322f..9eb486c 100644 --- a/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/socket/HDLSocket.java +++ b/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/socket/HDLSocket.java @@ -78,33 +78,44 @@ * 骞挎挱鑷韩淇℃伅缁欎富缃戝叧 */ private void broadcastRequest() { - String time = String.valueOf(System.currentTimeMillis()); - if (null == HDLLinkConfig.getInstance().getDeviceInfoBean()) { - LogUtils.i("DeviceInfoBean涓虹┖锛岃璁剧疆褰撳墠瀵硅薄"); - return; - } - BroadcastRequest request = new BroadcastRequest(IdUtils.getUUId(), time, HDLLinkConfig.getInstance().getDeviceInfoBean(), "200"); - HDLAuthSocket.getInstance().udpSendMsg(TopicConstant.BROADCAST, GsonConvert.getGson().toJson(request),true); - HDLAuthSocket.getInstance().udpSendMsg(TopicConstant.BROADCAST, GsonConvert.getGson().toJson(request), true, new HDLLinkResponseCallBack() { + new Thread(new Runnable() { @Override - public void onSuccess(LinkResponse msg) { - LogUtils.i("骞挎挱淇℃伅缁欎富缃戝叧鎴愬姛锛�"); - } + public void run() { + try { + LogUtils.i("骞挎挱璁惧鏈韩淇℃伅"); - @Override - public void onError(HDLLinkException e) { + String time = String.valueOf(System.currentTimeMillis()); + if (null == HDLLinkConfig.getInstance().getDeviceInfoBean()) { + LogUtils.i("DeviceInfoBean涓虹┖锛岃璁剧疆褰撳墠瀵硅薄"); + return; + } + BroadcastRequest request = new BroadcastRequest(IdUtils.getUUId(), time, HDLLinkConfig.getInstance().getDeviceInfoBean(), "200"); + HDLAuthSocket.getInstance().udpSendMsg(TopicConstant.BROADCAST, GsonConvert.getGson().toJson(request), true, new HDLLinkResponseCallBack() { + @Override + public void onSuccess(LinkResponse msg) { + LogUtils.i("骞挎挱淇℃伅缁欎富缃戝叧鎴愬姛锛�"); + } + @Override + public void onError(HDLLinkException e) { + LogUtils.i("骞挎挱淇℃伅缁欎富缃戝叧澶辫触锛�"); + } + }); + HDLAuthSocket.getInstance().udpSendMsg(TopicConstant.BROADCAST, GsonConvert.getGson().toJson(request), true); + HDLAuthSocket.getInstance().udpSendMsg(TopicConstant.BROADCAST, GsonConvert.getGson().toJson(request), true); + } catch (Exception e) { + LogUtils.e("骞挎挱璁惧鏈韩淇℃伅澶辫触锛屽け璐ヤ俊鎭細" + e.getMessage()); + } } - }); - HDLAuthSocket.getInstance().udpSendMsg(TopicConstant.BROADCAST, GsonConvert.getGson().toJson(request),true); + }).start(); } - private static class SingletonInstance { - private static final HDLSocket INSTANCE = new HDLSocket(); - } +// private static class SingletonInstance { +// } + private static final HDLSocket instance = new HDLSocket(); public static HDLSocket getInstance() { - return SingletonInstance.INSTANCE; + return instance; } SocketOptions options; diff --git a/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/socket/HdlSocketHelper.java b/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/socket/HdlSocketHelper.java index 7776163..abac95d 100644 --- a/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/socket/HdlSocketHelper.java +++ b/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/socket/HdlSocketHelper.java @@ -173,7 +173,7 @@ } } } catch (Exception e) { - e.printStackTrace(); + LogUtils.e("鍙戦�佹暟鎹け璐�:" + e.getMessage()); } } else { //瓒呭嚭閲嶅彂娆℃暟骞舵病鏈夋敹鍒板洖澶� @@ -206,13 +206,17 @@ private void notifyFailure() { //绉婚櫎鐩戝惉 removeListener(); - if (sendThread != null) { - sendThread.shutdownNow(); - sendThread = null; - } - if (listener != null) { - listener.onFailure(); - listener = null; + try { + if (sendThread != null) { + sendThread.shutdownNow(); + sendThread = null; + } + if (listener != null) { + listener.onFailure(); + listener = null; + } + } catch (Exception e) { + } } } diff --git a/HDLSDK/hdl-connect/src/test/java/com/hdl/sdk/connect/ExampleUnitTest.java b/HDLSDK/hdl-connect/src/test/java/com/hdl/sdk/connect/ExampleUnitTest.java deleted file mode 100644 index 652b170..0000000 --- a/HDLSDK/hdl-connect/src/test/java/com/hdl/sdk/connect/ExampleUnitTest.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.hdl.sdk.connect; - -import org.junit.Test; - -import static org.junit.Assert.*; - -/** - * Example local unit test, which will execute on the development machine (host). - * - * @see <a href="http://d.android.com/tools/testing">Testing documentation</a> - */ -public class ExampleUnitTest { - @Test - public void addition_isCorrect() { - assertEquals(4, 2 + 2); - } -} \ No newline at end of file diff --git a/HDLSDK/hdl-socket/build.gradle b/HDLSDK/hdl-socket/build.gradle index 9ba1ed3..1949c79 100644 --- a/HDLSDK/hdl-socket/build.gradle +++ b/HDLSDK/hdl-socket/build.gradle @@ -9,7 +9,7 @@ minSdkVersion rootProject.minSdkVersion targetSdkVersion rootProject.targetSdkVersion versionCode 2 - versionName "1.0.10" + versionName "1.0.13" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" consumerProguardFiles "consumer-rules.pro" @@ -25,17 +25,9 @@ sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } - /** - * 鎵撳寘鑷姩鍛藉悕 - */ - android.libraryVariants.all { variant -> - variant.outputs.all { - outputFileName = "hdl-socket-V" + defaultConfig.versionName + ".aar" - } - } + } dependencies { api project(path: ':hdl-common') - } \ No newline at end of file diff --git a/HDLSDK/hdl-socket/src/.DS_Store b/HDLSDK/hdl-socket/src/.DS_Store new file mode 100644 index 0000000..bb1962f --- /dev/null +++ b/HDLSDK/hdl-socket/src/.DS_Store Binary files differ diff --git a/HDLSDK/hdl-socket/src/androidTest/java/com/hdl/sdk/socket/ExampleInstrumentedTest.java b/HDLSDK/hdl-socket/src/androidTest/java/com/hdl/sdk/socket/ExampleInstrumentedTest.java deleted file mode 100644 index 903bb2e..0000000 --- a/HDLSDK/hdl-socket/src/androidTest/java/com/hdl/sdk/socket/ExampleInstrumentedTest.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.hdl.sdk.socket; - -import android.content.Context; - -import androidx.test.platform.app.InstrumentationRegistry; -import androidx.test.ext.junit.runners.AndroidJUnit4; - -import org.junit.Test; -import org.junit.runner.RunWith; - -import static org.junit.Assert.*; - -/** - * Instrumented test, which will execute on an Android device. - * - * @see <a href="http://d.android.com/tools/testing">Testing documentation</a> - */ -@RunWith(AndroidJUnit4.class) -public class ExampleInstrumentedTest { - @Test - public void useAppContext() { - // Context of the app under test. - Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext(); - assertEquals("com.hdl.sdk.socket.test", appContext.getPackageName()); - } -} \ No newline at end of file diff --git a/HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/.DS_Store b/HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/.DS_Store new file mode 100644 index 0000000..7062e40 --- /dev/null +++ b/HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/.DS_Store Binary files differ diff --git a/HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/SocketBoot.java b/HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/SocketBoot.java index 5da2b6b..92f8f84 100644 --- a/HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/SocketBoot.java +++ b/HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/SocketBoot.java @@ -74,9 +74,10 @@ try { LogUtils.i("TCP杩炴帴"); client.onConnectStatus(ConnectStatus.CONNECTING); - Thread.sleep(700); + Thread.sleep(1000); client.connect(); connected=true; + LogUtils.i("TCP杩炴帴鎴愬姛"); client.onConnectStatus(ConnectStatus.CONNECTED); }catch(Exception e) { LogUtils.e("杩炴帴寮傚父"+e.getMessage()); @@ -175,7 +176,7 @@ } Thread.sleep(3*1000); } catch (Exception e) { - + LogUtils.e("瀹氭椂杩炴帴澶辫触:" + e.getMessage()); } } } @@ -198,15 +199,12 @@ if (connected && 10 * 1000 < (System.currentTimeMillis() - time)) { time = System.currentTimeMillis(); //蹇冭烦妫�娴� - try { - if (iHeartbeat != null) - iHeartbeat.heartbeat(); - } catch (Exception e) { - } + if (iHeartbeat != null) + iHeartbeat.heartbeat(); } Thread.sleep(1000); } catch (Exception e) { - + LogUtils.e("瀹氭椂蹇冭烦妫�娴嬬綉鍏冲紓甯革細" + e.getMessage()); } } } @@ -243,7 +241,7 @@ } mMessageQueue.put(request); } catch (Exception e) { - + LogUtils.e("鍙戦�佹暟鎹け璐ワ細" + e.getMessage()); } } diff --git a/HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/SocketPool.java b/HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/SocketPool.java index 7d211f7..41e2763 100644 --- a/HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/SocketPool.java +++ b/HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/SocketPool.java @@ -21,13 +21,10 @@ mUdpClientPool = new ConcurrentHashMap<>(); } - - private static class SingletonInstance { - private static final SocketPool INSTANCE = new SocketPool(); - } + private static final SocketPool instance = new SocketPool(); public static SocketPool getInstance() { - return SingletonInstance.INSTANCE; + return instance; } public void clear() { diff --git a/HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/udp/UdpSocketBoot.java b/HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/udp/UdpSocketBoot.java index 44bbf86..17471bb 100644 --- a/HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/udp/UdpSocketBoot.java +++ b/HDLSDK/hdl-socket/src/main/java/com/hdl/sdk/socket/udp/UdpSocketBoot.java @@ -114,7 +114,8 @@ if (listener != null && !TextUtils.isEmpty(request.getAction())) { sendMap.put(request.getAction(), listener); } - client.sendMsg(ipAddress,port, msg); + LogUtils.i("鍙戦�佺洰鏍嘔P鍜岀鍙�", ipAddress + ":" + port); + client.sendMsg(ipAddress, port, msg); } catch (Exception e) { LogUtils.i("鍙戦�佸け璐�:" + e.getMessage()); } diff --git a/HDLSDK/hdl-socket/src/test/java/com/hdl/sdk/socket/ExampleUnitTest.java b/HDLSDK/hdl-socket/src/test/java/com/hdl/sdk/socket/ExampleUnitTest.java deleted file mode 100644 index a59034b..0000000 --- a/HDLSDK/hdl-socket/src/test/java/com/hdl/sdk/socket/ExampleUnitTest.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.hdl.sdk.socket; - -import org.junit.Test; - -import static org.junit.Assert.*; - -/** - * Example local unit test, which will execute on the development machine (host). - * - * @see <a href="http://d.android.com/tools/testing">Testing documentation</a> - */ -public class ExampleUnitTest { - @Test - public void addition_isCorrect() { - assertEquals(4, 2 + 2); - } -} \ No newline at end of file diff --git a/HDLSDK/settings.gradle b/HDLSDK/settings.gradle index 5a72944..fc35c16 100644 --- a/HDLSDK/settings.gradle +++ b/HDLSDK/settings.gradle @@ -3,4 +3,4 @@ include ':hdl-socket' include ':hdl-connect' include ':hdl-common' - +include ':com.hdl.sdk' diff --git a/HDLSDK_DEMO.zip b/HDLSDK_DEMO.zip deleted file mode 100644 index 41d2bc7..0000000 --- a/HDLSDK_DEMO.zip +++ /dev/null Binary files differ diff --git a/HDLSDK_DEMO/.DS_Store b/HDLSDK_DEMO/.DS_Store new file mode 100644 index 0000000..ee0ba7d --- /dev/null +++ b/HDLSDK_DEMO/.DS_Store Binary files differ diff --git a/HDLSDK_DEMO/.gitignore b/HDLSDK_DEMO/.gitignore deleted file mode 100644 index aa724b7..0000000 --- a/HDLSDK_DEMO/.gitignore +++ /dev/null @@ -1,15 +0,0 @@ -*.iml -.gradle -/local.properties -/.idea/caches -/.idea/libraries -/.idea/modules.xml -/.idea/workspace.xml -/.idea/navEditor.xml -/.idea/assetWizardSettings.xml -.DS_Store -/build -/captures -.externalNativeBuild -.cxx -local.properties diff --git a/HDLSDK_DEMO/app/.DS_Store b/HDLSDK_DEMO/app/.DS_Store new file mode 100644 index 0000000..f297deb --- /dev/null +++ b/HDLSDK_DEMO/app/.DS_Store Binary files differ diff --git a/HDLSDK_DEMO/app/libs/.DS_Store b/HDLSDK_DEMO/app/libs/.DS_Store new file mode 100644 index 0000000..5008ddf --- /dev/null +++ b/HDLSDK_DEMO/app/libs/.DS_Store Binary files differ diff --git a/HDLSDK_DEMO/app/libs/com.hdl.sdk-v1.0.11.aar b/HDLSDK_DEMO/app/libs/com.hdl.sdk-v1.0.11.aar new file mode 100644 index 0000000..22ccd83 --- /dev/null +++ b/HDLSDK_DEMO/app/libs/com.hdl.sdk-v1.0.11.aar Binary files differ diff --git a/HDLSDK_DEMO/app/libs/hdl-common-V1.0.8.aar b/HDLSDK_DEMO/app/libs/hdl-common-V1.0.8.aar deleted file mode 100644 index 4d0c895..0000000 --- a/HDLSDK_DEMO/app/libs/hdl-common-V1.0.8.aar +++ /dev/null Binary files differ diff --git a/HDLSDK_DEMO/app/libs/hdl-connect-V1.0.8.aar b/HDLSDK_DEMO/app/libs/hdl-connect-V1.0.8.aar deleted file mode 100644 index a041595..0000000 --- a/HDLSDK_DEMO/app/libs/hdl-connect-V1.0.8.aar +++ /dev/null Binary files differ diff --git a/HDLSDK_DEMO/app/libs/hdl-socket-V1.0.8.aar b/HDLSDK_DEMO/app/libs/hdl-socket-V1.0.8.aar deleted file mode 100644 index e9d3243..0000000 --- a/HDLSDK_DEMO/app/libs/hdl-socket-V1.0.8.aar +++ /dev/null Binary files differ diff --git a/HDLSDK_DEMO/app/src/main/java/com/hdl/hdlsdk/MainActivity.java b/HDLSDK_DEMO/app/src/main/java/com/hdl/hdlsdk/MainActivity.java index ab7d315..39c7c97 100644 --- a/HDLSDK_DEMO/app/src/main/java/com/hdl/hdlsdk/MainActivity.java +++ b/HDLSDK_DEMO/app/src/main/java/com/hdl/hdlsdk/MainActivity.java @@ -80,8 +80,8 @@ infoBean.setDeviceName("闊充箰鎾斁鍣�");//璁惧鍚嶅瓧 infoBean.setDeviceModel("MCLog.431");//璁惧鍨嬪彿 infoBean.setAccessMode("WIFI"); - infoBean.setIPGateway("192.168.1.1"); - infoBean.setIPAddress("192.168.1.102"); + infoBean.setIPGateway("192.168.88.1"); + infoBean.setIPAddress("192.168.88.153"); infoBean.setGateway_type("music.standard"); infoBean.setHw_version("HW2.0"); infoBean.setFw_version("Fw1.0"); -- Gitblit v1.8.0