From 0725b14725297a25914dbbf1920297f8f0b215aa Mon Sep 17 00:00:00 2001 From: gaozl Date: Fri, 22 Aug 2025 13:10:31 +0800 Subject: [PATCH] fix: init --- app/build.gradle | 3 +- app/libs/sdkapi.jar | Bin 0 -> 5099 bytes .../container/activity/BaseActivity.java | 135 +++++++++--------- .../java/qianmu/container/app/Constant.java | 7 +- .../qianmu/container/app/MyApplication.java | 12 ++ .../java/qianmu/container/data/PowerData.java | 22 ++- 6 files changed, 108 insertions(+), 71 deletions(-) create mode 100644 app/libs/sdkapi.jar diff --git a/app/build.gradle b/app/build.gradle index 44062f4..54b78ac 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -97,7 +97,8 @@ dependencies { implementation files('libs\\jna-min.jar') implementation files('libs\\toolbox_kit.jar')//灰度主板 罗湖寻车机 implementation files('libs\\shockman.jar')//指路机 - implementation files('libs/signway.jar')//欣威视通 + implementation files('libs/signway.jar') //欣威视通 + implementation files('libs\\sdkapi.jar') //Bv-3588 testImplementation 'junit:junit:4.12' androidTestImplementation 'androidx.test.ext:junit:1.1.1' androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0' diff --git a/app/libs/sdkapi.jar b/app/libs/sdkapi.jar new file mode 100644 index 0000000000000000000000000000000000000000..c26927666cb16ac0167801b737f20204b8563425 GIT binary patch literal 5099 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 literal 0 HcmV?d00001 diff --git a/app/src/main/java/qianmu/container/activity/BaseActivity.java b/app/src/main/java/qianmu/container/activity/BaseActivity.java index e9f104a..3cb1874 100644 --- a/app/src/main/java/qianmu/container/activity/BaseActivity.java +++ b/app/src/main/java/qianmu/container/activity/BaseActivity.java @@ -61,10 +61,10 @@ public abstract class BaseActivity extends AppCompatActivity { @Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); - //隐藏标题栏 + // 隐藏标题栏 requestWindowFeature(Window.FEATURE_NO_TITLE); - //隐藏状态栏 + // 隐藏状态栏 Window window = getWindow(); int flag = WindowManager.LayoutParams.FLAG_FULLSCREEN; window.setFlags(flag, flag); @@ -101,10 +101,7 @@ public abstract class BaseActivity extends AppCompatActivity { EventBus.getDefault().register(this); sendPackageName(); Constant.whoActivity = currRoute; - Log.e("TAG","哪个activty:"+Constant.whoActivity); - if(Constant.androidBoardType.equals("huamo") && Constant.ROUTE_SCREEN_SAVER==currRoute){ - - } + Log.e("TAG", "哪个activty:" + Constant.whoActivity); } @Override @@ -130,27 +127,32 @@ public abstract class BaseActivity extends AppCompatActivity { if (Constant.ACTION_CAPTURE_SCREEN.equals(message.getCode())) { uploadScreenCapture(); } else if (Constant.ACTION_SHOW_SPLASH.equals(message.getCode())) { - if (currRoute == Constant.ROUTE_SCREEN_SAVER) return; + if (currRoute == Constant.ROUTE_SCREEN_SAVER) + return; ScreenSaverActivity.startAction(this); -// ARouter.getInstance().build(Constant.ROUTE_SCREEN_SAVER).navigation(); + // ARouter.getInstance().build(Constant.ROUTE_SCREEN_SAVER).navigation(); } else if (Constant.UPDATE_DEVICE_IP.equals(message.getCode())) { - //ip变更 + // ip变更 DeviceUtil.updateDeviceIP(this); - } else if(Constant.ACTION_UPDATE_WEBVIEW.equals(message.getCode())){ - //显示主页,并更新webview - LoggerUtil.e("BaseActivity","ACTION_UPDATE_WEBVIEW"); - if(DeviceData.getDeviceInfo(DeviceData.HINT_DEVICE_TYPE).equals("信发") || DeviceData.getDeviceInfo(DeviceData.HINT_DEVICE_TYPE).equals("双面屏")) return; - if (currRoute == Constant.ROUTE_WEB_VIEW || currRoute == Constant.ROUTE_UPDATE_FILE) return; - ARouter.getInstance().build(Constant.ROUTE_WEB_VIEW).withBoolean(Constant.KEY_LOAD_H5_URL, true).navigation(); - - }else if(Constant.ACTION_RESTART_APP.equals(message.getCode())){ - //重启app + } else if (Constant.ACTION_UPDATE_WEBVIEW.equals(message.getCode())) { + // 显示主页,并更新webview + LoggerUtil.e("BaseActivity", "ACTION_UPDATE_WEBVIEW"); + if (DeviceData.getDeviceInfo(DeviceData.HINT_DEVICE_TYPE).equals("信发") + || DeviceData.getDeviceInfo(DeviceData.HINT_DEVICE_TYPE).equals("双面屏")) + return; + if (currRoute == Constant.ROUTE_WEB_VIEW || currRoute == Constant.ROUTE_UPDATE_FILE) + return; + ARouter.getInstance().build(Constant.ROUTE_WEB_VIEW).withBoolean(Constant.KEY_LOAD_H5_URL, true) + .navigation(); + + } else if (Constant.ACTION_RESTART_APP.equals(message.getCode())) { + // 重启app restartApp(); - }else if(Constant.ACTION_RESTART_MQTT.equals(message.getCode())){ - //重启mqtt服务 - LoggerUtil.e("BaseActivity","通知关闭mqtt服务"); - stopService(new Intent(this, MQTTService.class));//关闭Mqtt服务 + } else if (Constant.ACTION_RESTART_MQTT.equals(message.getCode())) { + // 重启mqtt服务 + LoggerUtil.e("BaseActivity", "通知关闭mqtt服务"); + stopService(new Intent(this, MQTTService.class));// 关闭Mqtt服务 Constant.mqttState = "off"; } @@ -164,21 +166,22 @@ public abstract class BaseActivity extends AppCompatActivity { return super.dispatchTouchEvent(ev); } - //当前activity截图 + // 当前activity截图 public Bitmap captureScreen() { getWindow().getDecorView().setDrawingCacheEnabled(true); getWindow().getDecorView().destroyDrawingCache(); return getWindow().getDecorView().getDrawingCache(); } - //上传界面截图 + // 上传界面截图 private void uploadScreenCapture() { - String dataStr = StringUtil.strSplice("{\"code\":\"", DeviceData.getDeviceInfo(DeviceData.HINT_DEVICE_CODE), "\",\"filename\":\"screenshot.jpg\"}"); - final byte[] bytes1 = StringUtil.strSplice(String.format("%06d", dataStr.length()), dataStr).getBytes(); //ip和文件名转成字节数组 - //图片转成字节数组 + String dataStr = StringUtil.strSplice("{\"code\":\"", DeviceData.getDeviceInfo(DeviceData.HINT_DEVICE_CODE), + "\",\"filename\":\"screenshot.jpg\"}"); + final byte[] bytes1 = StringUtil.strSplice(String.format("%06d", dataStr.length()), dataStr).getBytes(); // ip和文件名转成字节数组 + // 图片转成字节数组 String filePath = BitmapUtil.saveBitmapToSDCard(captureScreen()); final byte[] bytes2 = BitmapUtil.file2byte(filePath); - //开启线程池 上传文件 + // 开启线程池 上传文件 final String requestURL = StringUtil.strSplice(Constant.getBaseAddress(), "/API/Dev/UploadScreenshot"); Executors.newSingleThreadExecutor().execute(() -> FileUtil.uploadFile(bytes1, bytes2, requestURL)); } @@ -187,47 +190,47 @@ public abstract class BaseActivity extends AppCompatActivity { * * */ Long onkey = 0l; + @Override public boolean onKeyDown(int keyCode, KeyEvent event) { - Log.e("TAG","按键:"+keyCode); + Log.e("TAG", "按键:" + keyCode); if ((keyCode == KeyEvent.KEYCODE_F1)) { - if(System.currentTimeMillis()- onkey<1000) { + if (System.currentTimeMillis() - onkey < 1000) { LoggerUtil.e("遥控按键", "退出应用"); sendExitPackageName(); exitApp(); - }else { + } else { onkey = System.currentTimeMillis(); } - }else if ((keyCode == KeyEvent.KEYCODE_F4)) { + } else if ((keyCode == KeyEvent.KEYCODE_F4)) { - if(System.currentTimeMillis()- onkey<1000){ - LoggerUtil.e("遥控按键","重启设备"); + if (System.currentTimeMillis() - onkey < 1000) { + LoggerUtil.e("遥控按键", "重启设备"); SignWayUtil.reboot(); - }else { + } else { onkey = System.currentTimeMillis(); } - }else if(keyCode == KeyEvent.KEYCODE_F3){ + } else if (keyCode == KeyEvent.KEYCODE_F3) { - }else if ((keyCode == KeyEvent.KEYCODE_F2)) { - if(System.currentTimeMillis()- onkey<1000) { + } else if ((keyCode == KeyEvent.KEYCODE_F2)) { + if (System.currentTimeMillis() - onkey < 1000) { LoggerUtil.e("遥控按键", "退到设置"); ARouter.getInstance().build(Constant.ROUTE_DEVICE_INFO).navigation(); - }else { + } else { onkey = System.currentTimeMillis(); } - }else if ((keyCode == KeyEvent.KEYCODE_F10)) { + } else if ((keyCode == KeyEvent.KEYCODE_F10)) { } return super.onKeyDown(keyCode, event); } - /** * 发送广播给奔溃自启app告诉包名 - * */ - public void sendPackageName(){ + */ + public void sendPackageName() { Intent intent = new Intent(Constant.APP_SEND_PACKAGE_NAME); intent.putExtra(Constant.PACKAGE_NAME, DeviceUtil.getPackageName()); sendStickyBroadcast(intent); @@ -235,8 +238,8 @@ public abstract class BaseActivity extends AppCompatActivity { /** * 发送广播给奔溃自启app告诉包名 - * */ - public void sendExitPackageName(){ + */ + public void sendExitPackageName() { Intent intent = new Intent(Constant.APP_SEND_PACKAGE_NAME); intent.putExtra(Constant.PACKAGE_NAME, "packageName"); this.sendStickyBroadcast(intent); @@ -244,8 +247,8 @@ public abstract class BaseActivity extends AppCompatActivity { /** * 退出软件 - * */ - public void exitApp(){ + */ + public void exitApp() { LoggerUtil.e("BaseActivity", "退出软件"); sendExitPackageName(); SignWayUtil.hideStatusBar(true); @@ -255,17 +258,17 @@ public abstract class BaseActivity extends AppCompatActivity { stopService(new Intent(this, CoreService.class)); stopService(new Intent(this, MQTTService.class)); - //欣威视通看门狗 - if(Constant.androidBoardType.equals("xwst2")){ - boolean ret= SdkApi.getInstance().Watchdog().getWatchdogOnoff(); - if(ret){ + // 欣威视通看门狗 + if (Constant.androidBoardType.equals("xwst2")) { + boolean ret = SdkApi.getInstance().Watchdog().getWatchdogOnoff(); + if (ret) { SdkApi.getInstance().Watchdog().setWatchdogOnoff(false); } } - if("指路机".equals(DeviceData.getDeviceInfo(DeviceData.HINT_DEVICE_TYPE))){ - //开启背景音乐 - stopService(new Intent(this, MusicService.class));//背景音乐 + if ("指路机".equals(DeviceData.getDeviceInfo(DeviceData.HINT_DEVICE_TYPE))) { + // 开启背景音乐 + stopService(new Intent(this, MusicService.class));// 背景音乐 } try { @@ -273,12 +276,12 @@ public abstract class BaseActivity extends AppCompatActivity { } catch (InterruptedException e) { e.printStackTrace(); } - if(Constant.androidBoardType.equals("xwst")){ + if (Constant.androidBoardType.equals("xwst")) { SignWayUtil.killbackgroundapk(DeviceUtil.getPackageName()); - }else { + } else { Intent startMain = new Intent(Intent.ACTION_MAIN); startMain.addCategory(Intent.CATEGORY_HOME); - startMain.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);//栈内复用模式 + startMain.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);// 栈内复用模式 startActivity(startMain); System.exit(0); } @@ -286,25 +289,25 @@ public abstract class BaseActivity extends AppCompatActivity { /** * 重启软件 - * */ - public void restartApp(){ + */ + public void restartApp() { LoggerUtil.e("BaseActivity", "重启软件"); stopService(new Intent(this, ContainerService.class)); stopService(new Intent(this, MessengerService.class)); stopService(new Intent(this, CoreService.class)); stopService(new Intent(this, MQTTService.class)); - //欣威视通看门狗 - if(Constant.androidBoardType.equals("xwst2")){ - boolean ret= SdkApi.getInstance().Watchdog().getWatchdogOnoff(); - if(ret){ + // 欣威视通看门狗 + if (Constant.androidBoardType.equals("xwst2")) { + boolean ret = SdkApi.getInstance().Watchdog().getWatchdogOnoff(); + if (ret) { SdkApi.getInstance().Watchdog().setWatchdogOnoff(false); } } - if("指路机".equals(DeviceData.getDeviceInfo(DeviceData.HINT_DEVICE_TYPE))){ - //开启背景音乐 - stopService(new Intent(this, MusicService.class));//背景音乐 + if ("指路机".equals(DeviceData.getDeviceInfo(DeviceData.HINT_DEVICE_TYPE))) { + // 开启背景音乐 + stopService(new Intent(this, MusicService.class));// 背景音乐 } try { Thread.sleep(1000); diff --git a/app/src/main/java/qianmu/container/app/Constant.java b/app/src/main/java/qianmu/container/app/Constant.java index 7073aad..6fc576f 100644 --- a/app/src/main/java/qianmu/container/app/Constant.java +++ b/app/src/main/java/qianmu/container/app/Constant.java @@ -23,14 +23,15 @@ public class Constant { public static boolean newGuide = false; // 指路机类型,true:新版指路机 false:老板指路机(流花) public static String mqttState = ""; // 屏幕连接方式 // public static String androidBoardType = ""; //设备板子型号 无固定版 - public static String androidBoardType = "ys"; // 设备板子型号 ys(亿晟) 北京颐堤港定制touch + // public static String androidBoardType = "ys"; // 设备板子型号 ys(亿晟) 北京颐堤港定制touch // public static String androidBoardType = "xwst"; //设备板子型号 xwst(欣威视通3399) - // public static String androidBoardType = "xwst2"; //设备板子型号 - // xwst2(欣威视通3588、T982、3576) + // public static String androidBoardType = "xwst2"; //设备板子型号 xwst2(欣威视通3588、T982、3576) // public static String androidBoardType = "zc"; //设备板子型号 zc(卓策主板——王府井喜悦、杨浦中心医院) // public static String androidBoardType = "sx"; //设备板子型号 sx(视想) // public static String androidBoardType = "nova"; //设备板子型号 诺瓦盒子 华贸LED // public static String androidBoardType = "huidu"; //设备板子型号 huidu(灰度主板) 罗湖寻车机 + public static String androidBoardType = "bv"; // Bv-3588M + public static String whoActivity = ""; // 哪个activity页面 // 本地缓存地址 public static final String CACHE_PATH = StringUtil.strSplice(Environment.getExternalStorageDirectory().getPath(), diff --git a/app/src/main/java/qianmu/container/app/MyApplication.java b/app/src/main/java/qianmu/container/app/MyApplication.java index d4de5b4..0b75a63 100644 --- a/app/src/main/java/qianmu/container/app/MyApplication.java +++ b/app/src/main/java/qianmu/container/app/MyApplication.java @@ -10,6 +10,7 @@ import android.os.PowerManager; import com.alibaba.android.arouter.BuildConfig; import com.alibaba.android.arouter.launcher.ARouter; import com.jakewharton.processphoenix.ProcessPhoenix; +import com.lztek.toolkit.Lztek; import com.lzy.okgo.OkGo; import com.sdkapi.api.SdkApi; import com.squareup.leakcanary.LeakCanary; @@ -47,6 +48,7 @@ public class MyApplication extends Application { public static long lastClick = 0;//最后点击时间 public static long lastClickTime = 0;//最后点击时间 public static int clickTimes = 0;//累计点击次数 + private Lztek lztek=null; public SimpleDateFormat dateTimeFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); public SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); @@ -65,9 +67,19 @@ public class MyApplication extends Application { initOkGo(); SocketServerManager.startSocketServer(); initDefaultUncaughtExceptionHandler(); + if(Constant.androidBoardType.equals("ys")){ + lztek = Lztek.create(this.getBaseContext()); + } // refWatcher = LeakCanary.install(this); } + public Lztek getLztek() { + if(lztek == null){ + lztek = Lztek.create(this.getBaseContext()); + } + return lztek; + } + //初始化页面路由框架 private void initARouter() { try { diff --git a/app/src/main/java/qianmu/container/data/PowerData.java b/app/src/main/java/qianmu/container/data/PowerData.java index e482f27..4feb149 100644 --- a/app/src/main/java/qianmu/container/data/PowerData.java +++ b/app/src/main/java/qianmu/container/data/PowerData.java @@ -75,11 +75,31 @@ public class PowerData extends BaseData { long currentLong = System.currentTimeMillis();//当前时间 String s = TimeUtil.stampToDate(currentLong); long bootLong = TimeUtil.pareTLong2(s + " " + bootTime);//开机时间 - if(Math.abs(currentLong-bootLong)<30000){ + if(Math.abs(currentLong-bootLong)<60000){ LoggerUtil.e("PowerData","避免设备定时失效,进行重新设置定时开关机"); newTimeInfo=""; } } + //BV-3588 定时开关机 + if(Constant.androidBoardType.equals("bv") && !bootTime.isEmpty()){ + long currentLong = System.currentTimeMillis();//当前时间 + String s = TimeUtil.stampToDate(currentLong); + long parameterLong = TimeUtil.pareTLong2(s + " " + parameter);//关机时间 + long bootLong = TimeUtil.pareTLong2(s + " " + bootTime);//开机时间 + long bootLong2 = bootLong+24*60*60*1000;//第二天开机时间 + if(Math.abs(currentLong-parameterLong)<65000){ + //并且设定的开机与关机时间必须超过当前时间,否则,会清除掉已设定的开机时间或关机时间,导致不能达到预想的要求。 + if(parameterLong > bootLong) { + //关机时间大于开机时间,第二天开机 + int second =(int)(bootLong2-currentLong)/1000; + MyApplication.getInstance().getLztek().alarmPoweron(second); + }else { + //关机时间小于开机时间,当天关机,当天开机 + int second =(int)(bootLong-currentLong)/1000; + MyApplication.getInstance().getLztek().alarmPoweron(second); + } + } + } //华贸设备设置开关屏 if(Constant.androidBoardType.equals("nova") && !bootTime.isEmpty()){