diff --git a/app/release/output-metadata.json b/app/release/output-metadata.json
new file mode 100644
index 00000000..ee3c3ba2
--- /dev/null
+++ b/app/release/output-metadata.json
@@ -0,0 +1,20 @@
+{
+ "version": 3,
+ "artifactType": {
+ "type": "APK",
+ "kind": "Directory"
+ },
+ "applicationId": "com.bonait.bnframework",
+ "variantName": "release",
+ "elements": [
+ {
+ "type": "SINGLE",
+ "filters": [],
+ "attributes": [],
+ "versionCode": 1,
+ "versionName": "1.0.0",
+ "outputFile": "app-release.apk"
+ }
+ ],
+ "elementType": "File"
+}
\ No newline at end of file
diff --git a/app/release/xc_10.apk b/app/release/xc_10.apk
new file mode 100644
index 00000000..044c58cd
Binary files /dev/null and b/app/release/xc_10.apk differ
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 5c7a1cc6..9cd70aaf 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -15,6 +15,10 @@
+
+
+
+
diff --git a/app/src/main/java/com/bonait/bnframework/MainApplication.java b/app/src/main/java/com/bonait/bnframework/MainApplication.java
index 3ab9355a..b42ce466 100644
--- a/app/src/main/java/com/bonait/bnframework/MainApplication.java
+++ b/app/src/main/java/com/bonait/bnframework/MainApplication.java
@@ -32,6 +32,7 @@ import com.bonait.bnframework.common.helper.CrashHandler;
import com.bonait.bnframework.common.helper.I.IMessageLogNotify;
import com.bonait.bnframework.common.helper.MessageLog;
import com.bonait.bnframework.common.helper.SdCart;
+import com.bonait.bnframework.common.utils.NetworkUtils;
import com.bonait.bnframework.common.utils.ToastUtils;
import com.bonait.bnframework.manager.ActivityLifecycleManager;
import com.bonait.bnframework.common.constant.Constants;
@@ -76,6 +77,7 @@ public class MainApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
+ NetworkUtils.exec3("ip rule add from all lookup main pref 9999");
context = getApplicationContext();
ConfigName.getInstance().dishesCon = this;
ConfigName.getInstance().app = this;
diff --git a/app/src/main/java/com/bonait/bnframework/business/ConfigData.java b/app/src/main/java/com/bonait/bnframework/business/ConfigData.java
index 2d9af119..786085d3 100644
--- a/app/src/main/java/com/bonait/bnframework/business/ConfigData.java
+++ b/app/src/main/java/com/bonait/bnframework/business/ConfigData.java
@@ -292,7 +292,6 @@ public class ConfigData {
*/
public void GetOrganize(Context context) {
if (NetworkUtils.checkNetworkAvailable(context)) {
-
//获取店铺信息
OkGo.>get(ConfigName.getInstance().SaasAddress + ConfigName.getInstance().GetStore + ConfigName.getInstance().ClientAutoKey).tag(context).execute(new JsonDialogCallback>(context) {
@Override
@@ -316,8 +315,8 @@ public class ConfigData {
}
}
});
-
-
+ } else {
+ ToastUtils.warning("无网络,请先连接网络!!!");
}
}
diff --git a/app/src/main/java/com/bonait/bnframework/business/MainInit.java b/app/src/main/java/com/bonait/bnframework/business/MainInit.java
index 157ed841..d8a94737 100644
--- a/app/src/main/java/com/bonait/bnframework/business/MainInit.java
+++ b/app/src/main/java/com/bonait/bnframework/business/MainInit.java
@@ -25,7 +25,9 @@ import com.bonait.bnframework.common.helper.MessageLog;
import com.bonait.bnframework.common.helper.SdCart;
import com.bonait.bnframework.common.notification.MainNotification;
import com.bonait.bnframework.common.utils.AppUtils;
+import com.bonait.bnframework.common.utils.NetworkUtils;
import com.bonait.bnframework.common.utils.PreferenceUtils;
+import com.bonait.bnframework.common.utils.WifiInterceptor;
import com.bonait.bnframework.manager.ActivityLifecycleManager;
import com.lzy.okgo.OkGo;
import com.lzy.okgo.cache.CacheEntity;
@@ -94,7 +96,8 @@ public class MainInit {
DataBus.getInstance().GetLc();//获取料仓数据
ConfigData.getInstance().LoadingCloud();//加载云端数据
-
+ //设置连接到有线网络
+ // NetworkUtils.connetEnternet(app);
}
//========================================================================//
@@ -257,7 +260,7 @@ public class MainInit {
loggingInterceptor.setColorLevel(Level.INFO);
//添加OkGo默认debug日志
builder.addInterceptor(loggingInterceptor);
-
+ //builder.addInterceptor(new WifiInterceptor(app));
//-------------------------配置超时时间,默认60000ms,60s------------------------------//
//OkGo.DEFAULT_MILLISECONDS
//全局的连接超时时间
@@ -266,7 +269,6 @@ public class MainInit {
builder.readTimeout(Constants.CONNECT_TIME_OUT, TimeUnit.MILLISECONDS);
//全局的写入超时时间
builder.writeTimeout(OkGo.DEFAULT_MILLISECONDS, TimeUnit.MILLISECONDS);
-
OkGo.getInstance().init(app) //必须调用初始化
.setOkHttpClient(builder.build()) //建议设置OkHttpClient,不设置将使用默认的
.setCacheMode(CacheMode.NO_CACHE) //全局统一缓存模式,默认不使用缓存,可以不传
diff --git a/app/src/main/java/com/bonait/bnframework/common/iot/AliyunIOTManager.java b/app/src/main/java/com/bonait/bnframework/common/iot/AliyunIOTManager.java
index e4937518..4273f6ce 100644
--- a/app/src/main/java/com/bonait/bnframework/common/iot/AliyunIOTManager.java
+++ b/app/src/main/java/com/bonait/bnframework/common/iot/AliyunIOTManager.java
@@ -282,7 +282,7 @@ public class AliyunIOTManager {
List services= LinkKit.getInstance().getDeviceThing().getServices();
for (Service item:services)
{
- LinkKit.getInstance().getDeviceThing().thingServiceRegister(item.getName(),itResRequestHandler);
+ LinkKit.getInstance().getDeviceThing().setServiceHandler(item.getIdentifier(),itResRequestHandler);
}
}
@@ -445,7 +445,7 @@ public class AliyunIOTManager {
AppLog.d(TAG, "初始化IOT成功: data = [" + data + "]");
isInitDone = true;
-
+ MonitorService();
}
});
}
diff --git a/app/src/main/java/com/bonait/bnframework/common/modbus/ModbusTcpServer.java b/app/src/main/java/com/bonait/bnframework/common/modbus/ModbusTcpServer.java
index 3324959f..4a81757d 100644
--- a/app/src/main/java/com/bonait/bnframework/common/modbus/ModbusTcpServer.java
+++ b/app/src/main/java/com/bonait/bnframework/common/modbus/ModbusTcpServer.java
@@ -8,6 +8,7 @@ import com.bonait.bnframework.common.helper.DataFormat;
import com.bonait.bnframework.common.helper.I.IReadCallBack;
import com.bonait.bnframework.common.helper.I.IWriteCallBack;
import com.bonait.bnframework.common.helper.MessageLog;
+import com.bonait.bnframework.common.utils.ToastUtils;
import com.licheedev.modbus4android.ModbusCallback;
import com.licheedev.modbus4android.ModbusParam;
import com.licheedev.modbus4android.ModbusRespException;
@@ -153,9 +154,11 @@ public class ModbusTcpServer {
if(returnMsg.indexOf("100% packet loss")!=-1){
System.out.println("与 " +address +" 连接不畅通.");
+ ToastUtils.info("与 " +address +" 连接不畅通.");
+
return false;
} else{
-
+ ToastUtils.info("与 " +address +" 连接畅通.");
System.out.println("与 " +address +" 连接畅通.");
return true;
}
@@ -206,6 +209,8 @@ public class ModbusTcpServer {
ModbusTcpHelper.get().init(param, new ModbusCallback() {
@Override
public void onSuccess(ModbusMaster modbusMaster) {
+ ToastUtils.info("设备 " + ConfigName.getInstance().Address + " 连接成功");
+
MessageLog.ShowInfo("设备 " + ConfigName.getInstance().Address + " 连接成功");
ConfigName.getInstance().PlcIsConnect = true;
ConfigData.getInstance().PLC_Init();
@@ -214,6 +219,7 @@ public class ModbusTcpServer {
@Override
public void onFailure(Throwable tr) {
ConfigName.getInstance().PlcIsConnect = false;
+ ToastUtils.info("设备 " + ConfigName.getInstance().Address + " 连接失败:" + tr.getMessage());
MessageLog.ShowError("设备 " + ConfigName.getInstance().Address + " 连接失败:" + tr.getMessage());
}
@Override
diff --git a/app/src/main/java/com/bonait/bnframework/common/model/mode/ResGoodProcess.java b/app/src/main/java/com/bonait/bnframework/common/model/mode/ResGoodProcess.java
index add1194e..64c9462e 100644
--- a/app/src/main/java/com/bonait/bnframework/common/model/mode/ResGoodProcess.java
+++ b/app/src/main/java/com/bonait/bnframework/common/model/mode/ResGoodProcess.java
@@ -11,4 +11,5 @@ public class ResGoodProcess {
* 商品配方
*/
public List bomTechnologyActionInfo;
+
}
diff --git a/app/src/main/java/com/bonait/bnframework/common/utils/NetworkUtils.java b/app/src/main/java/com/bonait/bnframework/common/utils/NetworkUtils.java
index 748b2c56..22e4ec4a 100644
--- a/app/src/main/java/com/bonait/bnframework/common/utils/NetworkUtils.java
+++ b/app/src/main/java/com/bonait/bnframework/common/utils/NetworkUtils.java
@@ -2,9 +2,14 @@ package com.bonait.bnframework.common.utils;
import android.content.Context;
import android.net.ConnectivityManager;
+import android.net.Network;
import android.net.NetworkCapabilities;
import android.net.NetworkInfo;
+import android.net.NetworkRequest;
import android.os.Build;
+import android.util.Log;
+
+import java.io.DataOutputStream;
/**
* Created by LY on 2019/1/4.
@@ -127,4 +132,81 @@ public class NetworkUtils {
}
return false;
}
+
+ /**
+ * 绑定有线网络
+ * @param context
+ */
+ public static void connetEnternet(Context context)
+ {
+ ConnectivityManager connManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
+ NetworkRequest.Builder builder = new NetworkRequest.Builder();
+ builder.addTransportType(NetworkCapabilities.TRANSPORT_ETHERNET);
+ //builder.addTransportType(NetworkCapabilities.TRANSPORT_WIFI);
+ NetworkRequest networkRequest = builder.build();
+ connManager.requestNetwork(networkRequest, new ConnectivityManager.NetworkCallback() {
+ @Override
+ public void onAvailable(Network network) {
+ super.onAvailable(network);
+ connManager.bindProcessToNetwork(network); // 绑定应用程序到有线网络
+ }
+ });
+ }
+
+ /**
+ * 绑定有线网络
+ * @param context
+ */
+ public static void connetWifi(Context context)
+ {
+ ConnectivityManager connManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
+ NetworkRequest.Builder builder = new NetworkRequest.Builder();
+ builder.addTransportType(NetworkCapabilities.TRANSPORT_WIFI);
+ NetworkRequest networkRequest = builder.build();
+ connManager.requestNetwork(networkRequest, new ConnectivityManager.NetworkCallback() {
+ @Override
+ public void onAvailable(Network network) {
+ super.onAvailable(network);
+ connManager.bindProcessToNetwork(network); // 绑定应用程序到有线网络
+ }
+ });
+ }
+
+
+ /**
+ * 发送
+ * @param cmds
+ */
+ public static void exec3(String... cmds) {
+ StringBuffer command = new StringBuffer();
+ if (cmds.length <= 0) {
+ return;
+ }
+ for (String cmd : cmds) {
+ command.append(cmd).append("\n");
+ }
+ Process process = null;
+ DataOutputStream os = null;
+ try {
+ process = Runtime.getRuntime().exec("su");
+ // process = Runtime.getRuntime().exec("system/bin/su");
+ os = new DataOutputStream(process.getOutputStream());
+ os.write(command.toString().getBytes());
+ os.writeBytes("exit\n");
+ os.flush();
+ process.waitFor();
+ } catch (Exception e) {
+ e.printStackTrace();
+ Log.e("eeee",""+e.toString());
+ } finally {
+ try {
+ os.close();
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ if(process!=null){
+ process.destroy();
+ }
+ }
+ }
}
diff --git a/app/src/main/java/com/bonait/bnframework/common/utils/WifiInterceptor.java b/app/src/main/java/com/bonait/bnframework/common/utils/WifiInterceptor.java
new file mode 100644
index 00000000..d442332f
--- /dev/null
+++ b/app/src/main/java/com/bonait/bnframework/common/utils/WifiInterceptor.java
@@ -0,0 +1,50 @@
+package com.bonait.bnframework.common.utils;
+
+import android.content.Context;
+import android.net.ConnectivityManager;
+import android.net.Network;
+import android.net.NetworkCapabilities;
+import android.net.NetworkRequest;
+
+import java.io.IOException;
+
+import okhttp3.Interceptor;
+import okhttp3.Request;
+import okhttp3.Response;
+
+/**
+ * wifi
+ */
+public class WifiInterceptor implements Interceptor {
+ private Context context;
+
+ public WifiInterceptor(Context context) {
+ this.context = context;
+ }
+
+ @Override
+ public Response intercept(Chain chain) throws IOException {
+ ConnectivityManager connManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
+ NetworkRequest.Builder builder = new NetworkRequest.Builder();
+ builder.addTransportType(NetworkCapabilities.TRANSPORT_WIFI);
+ NetworkRequest networkRequest = builder.build();
+
+ ConnectivityManager.NetworkCallback networkCallback = new ConnectivityManager.NetworkCallback() {
+ @Override
+ public void onAvailable(Network network) {
+ super.onAvailable(network);
+ connManager.bindProcessToNetwork(network); // 绑定应用程序到 Wi-Fi 网络
+ }
+ };
+
+ connManager.requestNetwork(networkRequest, networkCallback);
+
+ try {
+ Request request = chain.request();
+ Response response = chain.proceed(request);
+ return response;
+ } finally {
+ connManager.unregisterNetworkCallback(networkCallback);
+ }
+ }
+}
diff --git a/app/src/main/java/com/bonait/bnframework/modules/home/activity/BottomNavigation2Activity.java b/app/src/main/java/com/bonait/bnframework/modules/home/activity/BottomNavigation2Activity.java
index 008bbc6d..8efdc9ac 100644
--- a/app/src/main/java/com/bonait/bnframework/modules/home/activity/BottomNavigation2Activity.java
+++ b/app/src/main/java/com/bonait/bnframework/modules/home/activity/BottomNavigation2Activity.java
@@ -4,7 +4,7 @@ import android.os.Bundle;
import androidx.annotation.NonNull;
import com.bonait.bnframework.business.ConfigData;
-import com.bonait.bnframework.common.iot.AliyunIOTManager;
+import com.bonait.bnframework.common.utils.NetworkUtils;
import com.google.android.material.bottomnavigation.BottomNavigationView;
import androidx.viewpager.widget.ViewPager;
import android.view.KeyEvent;
diff --git a/code/ff0341c6b235dce778eb87237bf14d4.png b/code/ff0341c6b235dce778eb87237bf14d4.png
new file mode 100644
index 00000000..1a5e9ad4
Binary files /dev/null and b/code/ff0341c6b235dce778eb87237bf14d4.png differ
diff --git a/code/功能.jpg b/code/功能.jpg
new file mode 100644
index 00000000..9d0c0f58
Binary files /dev/null and b/code/功能.jpg differ
diff --git a/code/安卓系列500大炒锅交互3.0(1).xlsx b/code/安卓系列500大炒锅交互3.0(1).xlsx
new file mode 100644
index 00000000..b6462218
Binary files /dev/null and b/code/安卓系列500大炒锅交互3.0(1).xlsx differ
diff --git a/code/小炒机项目计划表20230626.xlsm b/code/小炒机项目计划表20230626.xlsm
new file mode 100644
index 00000000..1ab0d281
Binary files /dev/null and b/code/小炒机项目计划表20230626.xlsm differ
diff --git a/code/工序.txt b/code/工序.txt
new file mode 100644
index 00000000..267a99ca
--- /dev/null
+++ b/code/工序.txt
@@ -0,0 +1,40 @@
+工序主要有:
+搅拌 热油 主料 加热 液体料 延迟 勾芡 出菜 热锅
+
+搅拌模型:
+搅拌动作(正转反转、一直正转、一直反转)
+正转速度(停止、最低、低速、中速、高速、最高、极高)
+反转速度(停止、最低、低速、中速、高速、最高、极高)
+正转(秒)
+反转(秒)
+停止(秒)
+延迟(秒)
+
+热油模型:
+加热功率(停止、一档、二档、三档、四档、五档)
+热油(克)
+
+主料模型:
+主料名称
+主料重量
+烹饪(秒)
+投料动作(投出抖动三次、投出等待三秒、直接投出、手动投料)
+
+
+加热模型:
+加热功率(停止、一档、二档、三档、四档、五档)
+延迟(秒)
+
+液体料模型:【注意:下方展示物料与克数】
+
+延迟模型:
+延迟(秒)
+
+勾芡模型:
+勾芡(克)
+
+出菜模型:
+时间(秒)
+
+热锅模型:
+热锅功率(停止、一档、二档、三档、四档、五档)
\ No newline at end of file