From fc82d219f87c06888e9fb42d9f5e69b946e026da Mon Sep 17 00:00:00 2001
From: whyclj <1525436766@qq.com>
Date: 星期五, 06 十二月 2019 10:11:59 +0800
Subject: [PATCH] 修改后台添加开机自启功能

---
 platforms/android/app/src/main/java/com/alarms/BattAlarmCheckThread.java      |   21 ++--
 platforms/android/app/src/main/java/io/cordova/hellocordova/MainActivity.java |   58 ++++++++++++-
 platforms/android/app/src/main/java/com/concentrator/Concentrator_Param.java  |    2 
 platforms/android/app/src/main/java/com/socket/FBS9600S_DeviceService.java    |   12 ++-
 platforms/android/app/src/main/java/com/socket/BattTestDataRecordThread.java  |   29 +++++++
 platforms/android/app/src/main/java/com/concentrator/Concentrator_State.java  |   65 ++++++++-------
 platforms/android/app/src/main/java/com/socket/BattResDataRecordThread.java   |   22 +++--
 7 files changed, 147 insertions(+), 62 deletions(-)

diff --git a/platforms/android/app/src/main/java/com/alarms/BattAlarmCheckThread.java b/platforms/android/app/src/main/java/com/alarms/BattAlarmCheckThread.java
index 4930560..17544ab 100644
--- a/platforms/android/app/src/main/java/com/alarms/BattAlarmCheckThread.java
+++ b/platforms/android/app/src/main/java/com/alarms/BattAlarmCheckThread.java
@@ -54,16 +54,17 @@
                 for(int i=0;i<allBattDatt.size();i++){
                     BattDataThread battDataThread = allBattDatt.get(i);
                     if(battDataThread.isInstall){
-                       List<BattAlarmData> alarmDatas = battDataThread.state.makeAlarmData(battDataThread,alarmParam);
-                       if(alarmDatas.size() > 0){
-                           //Log.e(TAG, "run: 鏇存柊鍛婅鏉℃暟"+ alarmDatas.size());
+                        List<BattAlarmData> alarmDatas = battDataThread.state.makeAlarmData(battDataThread,alarmParam);
+                        if(alarmDatas.size() > 0){
+                            //Log.e(TAG, "run: 鏇存柊鍛婅鏉℃暟"+ alarmDatas.size());
 
                             //鏇存柊褰撳墠鍛婅璁板綍
-                           for(int k = 0;k<alarmDatas.size();k++){
-                               //Log.e(TAG, "run: "+alarmDatas.get(k) );
-                               insertOrUpdateBattAlarmData(dbHelper,alarmDatas.get(k));                                         //鎻掑叆鎴栨洿鏂板綋鍓嶇殑鍛婅璁板綍
-                           }
-                       }
+                            for(int k = 0;k<alarmDatas.size();k++){
+                                //Log.e(TAG, "run: "+alarmDatas.get(k) );
+                                insertOrUpdateBattAlarmData(dbHelper,alarmDatas.get(k));                                         //鎻掑叆鎴栨洿鏂板綋鍓嶇殑鍛婅璁板綍
+                            }
+                        }
+                        alarmDatas.clear();
                     }else{
                         //娓呴櫎鏈畨瑁呯數姹犵粍鐨勫憡璀﹁褰�
                         if(battDataThread.isAlarmClear){
@@ -81,7 +82,7 @@
                         }
                     }
                 }
-                sleep(1000);
+                sleep(2000);
             } catch (Exception e) {
                 e.printStackTrace();
             }
@@ -96,7 +97,7 @@
      */
     public void initBattAlarmParam(DBHelper dbHelper,AlarmParam alarmParam){
         String str_sql = " SELECT num,alm_id,alm_name,alm_high_coe,alm_low_coe,alm_high_en,alm_low_en " +
-                         " FROM tb_alarm_param ";
+                " FROM tb_alarm_param ";
         boolean flag = false;
         SQLiteDatabase db = null;
         try {
diff --git a/platforms/android/app/src/main/java/com/concentrator/Concentrator_Param.java b/platforms/android/app/src/main/java/com/concentrator/Concentrator_Param.java
index f159e95..be42f62 100644
--- a/platforms/android/app/src/main/java/com/concentrator/Concentrator_Param.java
+++ b/platforms/android/app/src/main/java/com/concentrator/Concentrator_Param.java
@@ -128,7 +128,7 @@
     //璁$畻鎬荤殑鍗曚綋鏁扮洰
     public int countMonCount(){
         //return this.first_monCount+second_monCount+thrid_monCount+fourth_monCount+fifth_monCount;
-        return 24;
+        return 50;
     }
 
 }
diff --git a/platforms/android/app/src/main/java/com/concentrator/Concentrator_State.java b/platforms/android/app/src/main/java/com/concentrator/Concentrator_State.java
index 0f1ba91..8acf8ae 100644
--- a/platforms/android/app/src/main/java/com/concentrator/Concentrator_State.java
+++ b/platforms/android/app/src/main/java/com/concentrator/Concentrator_State.java
@@ -41,8 +41,8 @@
 
 	private double sysversion;								//绯荤粺鐗堟湰(0.1)
 	private int sysstate;									//绯荤粺鐘舵�� 		0-甯歌妯″紡	1-鍐呴樆妯″紡	2-缂栧潃妯″紡
-	private double groupvol;								//缁勭鐢靛帇(0.1)
-	private double groupcurr;								//缁勭鐢垫祦(0.1)
+	private float groupvol;								//缁勭鐢靛帇(0.1)
+	private float groupcurr;								//缁勭鐢垫祦(0.1)
 	public int battstate;									//鐢垫睜鐘舵��	0-娴厖     1-鏀剧數		2-鍏呯數
 	private int currdirection;								//鐢垫祦鏂瑰悜	0-鍏呯數	   1-鏀剧數
 
@@ -91,6 +91,11 @@
 		this.backup7 = state.backup7;
 		this.backup8 = state.backup8;
 		this.restestcount = state.restestcount;														//鍐呴樆娴嬭瘯娆℃暟
+
+		this.groupvol = groupvol+(float)Math.random()*10;											//闅忔満缁勭鐢靛帇
+		this.groupvol = (float)Math.round(groupvol*100)/100;
+		this.groupcurr = groupcurr+(float)Math.random()*5;											//闅忔満缁勭鐢垫祦
+		this.groupcurr = (float)Math.round(groupcurr*100)/100;
 	}
 
 	//澶嶅埗鍗曚綋鐢靛帇
@@ -132,12 +137,12 @@
 
 		sysversion = ComBase.changeShortToDouble(tmpbuf.getShort())/10;			//绯荤粺鐗堟湰
 		sysstate = ComBase.changeShortToInt(tmpbuf.getShort());					//绯荤粺鐘舵��
-		groupvol = ComBase.changeShortToDouble(tmpbuf.getShort())/10;			//缁勭鐢靛帇
-		groupcurr = ComBase.changeShortToDouble(tmpbuf.getShort())/10;			//缁勭鐢垫祦
+		groupvol = (float)ComBase.changeShortToDouble(tmpbuf.getShort())/10;			//缁勭鐢靛帇
+		groupcurr = (float)ComBase.changeShortToDouble(tmpbuf.getShort())/10;			//缁勭鐢垫祦
 		battstate = ComBase.changeShortToInt(tmpbuf.getShort());				//鐢垫睜鐘舵��
 		currdirection = ComBase.changeShortToInt(tmpbuf.getShort());			//鐢垫祦鏂瑰悜
-		this.currdirection=1;
-		this.battstate = 1;
+		this.currdirection=0;
+		this.battstate = 2;
 		if(currdirection == 1){
 			groupcurr = groupcurr *(-1);										//鏀瑰彉褰撳墠鐢垫祦鏂瑰悜
 		}
@@ -155,36 +160,36 @@
 		return true;
 	}
 
-    public List<BattAlarmData> makeAlarmData(BattDataThread battDataThread, AlarmParam alarmParam){
-        List<BattAlarmData> alarmDatas = new ArrayList<>();
-        Concentrator_State state = battDataThread.state;
+	public List<BattAlarmData> makeAlarmData(BattDataThread battDataThread, AlarmParam alarmParam){
+		List<BattAlarmData> alarmDatas = new ArrayList<>();
+		Concentrator_State state = battDataThread.state;
 
-        //鍒ゆ柇缁勭鐢靛帇鍛婅
-        AlarmParam.AlarmParamCell groupVol_param = alarmParam.alm_GroupVol.CreateAlarmParamCell(battDataThread.battinf);
-        state.groupVol_AlarmData.makeAlarmData(alarmDatas,groupVol_param,state.groupvol);
+		//鍒ゆ柇缁勭鐢靛帇鍛婅
+		AlarmParam.AlarmParamCell groupVol_param = alarmParam.alm_GroupVol.CreateAlarmParamCell(battDataThread.battinf);
+		state.groupVol_AlarmData.makeAlarmData(alarmDatas,groupVol_param,state.groupvol);
 
-        //鍒ゆ柇鐢垫睜鐢垫祦鍛婅
-        AlarmParam.AlarmParamCell battCurr_param = alarmParam.alm_BattCurr.CreateAlarmParamCell(battDataThread.battinf);
-        state.battCurr_AlarmData.makeAlarmData(alarmDatas,battCurr_param,state.groupcurr);
+		//鍒ゆ柇鐢垫睜鐢垫祦鍛婅
+		AlarmParam.AlarmParamCell battCurr_param = alarmParam.alm_BattCurr.CreateAlarmParamCell(battDataThread.battinf);
+		state.battCurr_AlarmData.makeAlarmData(alarmDatas,battCurr_param,state.groupcurr);
 
-        //鍒ゆ柇鍗曚綋鍛婅
-        for(int i=0;i<monCount;i++){
-            //鍒ゆ柇鍗曚綋鐢靛帇鍛婅
-            AlarmParam.AlarmParamCell monVol_param = alarmParam.alm_MonVol.CreateAlarmParamCell(battDataThread.battinf);
+		//鍒ゆ柇鍗曚綋鍛婅
+		for(int i=0;i<monCount;i++){
+			//鍒ゆ柇鍗曚綋鐢靛帇鍛婅
+			AlarmParam.AlarmParamCell monVol_param = alarmParam.alm_MonVol.CreateAlarmParamCell(battDataThread.battinf);
 			//Log.e(TAG, "makeAlarmData: monvol  鍛婅鍊糷ig"+monVol_param.alm_high_coe+"\tlow"+monVol_param.alm_low_coe );
 			state.monVol_AlarmData[i].makeAlarmData(alarmDatas,monVol_param,state.mon_vols[i]);
 
-            //鍒ゆ柇鍗曚綋娓╁害鍛婅
-            AlarmParam.AlarmParamCell monTmp_param = alarmParam.alm_MonTmp.CreateAlarmParamCell(battDataThread.battinf);
-            state.monTmp_AlarmData[i].makeAlarmData(alarmDatas,monTmp_param,state.mon_tmps[i]);
+			//鍒ゆ柇鍗曚綋娓╁害鍛婅
+			AlarmParam.AlarmParamCell monTmp_param = alarmParam.alm_MonTmp.CreateAlarmParamCell(battDataThread.battinf);
+			state.monTmp_AlarmData[i].makeAlarmData(alarmDatas,monTmp_param,state.mon_tmps[i]);
 
-            //鍒ゆ柇鍗曚綋鍐呴樆鍛婅
-            AlarmParam.AlarmParamCell monRes_param = alarmParam.alm_MonRes.CreateAlarmParamCell(battDataThread.battinf);
-            state.monRes_AlarmData[i].makeAlarmData(alarmDatas,monRes_param,state.mon_ress[i]);
+			//鍒ゆ柇鍗曚綋鍐呴樆鍛婅
+			AlarmParam.AlarmParamCell monRes_param = alarmParam.alm_MonRes.CreateAlarmParamCell(battDataThread.battinf);
+			state.monRes_AlarmData[i].makeAlarmData(alarmDatas,monRes_param,state.mon_ress[i]);
 
-        }
-        return alarmDatas;
-    }
+		}
+		return alarmDatas;
+	}
 
 	public boolean putMonDataBuffer(ByteBuffer bf,int reg_addr){
 		if(bf.limit() < BYTE_LEN) {
@@ -321,11 +326,11 @@
 		this.sysstate = sysstate;
 	}
 
-	public void setGroupvol(double groupvol) {
+	public void setGroupvol(float groupvol) {
 		this.groupvol = groupvol;
 	}
 
-	public void setGroupcurr(double groupcurr) {
+	public void setGroupcurr(float groupcurr) {
 		this.groupcurr = groupcurr;
 	}
 
diff --git a/platforms/android/app/src/main/java/com/socket/BattResDataRecordThread.java b/platforms/android/app/src/main/java/com/socket/BattResDataRecordThread.java
index 96765c2..5049288 100644
--- a/platforms/android/app/src/main/java/com/socket/BattResDataRecordThread.java
+++ b/platforms/android/app/src/main/java/com/socket/BattResDataRecordThread.java
@@ -31,6 +31,8 @@
     @Override
     public void run() {
         Log.d(TAG, "run: BattResDataRecordThread start at" + Com.getDateTimeFormat(new Date(),Com.DTF_YMDhms));
+
+
         while(true){
             try {
                 //Log.e(TAG, "run: "+ battData.isOutTime+"\tlastResTestCount:"+lastResTestCount+"\t count:"+battData.state.getRestestcount());
@@ -39,7 +41,7 @@
                         if(battData.state.monCount >0 && battData.state.mon_ress[battData.state.monCount-1] > 0){
                             //寮�濮嬭褰曞唴闃诲巻鍙叉暟鎹�
                             int max_test_record_count = queryMaxTestRecordCount(battData.battIndex,dbHelper);                           //鏌ヨ褰撳墠鐢垫睜缁勬渶澶х殑璁板綍绗旀暟
-                            //Log.e(TAG, "run: MAXCOUNT:"+max_test_record_count );
+                            Log.e(TAG, "run: MAXCOUNT:"+max_test_record_count );
                             //鎻掑叆 tb_battresdata_inf 琛ㄤ腑
                             insertBattResDataInf(battData.battIndex, battData.state,dbHelper,max_test_record_count);
 
@@ -49,7 +51,6 @@
                             lastResTestCount = battData.state.getRestestcount();
                         }
                     }
-
                 }
                 sleep(3000);
             } catch (Exception e) {
@@ -68,6 +69,7 @@
             sql_str_base += "("+battgroupid+","+test_record_count+","+BattDataThread.TESTTYPE_RESTEST+",'"+Com.getDateTimeFormat(new Date(),Com.DTF_YMDhms)+"',"+state.getGroupvol()+","+state.getGroupcurr()+","+(i+1)+","+state.mon_vols[i]+","+state.mon_tmps[i]+","+state.mon_ress[i]+")";
         }
         SQLiteDatabase db = dbHelper.getWritableDatabase();
+        //Log.e(TAG, "insertBattResDataID: "+sql_str_start+sql_str_base );
         try {
             db.execSQL(sql_str_start+sql_str_base);
         } catch (SQLException e) {
@@ -90,17 +92,17 @@
         String sql_str = "INSERT INTO tb_battresdata_inf " +
                 "(BattGroupId,test_record_count,test_type,test_starttime,record_time,group_vol,test_curr) " +
                 "VALUES("
-                    + battgroupid+","
-                    + test_record_count+","
-                    + BattDataThread.TESTTYPE_RESTEST+",'"
-                    + Com.getDateTimeFormat(new Date(),Com.DTF_YMDhms)+"','"
-                    + Com.getDateTimeFormat(new Date(),Com.DTF_YMDhms)+"',"
-                    + state.getGroupvol()+ ","
-                    + state.getGroupcurr()+"" +
+                + battgroupid+","
+                + test_record_count+","
+                + BattDataThread.TESTTYPE_RESTEST+",'"
+                + Com.getDateTimeFormat(new Date(),Com.DTF_YMDhms)+"','"
+                + Com.getDateTimeFormat(new Date(),Com.DTF_YMDhms)+"',"
+                + state.getGroupvol()+ ","
+                + state.getGroupcurr()+"" +
                 ");";
         SQLiteDatabase db = dbHelper.getWritableDatabase();
         try {
-            Log.d(TAG, "insertBattResDataInf: "+sql_str);
+            //Log.d(TAG, "insertBattResDataInf: "+sql_str);
             db.execSQL(sql_str);
 
         } catch (Exception e) {
diff --git a/platforms/android/app/src/main/java/com/socket/BattTestDataRecordThread.java b/platforms/android/app/src/main/java/com/socket/BattTestDataRecordThread.java
index 2293882..abe2170 100644
--- a/platforms/android/app/src/main/java/com/socket/BattTestDataRecordThread.java
+++ b/platforms/android/app/src/main/java/com/socket/BattTestDataRecordThread.java
@@ -77,6 +77,10 @@
                         //璁板綍褰撳墠鐨勫厖鏀剧數璁板綍
                         insertBattTestData(dbHelper,battData);
                     }
+                    if(!isRecording && testTimelong < minTestTimeLong){
+                        //娴嬭瘯鏃堕暱灏忎簬1鍒嗛挓鐨勫厖鏀剧數璁板綍鍒犻櫎
+                        deleteInvalidTestData(dbHelper,battData);
+                    }
                     battData.state.record_num++;
                     isStartRecord = false;
                 }else{
@@ -202,4 +206,29 @@
 //            }
         }
     }
+
+    /**
+     * 鍒犻櫎鍘嗗彶鎸囧畾鐢垫睜缁勭殑鎸囧畾鍏呮斁鐢佃褰�
+     * @param dbHelper
+     * @param battData
+     */
+    public static void deleteInvalidTestData(DBHelper dbHelper,BattDataThread battData){
+        Concentrator_State state = battData.state;
+        //鍒犻櫎tb_batttestdata_inf琛ㄤ腑鐨勮褰�
+        String sql_delbatttDataInf_str = "DELETE FROM tb_batttestdata_inf WHERE BattGroupId = "+battData.battIndex+" AND test_record_count = "+state.test_record_count;
+        //鍒犻櫎tb_batttestdata_id琛ㄤ腑鐨勮褰�
+        String sql_delbatttDataId_str = "DELETE FROM tb_batttestdata_"+battData.battIndex+" WHERE test_record_count= "+state.test_record_count;
+        SQLiteDatabase db = null;
+        try {
+            db = dbHelper.getWritableDatabase();
+            db.beginTransaction();
+            db.execSQL(sql_delbatttDataInf_str);
+            db.execSQL(sql_delbatttDataId_str);
+            db.setTransactionSuccessful();
+            db.endTransaction();
+        } catch (SQLException e) {
+            e.printStackTrace();
+        }
+        Log.e(TAG, "deleteInvalidTestData:鍒犻櫎娴嬭瘯鏃堕暱灏忎簬1鍒嗛挓鐨勬斁鐢佃褰� ");
+    }
 }
diff --git a/platforms/android/app/src/main/java/com/socket/FBS9600S_DeviceService.java b/platforms/android/app/src/main/java/com/socket/FBS9600S_DeviceService.java
index 2b880d8..8107575 100644
--- a/platforms/android/app/src/main/java/com/socket/FBS9600S_DeviceService.java
+++ b/platforms/android/app/src/main/java/com/socket/FBS9600S_DeviceService.java
@@ -146,15 +146,19 @@
     //璇诲彇鐢垫睜缁勫厖鐢电數姹犱俊鎭�
     @JavascriptInterface
     public void readBattCharInfo(){
-        List list = new ArrayList();
+        List<HashMap> list = new ArrayList();
         for(int i=0;i<allBattDatt.size();i++){
-            if(allBattDatt.get(i).state.battstate == Concentrator_State.WORKSTATE_CHARG){
-                list.add(allBattDatt.get(i));
+            if(allBattDatt.get(i).state.battstate == Concentrator_State.WORKSTATE_CHARG && allBattDatt.get(i).isInstall){
+                HashMap map = new HashMap();
+                map.put("state",allBattDatt.get(i).state);
+                map.put("battinf",allBattDatt.get(i).battinf);
+                list.add(map);
             }
         }
         ServiceModel model = new ServiceModel();
         model.code = 1;
         model.data = list;
+        //Log.e(TAG, "readBattCharInfo: "+model );
         ActionUtil.SendCallDataToJS(JS_INTERFACE_NAME,"readBattCharInfo",model,webView, ActionUtil.getGson());
     }
 
@@ -179,7 +183,7 @@
         //Log.e(TAG, "readBattDiscInfo: ##############################"+allBattDatt.size());
         List<HashMap> list = new ArrayList();
         for(int i=0;i<allBattDatt.size();i++){
-            if(allBattDatt.get(i).state.battstate == Concentrator_State.WORKSTATE_DISCH){
+            if(allBattDatt.get(i).state.battstate == Concentrator_State.WORKSTATE_DISCH && allBattDatt.get(i).isInstall){
                 HashMap map = new HashMap();
                 map.put("state",allBattDatt.get(i).state);
                 map.put("battinf",allBattDatt.get(i).battinf);
diff --git a/platforms/android/app/src/main/java/io/cordova/hellocordova/MainActivity.java b/platforms/android/app/src/main/java/io/cordova/hellocordova/MainActivity.java
index 2c91a89..f1a0977 100644
--- a/platforms/android/app/src/main/java/io/cordova/hellocordova/MainActivity.java
+++ b/platforms/android/app/src/main/java/io/cordova/hellocordova/MainActivity.java
@@ -19,16 +19,16 @@
 
 package io.cordova.hellocordova;
 
-import android.database.sqlite.SQLiteDatabase;
+import android.graphics.Rect;
 import android.os.Bundle;
 import android.util.Log;
+import android.view.View;
+import android.view.ViewTreeObserver;
+import android.view.WindowManager;
 import android.webkit.WebView;
 
 import com.fgkj.action.JsInterface;
 import com.fgkj.dao.DBHelper;
-import com.fgkj.dao.SQLdm;
-import com.fgkj.dto.Battresdata;
-import com.fgkj.dto.Batttestdata_inf;
 import com.fgkj.service.Battalram_dataService;
 import com.fgkj.service.BattinfService;
 import com.fgkj.service.BattresdataService;
@@ -43,6 +43,7 @@
 {
     public WebView webview;
     public DBHelper dbHelper;
+    boolean isShow = false;
 
     @Override
     public void onCreate(Bundle savedInstanceState)
@@ -57,15 +58,15 @@
 
         // Set by <content src="index.html" /> in config.xml
         loadUrl(launchUrl);
-        
+
         dbHelper=new DBHelper(this,"fbs9600.db", null, 1);
-        
+
         webview = findViewById(appView.getView().getId());
         // 娣诲姞浜嬩欢
         webview.addJavascriptInterface(new JsInterface(this, webview,MainActivity.this), JsInterface.JS_INTERFACE_NAME);
         //娣诲姞璁惧閫氳鐩稿叧鎺ュ彛
         webview.addJavascriptInterface(new FBS9600S_DeviceService(webview,dbHelper), FBS9600S_DeviceService.JS_INTERFACE_NAME);
-       //tb_battinf琛ㄧ殑鎿嶄綔
+        //tb_battinf琛ㄧ殑鎿嶄綔
         webview.addJavascriptInterface(new BattinfService(webview, dbHelper),BattinfService.BATTINFSERVICE_NAME);
         //tb_batttestdata琛ㄧ殑鎿嶄綔
         webview.addJavascriptInterface(new BatttestdataService(webview, dbHelper),BatttestdataService.BATTTESTDATASERVICE_NAME);
@@ -77,6 +78,31 @@
         webview.addJavascriptInterface(new Battresdata_infService(webview, dbHelper),Battresdata_infService.BATTRESDATA_INFSERVICE_NAME);
         //娣诲姞鍛婅鎺ュ彛
         webview.addJavascriptInterface(new Battalram_dataService(webview,dbHelper),Battalram_dataService.BATTALRAM_DATASERVICE_NAME);
+
+
+        //鐩戝惉閿洏鏄剧ず鍜岄殣钘忎簨浠�
+        this.webview.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
+            @Override
+            public void onGlobalLayout() {
+                Rect rect = new Rect();
+                webview.getWindowVisibleDisplayFrame(rect);
+                int displayHeight = rect.bottom - rect.top;
+                int height = webview.getHeight();
+                boolean visible = (double) displayHeight / height < 0.8;
+                if (visible) {
+                    if(!isShow){
+                        //闅愯棌鐘舵�佹爮锛屽苟涓斾笉鏄剧ず瀛椾綋
+                        getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
+                        Log.e(TAG, "杞敭鐩樻樉绀�");
+                        isShow = true;
+                    }
+                } else {
+                    isShow = false;
+                    Log.e(TAG, "杞敭鐩橀殣钘�");
+                    hideSystemMenu();
+                }
+            }
+        });
     }
 
     @Override
@@ -84,4 +110,22 @@
         dbHelper.close();
         super.onDestroy();
     }
+
+    /**
+     * 闅愯棌绯荤粺鑿滃崟鏍�
+     */
+    public void hideSystemMenu(){
+        int uiOptions = View.SYSTEM_UI_FLAG_LAYOUT_STABLE |
+                //甯冨眬浣嶄簬鐘舵�佹爮涓嬫柟
+                View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION |
+                //鍏ㄥ睆
+                View.SYSTEM_UI_FLAG_FULLSCREEN |
+                //闅愯棌瀵艰埅鏍�
+                View.SYSTEM_UI_FLAG_HIDE_NAVIGATION |
+                View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN;
+        uiOptions |= 0x00001000;
+        getWindow().getDecorView().setSystemUiVisibility(uiOptions);
+    }
+
+
 }

--
Gitblit v1.9.1