Переглянути джерело

<注册界面增加网络测试和喇叭测试,双击呼叫键播放测试音频,连接网络后正常显示ip地址则网络正常>

weizhengliang 4 роки тому
батько
коміт
cbb8398f4c

+ 2 - 6
app/build.gradle

@@ -31,11 +31,7 @@ android {
         minSdkVersion 15
         targetSdkVersion 26
         versionCode 1
-<<<<<<< HEAD
-        versionName "1.43"
-=======
-        versionName "1.45"
->>>>>>> 21746d5e2a7c6c020404a673a1951fe13b4a6936
+        versionName "1.46"
         testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
 
         buildConfigField "String", "BUILD_TIME", getDate()
@@ -95,7 +91,7 @@ dependencies {
     compile 'net.frakbot:jumpingbeans:1.3.0'
     compile files('libs/core-3.2.1.jar')
     compile project(':AmDemo_R')
-    compile 'com.android.support:cardview-v7:23.2.0'
+    compile 'com.android.support:cardview-v7:26+'
     compile 'com.github.anrwatchdog:anrwatchdog:1.3.+'
 //    debugCompile 'com.squareup.leakcanary:leakcanary-android:1.3'
 //    releaseCompile 'com.squareup.leakcanary:leakcanary-android-no-op:1.3'

+ 4 - 2
app/src/main/java/com/wdkl/callingbed/service/SoundPoolManager.java

@@ -28,7 +28,7 @@ public class SoundPoolManager {
         if(Build.VERSION.SDK_INT > 21){
             SoundPool.Builder builder = new SoundPool.Builder();
             //传入音频数量
-            builder.setMaxStreams(2);
+            builder.setMaxStreams(3);
             //AudioAttributes是一个封装音频各种属性的方法
             AudioAttributes.Builder attrBuilder = new AudioAttributes.Builder();
             //设置音频流的合适的属性
@@ -37,13 +37,15 @@ public class SoundPoolManager {
             builder.setAudioAttributes(attrBuilder.build());
             soundPool = builder.build();
         }else{
-            soundPool = new SoundPool(2, AudioManager.STREAM_SYSTEM, 0);
+            soundPool = new SoundPool(3, AudioManager.STREAM_SYSTEM, 0);
         }
 
         //来电
         soundID.put(1, soundPool.load(MyApplication.getAppContext(), R.raw.incoming_call, 1));
         //去电
         soundID.put(2, soundPool.load(MyApplication.getAppContext(), R.raw.outgoing_call, 1));
+        //测试音频
+        soundID.put(3, soundPool.load(MyApplication.getAppContext(), R.raw.speaker_test, 1));
         soundPool.setOnLoadCompleteListener(new SoundPool.OnLoadCompleteListener() {
             @Override
             public void onLoadComplete(SoundPool soundPool, int sampleId, int status) {

+ 0 - 2
app/src/main/java/com/wdkl/callingbed/ui/CallingBedActivity.java

@@ -582,8 +582,6 @@ public class CallingBedActivity extends BaseActivity implements ISerialPortBedOn
         //20190415 waderson  测试
         ScreenManagerUtil.setScreenBrightness(context, 210);
 
-        SoundPoolManager.getInstance().init();
-
         String model = SystemProperties.get("ro.product.model");
         if ("WDFJ-I".equals(model)) {
             SCREEN_OFF_LIGHT = "30";

+ 38 - 6
app/src/main/java/com/wdkl/callingbed/ui/InitActivity.java

@@ -20,6 +20,7 @@ import com.wdkl.callingbed.base.BaseActivity;
 import com.wdkl.callingbed.common.Constants;
 import com.wdkl.callingbed.entity.InitDataEntity;
 import com.wdkl.callingbed.entity.MessageEvent;
+import com.wdkl.callingbed.service.SoundPoolManager;
 import com.wdkl.callingbed.util.AutoRebootUtil;
 import com.wdkl.callingbed.util.CutSerialPortUtil;
 import com.wdkl.callingbed.util.DateUtil;
@@ -86,6 +87,7 @@ public class InitActivity extends BaseActivity implements SerialPortUtil.ISerial
         ivLoading.setVisibility(View.VISIBLE);
         animationDrawable = (AnimationDrawable) ivLoading.getBackground();
         animationDrawable.start();
+        SoundPoolManager.getInstance().init();
     }
 
     @Override
@@ -159,6 +161,7 @@ public class InitActivity extends BaseActivity implements SerialPortUtil.ISerial
     public void isNewWork() {
         if (cm != null) {
             //ethreboot();//wuyq add
+            String ipStr = NetUtil.getLocalIP();
             NetworkInfo networkInfo = cm.getActiveNetworkInfo();
             if (networkInfo != null && networkInfo.isConnected()) { //wuyq modify
                 if (networkInfo.getType() == ConnectivityManager.TYPE_WIFI || networkInfo.getType() == ConnectivityManager.TYPE_ETHERNET) {
@@ -167,7 +170,7 @@ public class InitActivity extends BaseActivity implements SerialPortUtil.ISerial
                     countsReboot = 0; //wuyq add
                 } else {
                     updateHandler.sendEmptyMessageDelayed(404, DATEREFRESH_DELAYMILLIS);
-                    showNetErrorView("MAC地址: " + macAddress + "\nError:本地网络或wifi连接错误");
+                    showNetErrorView("MAC地址: " + macAddress + " IP地址: " + ipStr + "\nError:本地网络或wifi连接错误");
                     ToastUtil.showToast("本地网络或wifi连接错误");
                     CallingBedSendCommand.setSipStatus(serialPortUtil, "0");
                 }
@@ -175,7 +178,7 @@ public class InitActivity extends BaseActivity implements SerialPortUtil.ISerial
                 //updateHandler.sendEmptyMessageDelayed(404, DATEREFRESH_DELAYMILLIS);//wuyq remove
                 updateHandler.sendEmptyMessageDelayed(4444, DATEREFRESH_DELAYMILLIS);//wuyq add
                 CallingBedSendCommand.setSipStatus(serialPortUtil, "0");
-                showNetErrorView("MAC地址: " + macAddress + "\nError:无网络连接;以太网是否连接正常?");//网络信息初始化错误
+                showNetErrorView("MAC地址: " + macAddress + " IP地址: " + ipStr + "\nError:无网络连接;以太网是否连接正常?");//网络信息初始化错误
                 ToastUtil.showToast("无网络连接;以太网是否连接正常?");//网络信息初始化错误
                 //autoReboot();//wuyq remove
 
@@ -255,6 +258,7 @@ public class InitActivity extends BaseActivity implements SerialPortUtil.ISerial
      */
     private void getInitData() {
         LogUtil.d("getInitData", "URL==" + Constants.URL + Constants.URL_END + Constants.CALLINGBED_INIT);
+        final String ipStr = NetUtil.getLocalIP();
         if (Constants.URL.length() > 7) {
             OkHttpUtils
                     .post()
@@ -266,7 +270,7 @@ public class InitActivity extends BaseActivity implements SerialPortUtil.ISerial
                         public void onError(Call call, Exception e, int id) {
                             ivLoading.setVisibility(View.INVISIBLE);
                             dismissNurseBrightness();
-                            showNetErrorView("MAC地址: " + macAddress + "\nError:" + "初始化数据请求错误[MAC地址是否注册?]");
+                            showNetErrorView("MAC地址: " + macAddress + " IP地址: " + ipStr + "\nError:" + "初始化数据请求错误[MAC地址是否注册?]");
                             //updateHandler.sendEmptyMessageDelayed(404, DATEREFRESH_DELAYMILLIS);//wuyq remove
                             updateHandler.sendEmptyMessageDelayed(4444, DATEREFRESH_DELAYMILLIS);//wuyq add
                             ToastUtil.showToast("初始化数据请求错误");
@@ -282,7 +286,7 @@ public class InitActivity extends BaseActivity implements SerialPortUtil.ISerial
                                 JSONObject object = new JSONObject(data);
                                 if (object.getString("Code").equals("ERROR!")) {
                                     dismissNurseBrightness();
-                                    showNetErrorView("MAC地址: " + macAddress + "\nError:" + "数据错误异常[ERROR!]");
+                                    showNetErrorView("MAC地址: " + macAddress + " IP地址: " + ipStr + "\nError:" + "数据错误异常[ERROR!]");
                                     updateHandler.sendEmptyMessageDelayed(404, DATEREFRESH_DELAYMILLIS);
                                     ToastUtil.showToast("数据请求失败");
                                 } else {
@@ -297,7 +301,7 @@ public class InitActivity extends BaseActivity implements SerialPortUtil.ISerial
                                         InitActivity.this.finish();
                                     } else {
                                         dismissNurseBrightness();
-                                        showNetErrorView("MAC地址: " + macAddress + "\nError: " + "设备未启用");
+                                        showNetErrorView("MAC地址: " + macAddress + " IP地址: " + ipStr + "\nError: " + "设备未启用");
                                         updateHandler.sendEmptyMessageDelayed(404, DATEREFRESH_DELAYMILLIS);
                                         ToastUtil.showToast("设备未启用");
                                     }
@@ -401,6 +405,8 @@ public class InitActivity extends BaseActivity implements SerialPortUtil.ISerial
         }).start();
     }
 
+    private long clickTime = 0;
+
     /**
      * 监听呼叫按钮 buffer[5]   如果按下则 放松注册信息给后台
      */
@@ -409,6 +415,32 @@ public class InitActivity extends BaseActivity implements SerialPortUtil.ISerial
 
         // mScreenExtinguishUtil.touchScreen();//===============================息屏
 
+        //双击测试喇叭及网络
+        if (buffer[5] == 1) {
+            long curTime = System.currentTimeMillis();
+            if (curTime - clickTime < 2000) {
+                Log.d("wzlll", "double click");
+                SoundPoolManager.getInstance().playSound(3);
+                new Thread(new Runnable() {
+                    @Override
+                    public void run() {
+                        final boolean pingStatus = NetUtil.ping("192.168.101.1", 2, null);
+                        runOnUiThread(new Runnable() {
+                            @Override
+                            public void run() {
+                                if (pingStatus) {
+                                    ToastUtil.showToast("连接192.168.101.1成功!");
+                                } else {
+                                    ToastUtil.showToast("连接192.168.101.1失败, 请检查设备!");
+                                }
+                            }
+                        });
+                    }
+                }).start();
+            }
+            clickTime = curTime;
+        }
+
         //呼叫护士键短按/长按松开
         if (buffer[5] == 1 || buffer[5] == 2) {
             if (null != Constants.MAC_ADDRESS) {
@@ -458,7 +490,7 @@ public class InitActivity extends BaseActivity implements SerialPortUtil.ISerial
         }
     };
 
-    public static final long DATEREFRESH_DELAYMILLIS = 3000;
+    public static final long DATEREFRESH_DELAYMILLIS = 8000;
 
     @Subscribe(threadMode = ThreadMode.MAIN)
     public void onMoonEvent(MessageEvent messageEvent) {

+ 17 - 0
app/src/main/java/com/wdkl/callingbed/util/NetUtil.java

@@ -121,6 +121,23 @@ public class NetUtil {
         return null;
     }
 
+    public static String getLocalIP() {
+        try {
+            for (Enumeration<NetworkInterface> enNetI = NetworkInterface.getNetworkInterfaces(); enNetI.hasMoreElements(); ) {
+                NetworkInterface netI = enNetI.nextElement();
+                for (Enumeration<InetAddress> enumIpAddr = netI.getInetAddresses(); enumIpAddr.hasMoreElements(); ) {
+                    InetAddress inetAddress = enumIpAddr.nextElement();
+                    if (inetAddress instanceof Inet4Address && !inetAddress.isLoopbackAddress()) {
+                        return inetAddress.getHostAddress();
+                    }
+                }
+            }
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+        return null;
+    }
+
     /**
      * wifi的网关
      *

BIN
app/src/main/res/raw/speaker_test.mp3


+ 32 - 6
build.gradle

@@ -2,11 +2,22 @@
 
 buildscript {
     repositories {
-        jcenter()
         maven {
-            url 'https://maven.google.com/'
-            name 'Google'
+            url 'https://maven.aliyun.com/repository/jcenter'
         }
+        maven {
+            url 'https://maven.aliyun.com/repository/central'
+        }
+        maven {
+            url 'https://maven.aliyun.com/repository/google'
+        }
+        maven { url "https://jitpack.io" }
+
+//        jcenter()
+//        maven {
+//            url 'https://maven.google.com/'
+//            name 'Google'
+//        }
     }
     dependencies {
         classpath 'com.android.tools.build:gradle:2.3.3'
@@ -19,11 +30,26 @@ buildscript {
 //wuyq add for compile error begin
 allprojects {
     repositories {
-        jcenter()
         maven {
-            url 'https://maven.google.com/'
-            name 'Google'
+            url 'https://maven.aliyun.com/repository/jcenter'
+        }
+        maven {
+            url 'https://maven.aliyun.com/repository/central'
+        }
+        maven {
+            url 'https://maven.aliyun.com/repository/google'
         }
+        maven {
+            url 'http://www.idescout.com/maven/repo/'
+            name 'IDEScout, Inc.'
+        }
+        maven { url "https://jitpack.io" }
+
+//        jcenter()
+//        maven {
+//            url 'https://maven.google.com/'
+//            name 'Google'
+//        }
     }
     gradle.taskGraph.whenReady {
         tasks.each { task ->