|
1 | 1 | package com.obd.widget;
|
2 | 2 |
|
| 3 | +import java.io.IOException; |
3 | 4 | import java.nio.Buffer;
|
4 | 5 | import java.text.SimpleDateFormat;
|
5 | 6 | import java.util.Date;
|
@@ -75,12 +76,16 @@ public String uploadPos(BDLocation location) {
|
75 | 76 | int lonFenInt = (int) lonFen;
|
76 | 77 | String lonString = String.format("%03d%02d%04d", lonDu, lonFenInt,
|
77 | 78 | (int) ((lonFen - lonFenInt) * 10000));
|
78 |
| - |
| 79 | + String lonStartString = String.format("%03d%02d.%04d", lonDu, lonFenInt, |
| 80 | + (int) ((lonFen - lonFenInt) * 10000)); |
| 81 | + |
79 | 82 | int latDu = (int) lat;
|
80 | 83 | float latFen = (float) (lat - latDu) * 60;
|
81 | 84 | int latFenInt = (int) latFen;
|
82 | 85 | String latString = String.format("%02d%02d%04d", latDu, latFenInt,
|
83 | 86 | (int) ((latFen - latFenInt) * 10000));
|
| 87 | + String latStartString = String.format("%02d%02d.%04d", latDu, latFenInt, |
| 88 | + (int) ((latFen - latFenInt) * 10000)); |
84 | 89 |
|
85 | 90 | String speed = String.format("%02d",
|
86 | 91 | Math.round(location.getSpeed()*3.6f / 3.704f));
|
@@ -115,13 +120,30 @@ public String uploadPos(BDLocation location) {
|
115 | 120 | if(StatusInface.getInstance().getStartS1() != null){
|
116 | 121 | buffer.append("&S1,0,,"+StatusInface.getInstance().getTime());
|
117 | 122 | DBmanager.getInase().insertBackup(buffer.toString());
|
| 123 | + QuickShPref.putValueObject(QuickShPref.StartTme, StatusInface.getInstance().getTime()); |
| 124 | + QuickShPref.putValueObject(QuickShPref.StartLat, latStartString); |
| 125 | + QuickShPref.putValueObject(QuickShPref.StartLon, lonStartString); |
| 126 | + try { |
| 127 | + Runtime.getRuntime().exec("sync"); |
| 128 | + } catch (IOException e) { |
| 129 | + // TODO Auto-generated catch block |
| 130 | + e.printStackTrace(); |
| 131 | + } |
118 | 132 | }else{
|
119 | 133 | DROInfo mDROInfo = StatusInface.getInstance().getDROInfo();
|
120 | 134 | if(mDROInfo != null){
|
121 |
| - buffer.append(String.format("&S2,%s,%sE,%sN,%d,%d,5,%s,%s,%s,%s,0", StatusInface.getInstance().getTime(), |
122 |
| - lonString,latString,mDROInfo.getMILESM(),mDROInfo.getFuleSmL(), |
123 |
| - mDROInfo.RACLS,mDROInfo.BRAKES,mDROInfo.STARTS,mDROInfo.STARTS)); |
124 |
| - DBmanager.getInase().insertBackupNote(buffer.toString(),mDROInfo.note); |
| 135 | + String startLon = QuickShPref.getString(QuickShPref.StartLon); |
| 136 | + String startLat = QuickShPref.getString(QuickShPref.StartLat); |
| 137 | + String startTime = QuickShPref.getString(QuickShPref.StartTme); |
| 138 | + |
| 139 | + if(startTime != null || startLat != null || startLon != null){ |
| 140 | + buffer.append(String.format("&S2,%s,%sE,%sN,%d,%d,5,%s,%s,%s,%s,0", startTime, |
| 141 | + startLon,startLat,mDROInfo.getMILESM(),mDROInfo.getFuleSmL(), |
| 142 | + mDROInfo.RACLS,mDROInfo.BRAKES,mDROInfo.STARTS,mDROInfo.STARTS)); |
| 143 | + DBmanager.getInase().insertBackupNote(buffer.toString(),mDROInfo.note); |
| 144 | + }else{ |
| 145 | + MyLog.E("startTime="+startTime+",startLat="+startLat+",startLon="+startLon); |
| 146 | + } |
125 | 147 | }else{
|
126 | 148 | buffer.append("&O"+SatelliteNumber);
|
127 | 149 | buffer.append("&N"+mGSMsingle);
|
|
0 commit comments