Compare commits

..

No commits in common. "4f7def273f810ac6a558f01f036ae1dfd4afde4a" and "4439687405f0d4a573b63719bae4e3c8282bd5b0" have entirely different histories.

9 changed files with 1254 additions and 1008 deletions

2
.gitignore vendored
View File

@ -184,3 +184,5 @@ $RECYCLE.BIN/
/.idea/misc.xml /.idea/misc.xml
/.idea /.idea
/.idea/modules.xml /.idea/modules.xml
/.idea/gradle.xml
/.idea/misc.xml

View File

@ -1,8 +1,9 @@
package com.safemobile.activities; package com.safemobile.activities;
import android.app.TabActivity; import java.util.ArrayList;
import android.content.BroadcastReceiver; import java.util.Hashtable;
import com.safemobile.bluetooth.BluetoothTether;
import com.safemobile.lib.AppParams; import com.safemobile.lib.AppParams;
import com.safemobile.lib.SM; import com.safemobile.lib.SM;
import com.safemobile.lib.SuperVehicle; import com.safemobile.lib.SuperVehicle;
@ -10,21 +11,43 @@ import com.safemobile.lib.Vehicle;
import com.safemobile.services.TCPhandler; import com.safemobile.services.TCPhandler;
import com.safemobile.services.TCPmsgParser; import com.safemobile.services.TCPmsgParser;
import java.util.ArrayList; import android.app.Activity;
import java.util.Hashtable; import android.app.NotificationManager;
import android.app.TabActivity;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.os.Handler;
import android.widget.ImageView;
import android.widget.RelativeLayout;
@SuppressWarnings("deprecation") @SuppressWarnings("deprecation")
public abstract class AbstractSDParentActivity extends TabActivity { public abstract class AbstractSDParentActivity extends TabActivity {
/** UI Elements */
public RelativeLayout layoutLoading;
public ImageView imageViewLoading;
/** Misc */ /** Misc */
private static final boolean SHOULD_DISPLAY_LOGCAT = true; // show logCat messages when TCP send was successful public Activity activity;
private String imei; public Context context;
private String mess; public NotificationManager mNotificationManager;
public boolean displayLogCat = true; // show logCat messages when TCP send was successful
public String imei, mess;
public int demoPosition = 0; public int demoPosition = 0;
private ArrayList<Vehicle> allVehicle = new ArrayList<>(); /** Lists */
private Hashtable<Long, SuperVehicle> superVehHash = new Hashtable<>(); public ArrayList<Vehicle> allVehicle = new ArrayList<Vehicle>();
private Hashtable<Long, Vehicle> vehHashByScId = new Hashtable<>(); public Hashtable<Long, SuperVehicle> SuperVehHash = new Hashtable<Long, SuperVehicle>();
public Hashtable<Long, Vehicle> VehHashbySc_id = new Hashtable<Long, Vehicle>();
/** Handler */
public Handler myHandler = new Handler();
/** BlueTooth Tether */
public BluetoothTether bluetoothTether = null;
/** Broadcast Receiver */
public BroadcastReceiver mReceiver = null;
/** TCP */ /** TCP */
protected TCPhandler tcp = null; protected TCPhandler tcp = null;
@ -43,9 +66,9 @@ public abstract class AbstractSDParentActivity extends TabActivity {
public Object getTCPState() { public Object getTCPState() {
// return true if tcp connection is on, false if not connected and null // return true if tcp connection is on, false if not connected and null
if (tcp != null && tcp.isConnectionUP) if(tcp!=null && tcp.isConnectionUP)
return "true"; return "true";
else if (tcp != null) else if(tcp!=null && !tcp.isConnectionUP)
return "false"; return "false";
return null; return null;
} }
@ -61,16 +84,17 @@ public abstract class AbstractSDParentActivity extends TabActivity {
public abstract void updateDemoPosition(); public abstract void updateDemoPosition();
public abstract void updateResultsPollInUi(String type); public abstract void updateResultsPollInUi(String type);
public abstract double best_zoom(double latMax,double latMin,double lngMax,double lngMin); public abstract double best_zoom(double LATMAX,double LATmin,double LNGMAX,double LNGmin);
/* SafeDispatch Mobile functions */ /* SafeDispatch Mobile functions */
/** get Vehicles for an user id */ /** get Vehicles for an user id */
public boolean getVehicles(int userID) { public boolean getVehicles(int userID)
if (tcp == null) {
if(tcp == null)
return false; return false;
boolean res = tcp.Write("0.0", "#21#" + userID + "#"); boolean res = tcp.Write("0.0", "#21#" + AppParams.USERID + "#");
if (res && SHOULD_DISPLAY_LOGCAT) if(res && displayLogCat)
SM.Debug("Message (getVehs) sent to app server"); SM.Debug("Message (getVehs) sent to app server");
else else
SM.Debug("Could not send message(getVehs)!!"); SM.Debug("Could not send message(getVehs)!!");
@ -79,12 +103,13 @@ public abstract class AbstractSDParentActivity extends TabActivity {
} }
/** get vehicles Last Positions for an user id */ /** get vehicles Last Positions for an user id */
public boolean getLastPositions(int userID) { public boolean getLastPositions(int userID)
if (tcp == null) {
if(tcp == null)
return false; return false;
boolean res = tcp.Write("0.0", "#25#" + userID + "#"); boolean res = tcp.Write("0.0", "#25#" + userID + "#");
if (res && SHOULD_DISPLAY_LOGCAT) if(res && displayLogCat)
SM.Debug("Message (getLastPOS) sent to app server"); SM.Debug("Message (getLastPOS) sent to app server");
else else
SM.Debug("Could not send message(getLastSMS)!!"); SM.Debug("Could not send message(getLastSMS)!!");
@ -93,13 +118,14 @@ public abstract class AbstractSDParentActivity extends TabActivity {
} }
/** set Enable/Disable a vehicle */ /** set Enable/Disable a vehicle */
public boolean setVehicleStatus(int radioCode, int opCode, int sc_id, int enable) { public boolean setVehicleStatus(int radioCode, int opCode, int sc_id, int enable)
if (tcp == null) {
if(tcp == null)
return false; return false;
boolean res = tcp.Write("0.0", "#" + radioCode + "#" + opCode + "#" + sc_id + "#" + enable + "#"); boolean res = tcp.Write("0.0", "#"+radioCode+"#"+opCode+"#" + sc_id+"#" + enable + "#");
if (res && SHOULD_DISPLAY_LOGCAT) if(res && displayLogCat)
SM.Debug("Message (Option4Unit) sent to app server radioCode:" + radioCode + " opCode:" + opCode + " sc_id:" + sc_id + " value:" + enable); SM.Debug("Message (Option4Unit) sent to app server radioCode:"+radioCode+ " opCode:"+opCode+ " sc_id:"+sc_id+ " value:" + enable);
else else
SM.Debug("Could not send message(Option4Unit)!!"); SM.Debug("Could not send message(Option4Unit)!!");
@ -107,12 +133,13 @@ public abstract class AbstractSDParentActivity extends TabActivity {
} }
/** get Last SMSs for an user */ /** get Last SMSs for an user */
public boolean getLastSMSs(int userID) { public boolean getLastSMSs(int userID)
if (tcp == null) {
if(tcp == null)
return false; return false;
boolean res = tcp.Write("0.0", "#23#" + userID + "#"); boolean res = tcp.Write("0.0", "#23#" + userID + "#");
if (res && SHOULD_DISPLAY_LOGCAT) if(res && displayLogCat)
SM.Debug("#Send Request#", "Message [getLastSMSs] sent to app server"); SM.Debug("#Send Request#", "Message [getLastSMSs] sent to app server");
else else
SM.Debug("#Send Request#", "Could not send message [getLastSMSs]!!"); SM.Debug("#Send Request#", "Could not send message [getLastSMSs]!!");
@ -123,12 +150,13 @@ public abstract class AbstractSDParentActivity extends TabActivity {
/** get SMSs for an user that are recent than timeGMT /** get SMSs for an user that are recent than timeGMT
* @param sc_id the vehicle imei for which we want the SMSs * @param sc_id the vehicle imei for which we want the SMSs
* @param timeGMT the unix time for the last message in the grid or messages that are newer than this time */ * @param timeGMT the unix time for the last message in the grid or messages that are newer than this time */
public boolean getRecentSMSs(int sc_id, long timeGMT) { public boolean getRecentSMSs(int sc_id, long timeGMT)
if (tcp == null) {
if(tcp == null)
return false; return false;
boolean res = tcp.Write("0.0", "#22#" + sc_id + "#" + timeGMT + "#"); boolean res = tcp.Write("0.0", "#22#"+sc_id+"#" +timeGMT+"#");
if (res && SHOULD_DISPLAY_LOGCAT) if(res && displayLogCat)
SM.Debug("#Send Request#", "Message [getRecentSMSs] sent to app server"); SM.Debug("#Send Request#", "Message [getRecentSMSs] sent to app server");
else else
SM.Debug("#Send Request#", "Could not send message [getRecentSMSs]!!"); SM.Debug("#Send Request#", "Could not send message [getRecentSMSs]!!");
@ -146,7 +174,7 @@ public abstract class AbstractSDParentActivity extends TabActivity {
return false; return false;
boolean res = tcp.Write(seqID, "#24#" + AppParams.USERID + "#" + sc_id + "#" + txt + "#"); boolean res = tcp.Write(seqID, "#24#" + AppParams.USERID + "#" + sc_id + "#" + txt + "#");
if(res && SHOULD_DISPLAY_LOGCAT) if(res && displayLogCat)
SM.Debug("Message [sendSMS] sent to app server sc_id:"+sc_id+ " txt:"+txt); SM.Debug("Message [sendSMS] sent to app server sc_id:"+sc_id+ " txt:"+txt);
else else
SM.Debug("Could not send message [sendSMS]!!"); SM.Debug("Could not send message [sendSMS]!!");
@ -155,16 +183,16 @@ public abstract class AbstractSDParentActivity extends TabActivity {
} }
public boolean sendAlarmAcknowledge(int alarm_id, int type) public boolean sendAlarmAcknoledge(int alarm_id, int type)
{ {
if(tcp == null) if(tcp == null)
return false; return false;
boolean res = tcp.Write("0.0", "#28#" + alarm_id + "#" + type + "#"); boolean res = tcp.Write("0.0", "#28#" + alarm_id + "#" + type + "#");
if(res) if(res)
SM.Debug("Message [sendAlarmAcknowledge] sent to app server alarm_id:" + alarm_id + " type:" + type); SM.Debug("Message [sendAlarmAcknoledge] sent to app server alarm_id:" + alarm_id + " type:" + type);
else else
SM.Debug("Could not send message [sendAlarmAcknowledge]!!"); SM.Debug("Could not send message [sendAlarmAcknoledge]!!");
return res; return res;
} }
@ -262,7 +290,7 @@ public abstract class AbstractSDParentActivity extends TabActivity {
if(tcp == null) if(tcp == null)
return false; return false;
boolean res = tcp.Write("0.0", "#27#" + userID + "#"); boolean res = tcp.Write("0.0", "#27#" + userID + "#"); // = tcp.Write("0.0", "#30#99#" + gwID + "#" + rgwID + "#");
if(res) if(res)
SM.Debug("Message [GetAlarms] sent to app server"); SM.Debug("Message [GetAlarms] sent to app server");
else else
@ -286,44 +314,10 @@ public abstract class AbstractSDParentActivity extends TabActivity {
return res; return res;
} }
public String getImei() { //public abstract void getVehiclePosition(long imei);
return imei; /*
} public abstract void onResume();
public abstract void onStart();
public void setImei(String imei) { public abstract void onPause();
this.imei = imei; */
}
public String getMess() {
return mess;
}
public void setMess(String mess) {
this.mess = mess;
}
/** Lists */
public ArrayList<Vehicle> getAllVehicle() {
return allVehicle;
}
public void setAllVehicle(ArrayList<Vehicle> allVehicle) {
this.allVehicle = allVehicle;
}
public Hashtable<Long, SuperVehicle> getSuperVehHash() {
return superVehHash;
}
public void setSuperVehHash(Hashtable<Long, SuperVehicle> superVehHash) {
this.superVehHash = superVehHash;
}
public Hashtable<Long, Vehicle> getVehHashByScId() {
return vehHashByScId;
}
public void setVehHashByScId(Hashtable<Long, Vehicle> vehHashByScId) {
this.vehHashByScId = vehHashByScId;
}
} }

View File

@ -167,11 +167,11 @@ public class AlarmActivity extends Activity {
{ {
acknowledged.add((alarm.ack == 1)? true: false); acknowledged.add((alarm.ack == 1)? true: false);
SM.Debug("ALARM", "SC_ID> " + alarm.sc_id + " | " SM.Debug("ALARM", "SC_ID> " + alarm.sc_id + " | "
+ (parentTab.getVehHashByScId().get(alarm.sc_id) == null ? "null" : parentTab.getVehHashByScId().get(alarm.sc_id).name )); + (parentTab.VehHashbySc_id.get(alarm.sc_id) == null ? "null" : parentTab.VehHashbySc_id.get(alarm.sc_id).name ));
if (parentTab.getVehHashByScId().get(alarm.sc_id)!=null) if (parentTab.VehHashbySc_id.get(alarm.sc_id)!=null)
alarm.unitName = parentTab.getVehHashByScId().get(alarm.sc_id).name; alarm.unitName = parentTab.VehHashbySc_id.get(alarm.sc_id).name;
@ -254,6 +254,6 @@ public class AlarmActivity extends Activity {
private void setACK(int idx, int type) private void setACK(int idx, int type)
{ {
parentTab.executeNetworkStuff(new String[]{OperationCodes.SendAlarmAcknoledge +"", idx + "", type + ""}); parentTab.executeNetworkStuff(new String[]{OperationCodes.SendAlarmAcknoledge +"", idx + "", type + ""});
//parentTab.sendAlarmAcknowledge(idx, type); //parentTab.sendAlarmAcknoledge(idx, type);
} }
} }

View File

@ -175,12 +175,12 @@ public class LiveActivity extends AbstractLiveActivity implements OnMapReadyCall
if (AppParams.DEMO) { if (AppParams.DEMO) {
disabledVehicles = new ArrayList<>(); disabledVehicles = new ArrayList<>();
for (Vehicle veh : getParentTab().getAllVehicle()) for (Vehicle veh : getParentTab().allVehicle)
disabledVehicles.add(!veh.status); disabledVehicles.add(!veh.status);
} }
adapter = new VehiclesGridViewAdapter(activity, context, getParentTab().getAllVehicle(), disabledVehicles); adapter = new VehiclesGridViewAdapter(activity, context, getParentTab().allVehicle, disabledVehicles);
adapter.notifyDataSetChanged(); adapter.notifyDataSetChanged();
gridVehicle.setAdapter(adapter); gridVehicle.setAdapter(adapter);
@ -231,9 +231,9 @@ public class LiveActivity extends AbstractLiveActivity implements OnMapReadyCall
else else
viewLive.imgViewChecked.setImageResource(R.drawable.unchecked); viewLive.imgViewChecked.setImageResource(R.drawable.unchecked);
Enumeration<Long> keyList = getParentTab().getSuperVehHash().keys(); Enumeration<Long> keyList = getParentTab().SuperVehHash.keys();
while (keyList.hasMoreElements()) { while (keyList.hasMoreElements()) {
(Objects.requireNonNull(getParentTab().getSuperVehHash().get(keyList.nextElement()))).needUpdate = true; (Objects.requireNonNull(getParentTab().SuperVehHash.get(keyList.nextElement()))).needUpdate = true;
} }
// change button title // change button title
@ -267,9 +267,9 @@ public class LiveActivity extends AbstractLiveActivity implements OnMapReadyCall
for (int i = 0; i < displayedVehicles.size(); i++) for (int i = 0; i < displayedVehicles.size(); i++)
displayedVehicles.set(i, true); displayedVehicles.set(i, true);
Enumeration<Long> keyList = getParentTab().getSuperVehHash().keys(); Enumeration<Long> keyList = getParentTab().SuperVehHash.keys();
while (keyList.hasMoreElements()) while (keyList.hasMoreElements())
(Objects.requireNonNull(getParentTab().getSuperVehHash().get(keyList.nextElement()))).needUpdate = true; (Objects.requireNonNull(getParentTab().SuperVehHash.get(keyList.nextElement()))).needUpdate = true;
// change button title // change button title
if (displayButton.getText().toString().equals(getString(R.string.displayAll))) { if (displayButton.getText().toString().equals(getString(R.string.displayAll))) {
@ -307,7 +307,7 @@ public class LiveActivity extends AbstractLiveActivity implements OnMapReadyCall
@Override @Override
public void onMapReady(@NonNull GoogleMap googleMap) { public void onMapReady(@NonNull GoogleMap googleMap) {
this.googleMap = googleMap; this.googleMap = googleMap;
GoogleMapsInfoBubble infoBubble = new GoogleMapsInfoBubble(getLayoutInflater(), this, getParentTab().getSuperVehHash()); GoogleMapsInfoBubble infoBubble = new GoogleMapsInfoBubble(getLayoutInflater(), this, getParentTab().SuperVehHash);
this.googleMap.setInfoWindowAdapter(infoBubble); this.googleMap.setInfoWindowAdapter(infoBubble);
} }
@ -426,7 +426,7 @@ public class LiveActivity extends AbstractLiveActivity implements OnMapReadyCall
// send change to AppServer // send change to AppServer
optionForUnit(radioCode, MENU_POLL, liveVehicle.get(contextMenuPosition).id + ""); optionForUnit(radioCode, MENU_POLL, liveVehicle.get(contextMenuPosition).id + "");
if (AppParams.DEMO) { if (AppParams.DEMO) {
getParentTab().setImei(liveVehicle.get(contextMenuPosition).sc_id + ""); getParentTab().imei = liveVehicle.get(contextMenuPosition).sc_id + "";
getParentTab().updateDemoPosition(); getParentTab().updateDemoPosition();
getParentTab().updateResultsPollInUi("realpha"); getParentTab().updateResultsPollInUi("realpha");
} }
@ -452,7 +452,7 @@ public class LiveActivity extends AbstractLiveActivity implements OnMapReadyCall
for (int i = 0; i < displayedVehicles.size(); i++) { for (int i = 0; i < displayedVehicles.size(); i++) {
if (displayedVehicles.get(i)) { if (displayedVehicles.get(i)) {
SuperVehicle tmpSuper = getParentTab().getSuperVehHash().get(Long.valueOf(liveVehicle.get(i).imei)); SuperVehicle tmpSuper = getParentTab().SuperVehHash.get(Long.valueOf(liveVehicle.get(i).imei));
if (tmpSuper != null) { if (tmpSuper != null) {
LatLng newLocation = new LatLng(tmpSuper.lat, tmpSuper.lng); LatLng newLocation = new LatLng(tmpSuper.lat, tmpSuper.lng);

View File

@ -273,7 +273,7 @@ public class MessagesActivity extends Activity {
// Create runnable for posting // Create runnable for posting
final Runnable demoReceveidSMSRUN = new Runnable() { final Runnable demoReceveidSMSRUN = new Runnable() {
public void run() { public void run() {
parentTab.setImei(sc_id + ""); parentTab.imei = sc_id + "";
parentTab.updateResultsInUi("realpha"); parentTab.updateResultsInUi("realpha");
int timeGMT = (int) (System.currentTimeMillis() / 1000L); int timeGMT = (int) (System.currentTimeMillis() / 1000L);
@ -354,7 +354,7 @@ public class MessagesActivity extends Activity {
if(parentTab.getTCPState() != null){ if(parentTab.getTCPState() != null){
if(FIRST) if(FIRST)
{ {
UpdateVehs(parentTab.getAllVehicle()); UpdateVehs(parentTab.allVehicle);
FIRST = false; FIRST = false;
if(LASTMESSAGES) if(LASTMESSAGES)
parentTab.executeNetworkStuff(new String[] {OperationCodes.GetLastSMS + "", AppParams.USERID + ""}); parentTab.executeNetworkStuff(new String[] {OperationCodes.GetLastSMS + "", AppParams.USERID + ""});
@ -704,7 +704,7 @@ public class MessagesActivity extends Activity {
private void updateResultsInUi() private void updateResultsInUi()
{ {
if(allVehicle == null) if(allVehicle == null)
UpdateVehs(parentTab.getAllVehicle()); UpdateVehs(parentTab.allVehicle);
//SM.Debug("updateResultsInUi: " + ACTION); //SM.Debug("updateResultsInUi: " + ACTION);
if(ACTION == MSGUpdate) if(ACTION == MSGUpdate)

View File

@ -280,9 +280,9 @@ public class RadioActivity extends Activity {
{ {
super.onResume(); super.onResume();
// get all vehicles from TabLayoutActivity // get all vehicles from TabLayoutActivity
if(!allVehicle.equals(parentTab.getAllVehicle())) if(!allVehicle.equals(parentTab.allVehicle))
{ {
allVehicle = parentTab.getAllVehicle(); allVehicle = parentTab.allVehicle;
UpdateVehicle(); UpdateVehicle();
} }
/* /*
@ -908,7 +908,7 @@ public class RadioActivity extends Activity {
radioAll.setChecked(false); radioAll.setChecked(false);
radioGroup.setChecked(false); radioGroup.setChecked(false);
selectedCallType = PRIVATECall; selectedCallType = PRIVATECall;
textViewCallType.setText(parentTab.getSuperVehHash().get((long)imei).name); textViewCallType.setText(parentTab.SuperVehHash.get((long)imei).name);
layoutSpinnerCallType.setVisibility(View.VISIBLE); layoutSpinnerCallType.setVisibility(View.VISIBLE);
} }
else if (calltype==103) else if (calltype==103)
@ -936,8 +936,8 @@ public class RadioActivity extends Activity {
} }
if (callstatus==1) if (callstatus==1)
{ {
if (parentTab.getSuperVehHash().get((long)imei)!=null) if (parentTab.SuperVehHash.get((long)imei)!=null)
textViewMessageStatus.setText(parentTab.getSuperVehHash().get((long)imei).name); textViewMessageStatus.setText(parentTab.SuperVehHash.get((long)imei).name);
else else
textViewMessageStatus.setText("Imei: "+Long.toString(imei)); textViewMessageStatus.setText("Imei: "+Long.toString(imei));
} }

View File

@ -199,16 +199,16 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
if(AppParams.DEMO) if(AppParams.DEMO)
{ {
getAllVehicle().add(new Vehicle(101, "101", 101, "101", 101, 101, 101, 0)); allVehicle.add(new Vehicle(101, "101", 101, "101", 101, 101, 101, 0));
getAllVehicle().add(new Vehicle(102, "102", 102, "102", 102, 102, 102, 0)); allVehicle.add(new Vehicle(102, "102", 102, "102", 102, 102, 102, 0));
getAllVehicle().add(new Vehicle(103, "103", 103, "Ambulance", 78, 103, 103, 0)); allVehicle.add(new Vehicle(103, "103", 103, "Ambulance", 78, 103, 103, 0));
getAllVehicle().add(new Vehicle(104, "104", 104, "104", 104, 104, 104, 0)); allVehicle.add(new Vehicle(104, "104", 104, "104", 104, 104, 104, 0));
getAllVehicle().add(new Vehicle(105, "105", 105, "Police", 105, 105, 105, 0)); allVehicle.add(new Vehicle(105, "105", 105, "Police", 105, 105, 105, 0));
getAllVehicle().add(new Vehicle(106, "106", 106, "Mike", 106, 106, 106, 0)); allVehicle.add(new Vehicle(106, "106", 106, "Mike", 106, 106, 106, 0));
getAllVehicle().add(new Vehicle(107, "107", 107, "Rob", 107, 107, 107, 0)); allVehicle.add(new Vehicle(107, "107", 107, "Rob", 107, 107, 107, 0));
getAllVehicle().add(new Vehicle(108, "108", 108, "Ben", 108, 108, 108, 0)); allVehicle.add(new Vehicle(108, "108", 108, "Ben", 108, 108, 108, 0));
getAllVehicle().add(new Vehicle(109, "109", 109, "Taxi_3", 109, 109, 109, 0)); allVehicle.add(new Vehicle(109, "109", 109, "Taxi_3", 109, 109, 109, 0));
getAllVehicle().add(new Vehicle(110, "110", 110, "Pam", 110, 110, 110, 0)); allVehicle.add(new Vehicle(110, "110", 110, "Pam", 110, 110, 110, 0));
listSMS = new ArrayList<SMS>(); listSMS = new ArrayList<SMS>();
@ -218,7 +218,7 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
listSMS.add(new SMS(3, 1, 1328060100, "i'm at the train station", 0, 102)); listSMS.add(new SMS(3, 1, 1328060100, "i'm at the train station", 0, 102));
listSMS.add(new SMS(4, 1, 1121016818, "I'll be right there", 0, 103)); listSMS.add(new SMS(4, 1, 1121016818, "I'll be right there", 0, 103));
for(Vehicle veh: getAllVehicle()) for(Vehicle veh:allVehicle)
{ {
SuperVehicle tmpSuper = new SuperVehicle(veh.sc_id,veh.imei,veh.lp, veh.name, veh.driver_id, veh.time_route, veh.GPS_reporting_interval, veh.is_stolen); SuperVehicle tmpSuper = new SuperVehicle(veh.sc_id,veh.imei,veh.lp, veh.name, veh.driver_id, veh.time_route, veh.GPS_reporting_interval, veh.is_stolen);
if (veh.sc_id == 101) if (veh.sc_id == 101)
@ -242,8 +242,8 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
else if (veh.sc_id == 110) else if (veh.sc_id == 110)
tmpSuper.SetDataFromLastPos(41.748391,-87.933497, Calendar.getInstance().getTimeInMillis(), 47, "Historic U.S. 66, Burr Ridge, IL 60527 , USA", true); tmpSuper.SetDataFromLastPos(41.748391,-87.933497, Calendar.getInstance().getTimeInMillis(), 47, "Historic U.S. 66, Burr Ridge, IL 60527 , USA", true);
getSuperVehHash().put(Long.valueOf(veh.imei), tmpSuper); SuperVehHash.put(Long.valueOf(veh.imei), tmpSuper);
getVehHashByScId().put(veh.sc_id, veh); VehHashbySc_id.put(veh.sc_id, veh);
} }
} }
@ -253,6 +253,7 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
// do not dim the display // do not dim the display
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
// get NewMessage Visual Element // get NewMessage Visual Element
layoutNewMessage = (RelativeLayout) findViewById(R.id.layoutNewMessage); layoutNewMessage = (RelativeLayout) findViewById(R.id.layoutNewMessage);
textViewNMMessage = (TextView) findViewById(R.id.textViewNMMessage); textViewNMMessage = (TextView) findViewById(R.id.textViewNMMessage);
@ -405,24 +406,10 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
tabHost.setCurrentTabByTag("Text"); tabHost.setCurrentTabByTag("Text");
AppParams.crtTab = AppParams.Tabs.message; AppParams.crtTab = AppParams.Tabs.message;
if (AppParams.DEMO && messageActivity.allVehicle.size()== 0) { if(AppParams.DEMO && messageActivity.allVehicle.size()== 0)
// select button {
buttonText.setSelected(true); messageActivity.UpdateVehs(allVehicle);
// deselect other buttons messageActivity.UpdateSMS(listSMS);
buttonAlarms.setSelected(false);
buttonLive.setSelected(false);
buttonRadio.setSelected(false);
buttonRecordings.setSelected(false);
buttonSetup.setSelected(false);
buttonHistory.setSelected(false);
// select tab
tabHost.setCurrentTabByTag("Text");
AppParams.crtTab = AppParams.Tabs.message;
if (AppParams.DEMO && messageActivity.allVehicle.size()== 0) {
messageActivity.UpdateVehs(getAllVehicle());
messageActivity.UpdateSMS(listSMS);
}
} }
} }
}); });
@ -451,7 +438,7 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
if(radioActivity!= null && radioActivity.allVehicle!= null && radioActivity.allVehicle.size()==0) if(radioActivity!= null && radioActivity.allVehicle!= null && radioActivity.allVehicle.size()==0)
{ {
radioActivity.allVehicle = getAllVehicle(); radioActivity.allVehicle = allVehicle;
radioActivity.UpdateVehicle(); radioActivity.UpdateVehicle();
} }
} }
@ -746,7 +733,7 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
if(AppParams.DEMO && liveActivity != null) if(AppParams.DEMO && liveActivity != null)
{ {
liveActivity.vehiclesReceived(getAllVehicle()); liveActivity.vehiclesReceived(allVehicle);
demoPositionsList(); demoPositionsList();
} }
@ -821,7 +808,7 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
tabHost.setCurrentTabByTag("Text"); tabHost.setCurrentTabByTag("Text");
AppParams.crtTab = AppParams.Tabs.message; AppParams.crtTab = AppParams.Tabs.message;
messageActivity.sc_id = getVehicle4Imei(getImei()).sc_id; messageActivity.sc_id = getVehicle4Imei(imei).sc_id;
messageActivity.LASTMESSAGES = false; messageActivity.LASTMESSAGES = false;
messageActivity.GetLastSMS(); messageActivity.GetLastSMS();
@ -1050,14 +1037,14 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
public void run() { public void run() {
if(AppParams.crtTab == AppParams.Tabs.live) if(AppParams.crtTab == AppParams.Tabs.live)
{ {
if(getSuperVehHash().containsKey((long)101)) if(SuperVehHash.containsKey((long)101))
{ {
HistPos crtPos = demoPositions.get(demoPosition++ % demoPositions.size()); HistPos crtPos = demoPositions.get(demoPosition++ % demoPositions.size());
SM.Debug("########### UPDATE"); SM.Debug("########### UPDATE");
int sc_id = demoPosition%3 == 0 ? 101:102; int sc_id = demoPosition%3 == 0 ? 101:102;
((SuperVehicle) getSuperVehHash().get((long)sc_id)).SetNewPosition(crtPos.lat, crtPos.lng, Calendar.getInstance().getTime().getTime(), crtPos.speed); ((SuperVehicle)SuperVehHash.get((long)sc_id)).SetNewPosition(crtPos.lat, crtPos.lng, Calendar.getInstance().getTime().getTime(), crtPos.speed);
liveActivity.refreshMap(); liveActivity.refreshMap();
} }
} }
@ -1070,9 +1057,9 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
HistPos crtPos = demoPositions.get(demoPosition++ % demoPositions.size()); HistPos crtPos = demoPositions.get(demoPosition++ % demoPositions.size());
SM.Debug("########### UPDATE"); SM.Debug("########### UPDATE");
int sc_id = Integer.parseInt(getImei()); int sc_id = Integer.parseInt(imei);
((SuperVehicle) getSuperVehHash().get((long)sc_id)).SetNewPosition(crtPos.lat + 0.0002, crtPos.lng + 0.0002, Calendar.getInstance().getTime().getTime(), crtPos.speed+2); ((SuperVehicle)SuperVehHash.get((long)sc_id)).SetNewPosition(crtPos.lat + 0.0002, crtPos.lng + 0.0002, Calendar.getInstance().getTime().getTime(), crtPos.speed+2);
setMess("Lat:" + String.format("%5f", crtPos.lat + 0.0002) + ", Lng:" + String.format("%5f", crtPos.lng + 0.0002)); mess = "Lat:" + String.format("%5f", crtPos.lat + 0.0002) + ", Lng:" + String.format("%5f", crtPos.lng + 0.0002);
liveActivity.refreshMap(); liveActivity.refreshMap();
} }
@ -1138,7 +1125,7 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
// when connection becomes true after it was false // when connection becomes true after it was false
if(getAllVehicle().size() == 0) if(allVehicle.size() == 0)
//connectTask.doIn(OperationCodes.GetVehicles, new Object[] {AppParams.USERID}); //connectTask.doIn(OperationCodes.GetVehicles, new Object[] {AppParams.USERID});
new ConnectTask().execute(new String[] {OperationCodes.GetVehicles + "", AppParams.USERID + ""}); new ConnectTask().execute(new String[] {OperationCodes.GetVehicles + "", AppParams.USERID + ""});
//getVehicles(AppParams.USERID); //getVehicles(AppParams.USERID);
@ -1232,22 +1219,19 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
GPSmsg GPSPos= new GPSmsg(msg); GPSmsg GPSPos= new GPSmsg(msg);
//SM.Debug("Got new GPS pos data:" + GPSPos.data); //SM.Debug("Got new GPS pos data:" + GPSPos.data);
if (getSuperVehHash().get(GPSPos.gpsValue.imei) != null) { if (SuperVehHash.get(GPSPos.gpsValue.imei) != null) {
getSuperVehHash().get(GPSPos.gpsValue.imei).SetNewPosition(GPSPos.gpsValue.lat, GPSPos.gpsValue.lng, GPSPos.gpsValue.timeGMT, GPSPos.gpsValue.speed); ((SuperVehicle)SuperVehHash.get(GPSPos.gpsValue.imei)).SetNewPosition(GPSPos.gpsValue.lat, GPSPos.gpsValue.lng, GPSPos.gpsValue.timeGMT, GPSPos.gpsValue.speed);
// if (SuperVehHash.get(GPSPos.gpsValue.imei).needUpdate) {
if (getSuperVehHash().get(GPSPos.gpsValue.imei).needUpdate) { if (AppParams.crtTab == AppParams.Tabs.live) {
//list for live SM.Debug("currentActivity instanceof LiveActivity");
if (AppParams.crtTab == AppParams.Tabs.live) { try {
//SM.Debug("+++++ duda +++++"); if (liveActivity != null)
SM.Debug("currentActivity instanceof LiveActivity"); liveActivity.refreshMap();
try { } catch (Exception ex) {
if(liveActivity != null) SM.Debug("Error load hash: "+ ex);
liveActivity.refreshMap();
} catch (Exception ex) {
SM.Debug("Error load hash:"+ex.toString());
}
} }
} }
// }
} }
} }
@ -1256,22 +1240,21 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
SM.Debug("Got POLL GPS message"); SM.Debug("Got POLL GPS message");
TCPmsg msg= event.msg(); TCPmsg msg= event.msg();
GPSmsg GPSPos= new GPSmsg(msg); GPSmsg GPSPos= new GPSmsg(msg);
setImei(Long.toString(GPSPos.gpsValue.imei)); imei = Long.toString(GPSPos.gpsValue.imei);
setMess("LAT:"+Double.toString(GPSPos.gpsValue.lat)+" LNG:"+Double.toString(GPSPos.gpsValue.lng)); mess = "LAT:"+Double.toString(GPSPos.gpsValue.lat)+" LNG:"+Double.toString(GPSPos.gpsValue.lng);
SM.Debug("Got new Poll pos data:" + GPSPos.data); SM.Debug("Got new Poll pos data:" + GPSPos.data);
if (SuperVehHash.get(GPSPos.gpsValue.imei) != null) {
if(getSuperVehHash().get(GPSPos.gpsValue.imei) != null) { ((SuperVehicle)SuperVehHash.get(GPSPos.gpsValue.imei)).SetNewPosition(GPSPos.gpsValue.lat, GPSPos.gpsValue.lng, GPSPos.gpsValue.timeGMT, GPSPos.gpsValue.speed);
((SuperVehicle) getSuperVehHash().get(GPSPos.gpsValue.imei)).SetNewPosition(GPSPos.gpsValue.lat, GPSPos.gpsValue.lng, GPSPos.gpsValue.timeGMT, GPSPos.gpsValue.speed);
//if is not check i need to force check to put on the map //if is not check i need to force check to put on the map
Boolean forceChecked =false; Boolean forceChecked =false;
if (!getSuperVehHash().get(GPSPos.gpsValue.imei).needUpdate) { if (!SuperVehHash.get(GPSPos.gpsValue.imei).needUpdate) {
getSuperVehHash().get(GPSPos.gpsValue.imei).needUpdate =true; SuperVehHash.get(GPSPos.gpsValue.imei).needUpdate =true;
forceChecked =true; forceChecked =true;
} }
//back to standard procedures to put on the map //back to standard procedures to put on the map
if(getSuperVehHash().get(GPSPos.gpsValue.imei).needUpdate) if(SuperVehHash.get(GPSPos.gpsValue.imei).needUpdate)
{ {
//list for live //list for live
@ -1284,7 +1267,7 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
int x = 0; int x = 0;
if (forceChecked) if (forceChecked)
{ {
for (Vehicle veh : getAllVehicle()) for (Vehicle veh : allVehicle)
{ {
if (veh.imei.compareTo(Long.toString(GPSPos.gpsValue.imei))==0) break; if (veh.imei.compareTo(Long.toString(GPSPos.gpsValue.imei))==0) break;
x++; x++;
@ -1293,7 +1276,7 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
else x = -1; else x = -1;
if(liveActivity!=null) if(liveActivity!=null)
{ {
if (x!= getAllVehicle().size()) if (x!=allVehicle.size())
liveActivity.pollReceived(x ,GPSPos.gpsValue.lat,GPSPos.gpsValue.lng); liveActivity.pollReceived(x ,GPSPos.gpsValue.lat,GPSPos.gpsValue.lng);
else else
liveActivity.pollReceived(-1 ,GPSPos.gpsValue.lat,GPSPos.gpsValue.lng); liveActivity.pollReceived(-1 ,GPSPos.gpsValue.lat,GPSPos.gpsValue.lng);
@ -1346,10 +1329,10 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
for(Vehicle veh:vMSG.vehList) for(Vehicle veh:vMSG.vehList)
{ {
SuperVehicle tmpSuper = new SuperVehicle(veh.sc_id,veh.imei,veh.lp, veh.name, veh.driver_id, veh.time_route, veh.GPS_reporting_interval, veh.is_stolen); SuperVehicle tmpSuper = new SuperVehicle(veh.sc_id,veh.imei,veh.lp, veh.name, veh.driver_id, veh.time_route, veh.GPS_reporting_interval, veh.is_stolen);
getSuperVehHash().put(Long.valueOf(veh.imei), tmpSuper); SuperVehHash.put(Long.valueOf(veh.imei), tmpSuper);
getVehHashByScId().put(veh.sc_id, veh); VehHashbySc_id.put(veh.sc_id, veh);
} }
SM.Debug(" #$############# " + getSuperVehHash().size() + " \nVEH " + vMSG.vehList.size()); SM.Debug(" #$############# " + SuperVehHash.size() + " \nVEH " + vMSG.vehList.size());
} }
catch (Exception ex) catch (Exception ex)
{ {
@ -1372,7 +1355,7 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
if(messageActivity != null) if(messageActivity != null)
messageActivity.UpdateVehs(vMSG.vehList); messageActivity.UpdateVehs(vMSG.vehList);
} }
setAllVehicle(vMSG.vehList); allVehicle = vMSG.vehList;
} }
public void onLastSMSsReceived(TCPEvent event) { public void onLastSMSsReceived(TCPEvent event) {
@ -1445,8 +1428,8 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
SM.Debug("Message:" + tempArr[1]); SM.Debug("Message:" + tempArr[1]);
// change Visual Elements // change Visual Elements
setImei(tempArr[0]); imei = tempArr[0];
setMess(tempArr[1]); mess = tempArr[1];
long time = Calendar.getInstance().getTimeInMillis() / 1000; long time = Calendar.getInstance().getTimeInMillis() / 1000;
try { try {
// get time from the last received sms and divide it to 1000 to convert it to seconds // get time from the last received sms and divide it to 1000 to convert it to seconds
@ -1505,10 +1488,9 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
SM.Debug("Got last pos"); SM.Debug("Got last pos");
LastPosmsg lastPos= new LastPosmsg(msg); LastPosmsg lastPos= new LastPosmsg(msg);
//SM.Debug("Got LastPost msg.data:" + msg.data); for (LastPos posMsg: lastPos.PosList) {
for(LastPos posMsg: lastPos.PosList) { if (SuperVehHash.get(posMsg.imei) != null)
if(getSuperVehHash().get(posMsg.imei) != null) ((SuperVehicle) SuperVehHash.get(posMsg.imei)).SetDataFromLastPos(posMsg.lat, posMsg.lng, posMsg.timeGMT, posMsg.speed, posMsg.Address, posMsg.isON);
getSuperVehHash().get(posMsg.imei).SetDataFromLastPos(posMsg.lat, posMsg.lng, posMsg.timeGMT, posMsg.speed, posMsg.Address, posMsg.isON);
} }
} }
@ -1865,33 +1847,33 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
if(tabHost.getCurrentTab() != 5) if(tabHost.getCurrentTab() != 5)
{ {
// change Visual Elements // change Visual Elements
setImei(UnitIMEI); imei = UnitIMEI;
switch (msg.opCode) switch (msg.opCode)
{ {
case 135: setMess("speed "+tempArr[1]); case 135: mess = "speed "+tempArr[1];
break; break;
case 136: setMess("landmark "+tempArr[1]); case 136: mess = "landmark "+tempArr[1];
break; break;
case 137: setMess("zone "+tempArr[1]); case 137: mess = "zone "+tempArr[1];
break; break;
case 138: setMess("emergency"); case 138: mess = "emergency";
break; break;
case 140: setMess("telemetry "+ tempArr[1]); case 140: mess = "telemetry "+ tempArr[1];
break; break;
default: default:
setMess("emergency"); mess = "emergency";
} }
myHandler.post(UpdateResultsAlarm); myHandler.post(UpdateResultsAlarm);
if ((msg.opCode==138)&&(AppParams.crtTab == AppParams.Tabs.live)) if ((msg.opCode==138)&&(AppParams.crtTab == AppParams.Tabs.live))
{ {
if(getSuperVehHash().get(Long.parseLong(UnitIMEI)) != null) if(SuperVehHash.get(Long.parseLong(UnitIMEI)) != null)
{ {
//if is not check i need to force check to put on the map //if is not check i need to force check to put on the map
Boolean forceChecked =false; Boolean forceChecked =false;
if (!getSuperVehHash().get(Long.parseLong(UnitIMEI)).needUpdate) if (!SuperVehHash.get(Long.parseLong(UnitIMEI)).needUpdate)
{ {
getSuperVehHash().get(Long.parseLong(UnitIMEI)).needUpdate =true; SuperVehHash.get(Long.parseLong(UnitIMEI)).needUpdate =true;
forceChecked =true; forceChecked =true;
} }
try try
@ -1899,7 +1881,7 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
int x = 0; int x = 0;
if (forceChecked) if (forceChecked)
{ {
for (Vehicle veh : getAllVehicle()) for (Vehicle veh : allVehicle)
{ {
if (veh.imei.compareTo(UnitIMEI)==0) break; if (veh.imei.compareTo(UnitIMEI)==0) break;
x++; x++;
@ -1908,10 +1890,10 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
else x = -1; else x = -1;
if(liveActivity != null) if(liveActivity != null)
{ {
if (x!= getAllVehicle().size()) if (x!=allVehicle.size())
liveActivity.emergencyAlarmReceived(x , getSuperVehHash().get(Long.parseLong(UnitIMEI)).lat, getSuperVehHash().get(Long.parseLong(UnitIMEI)).lng); liveActivity.emergencyAlarmReceived(x ,SuperVehHash.get(Long.parseLong(UnitIMEI)).lat,SuperVehHash.get(Long.parseLong(UnitIMEI)).lng);
else else
liveActivity.emergencyAlarmReceived(-1, getSuperVehHash().get(Long.parseLong(UnitIMEI)).lat, getSuperVehHash().get(Long.parseLong(UnitIMEI)).lng); liveActivity.emergencyAlarmReceived(-1, SuperVehHash.get(Long.parseLong(UnitIMEI)).lat,SuperVehHash.get(Long.parseLong(UnitIMEI)).lng);
} }
} }
catch (Exception ex) catch (Exception ex)
@ -1938,8 +1920,8 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
if (rec.typeID==1) if (rec.typeID==1)
rec.NameForDisplay = AppParams.USERNAME; rec.NameForDisplay = AppParams.USERNAME;
else { else {
if (getSuperVehHash().get((long)rec.subID)!=null) if (SuperVehHash.get((long)rec.subID)!=null)
rec.NameForDisplay = getSuperVehHash().get((long)rec.subID).name; rec.NameForDisplay = SuperVehHash.get((long)rec.subID).name;
} }
} }
@ -2020,10 +2002,10 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
activePopupType= MsgType.ALARM; activePopupType= MsgType.ALARM;
imageViewPopUp.setImageResource(R.drawable.siren_on); imageViewPopUp.setImageResource(R.drawable.siren_on);
slideTabsText.setText(getString(R.string.newAlarm)); slideTabsText.setText(getString(R.string.newAlarm));
if (getVehicle4Imei(getImei())!=null) if (getVehicle4Imei(imei)!=null)
textViewNMFrom.setText(getString(R.string.from) + ": " + getVehicle4Imei(getImei()).name); textViewNMFrom.setText(getString(R.string.from) + ": " + getVehicle4Imei(imei).name);
else textViewNMFrom.setText(getString(R.string.from) + ": " + getImei()); else textViewNMFrom.setText(getString(R.string.from) + ": " + imei);
textViewNMMessage.setText("TYPE: " + getMess()); textViewNMMessage.setText("TYPE: " + mess);
// show layout // show layout
layoutNewMessage.setVisibility(View.VISIBLE); layoutNewMessage.setVisibility(View.VISIBLE);
@ -2060,7 +2042,7 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
// set TextViews // set TextViews
String from = ""; String from = "";
Vehicle fromVehicle = null; Vehicle fromVehicle = null;
if((fromVehicle = getVehicle4Imei(getImei())) != null) if((fromVehicle = getVehicle4Imei(imei)) != null)
from = fromVehicle.name; from = fromVehicle.name;
if(tcp!=null && !AppParams.DEMO) if(tcp!=null && !AppParams.DEMO)
@ -2069,7 +2051,7 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
imageViewPopUp.setImageResource(R.drawable.poll); imageViewPopUp.setImageResource(R.drawable.poll);
slideTabsText.setText("Poll Reply"); slideTabsText.setText("Poll Reply");
textViewNMFrom.setText("From: " + from); textViewNMFrom.setText("From: " + from);
textViewNMMessage.setText(getMess()); textViewNMMessage.setText(mess);
// show layout // show layout
layoutNewMessage.setVisibility(View.VISIBLE); layoutNewMessage.setVisibility(View.VISIBLE);
@ -2086,7 +2068,7 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
imageViewPopUp.setImageResource(R.drawable.poll); imageViewPopUp.setImageResource(R.drawable.poll);
slideTabsText.setText("Poll Reply"); slideTabsText.setText("Poll Reply");
textViewNMFrom.setText("From: " + from); textViewNMFrom.setText("From: " + from);
textViewNMMessage.setText(getMess()); textViewNMMessage.setText(mess);
// show layout // show layout
layoutNewMessage.setVisibility(View.VISIBLE); layoutNewMessage.setVisibility(View.VISIBLE);
/* /*
@ -2118,8 +2100,8 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
activePopupType = MsgType.SMS; activePopupType = MsgType.SMS;
imageViewPopUp.setImageResource(R.drawable.message); imageViewPopUp.setImageResource(R.drawable.message);
slideTabsText.setText("New Message"); slideTabsText.setText("New Message");
textViewNMFrom.setText("From: " + getVehicle4Imei(getImei()).name); textViewNMFrom.setText("From: " + getVehicle4Imei(imei).name);
textViewNMMessage.setText("MSG: " + getMess()); textViewNMMessage.setText("MSG: " + mess);
// show layout // show layout
layoutNewMessage.setVisibility(View.VISIBLE); layoutNewMessage.setVisibility(View.VISIBLE);
@ -2132,11 +2114,11 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
} }
else if(AppParams.DEMO) else if(AppParams.DEMO)
{ {
setMess("i got your sms"); mess = "i got your sms";
activePopupType = MsgType.SMS; activePopupType = MsgType.SMS;
imageViewPopUp.setImageResource(R.drawable.message); imageViewPopUp.setImageResource(R.drawable.message);
slideTabsText.setText("New Message"); slideTabsText.setText("New Message");
textViewNMFrom.setText("From: " + getVehicle4Imei(getImei()).name); textViewNMFrom.setText("From: " + getVehicle4Imei(imei).name);
textViewNMMessage.setText("MSG: " + "i got your sms"); textViewNMMessage.setText("MSG: " + "i got your sms");
// show layout // show layout
layoutNewMessage.setVisibility(View.VISIBLE); layoutNewMessage.setVisibility(View.VISIBLE);
@ -2156,31 +2138,31 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
public void createNotification(int icon) { public void createNotification(int icon) {
mNotificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE); mNotificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
String tickerText = "SafeMobile Dispatch: New Message from " + getImei(); String tickerText = "SafeMobile Dispatch: New Message from " + imei;
String contentTitle = "New Message from " + getImei(); String contentTitle = "New Message from " + imei;
String contentText = "\"" + getMess() + "\""; String contentText = "\"" + mess + "\"";
Vehicle veh = getVehicle4Imei(getImei()); Vehicle veh = getVehicle4Imei(imei);
int icon_value = icon; int icon_value = icon;
switch(icon) switch(icon)
{ {
case AppParams.messageNotif: case AppParams.messageNotif:
contentText = "\"" + getMess() + "\""; contentText = "\"" + mess + "\"";
contentTitle = "New Message from " + getImei(); contentTitle = "New Message from " + imei;
icon = R.drawable.message; icon = R.drawable.message;
break; break;
case AppParams.pollNotif: case AppParams.pollNotif:
contentText = "\"" + getMess() + "\"" ; contentText = "\"" + mess + "\"" ;
contentTitle = "Poll Reply from " + (veh !=null ? getVehicle4Imei(getImei()).name : getImei()); contentTitle = "Poll Reply from " + (veh !=null ? getVehicle4Imei(imei).name : imei);
tickerText = "SafeMobile Dispatch: Poll Reply from " + (veh !=null ? getVehicle4Imei(getImei()).name : getImei()); tickerText = "SafeMobile Dispatch: Poll Reply from " + (veh !=null ? getVehicle4Imei(imei).name : imei);
icon = R.drawable.poll; icon = R.drawable.poll;
break; break;
case AppParams.alertNotif: case AppParams.alertNotif:
String vehName = getString(R.string.from) + ": " + getImei(); String vehName = getString(R.string.from) + ": " + imei;
if(veh!=null) if(veh!=null)
vehName = getString(R.string.from) + ": " + (veh !=null ? getVehicle4Imei(getImei()).name : getImei()); vehName = getString(R.string.from) + ": " + (veh !=null ? getVehicle4Imei(imei).name : imei);
contentText ="\"" + getMess() + "\""; contentText ="\"" + mess + "\"";
contentTitle = getString(R.string.newAlarm) + vehName; contentTitle = getString(R.string.newAlarm) + vehName;
tickerText = "SafeMobile Dispatch: " + getString(R.string.newAlarm) + vehName; tickerText = "SafeMobile Dispatch: " + getString(R.string.newAlarm) + vehName;
icon = R.drawable.alert; icon = R.drawable.alert;
@ -2215,7 +2197,7 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
private Vehicle getVehicle4Imei(String imei) private Vehicle getVehicle4Imei(String imei)
{ {
Vehicle veh = null; Vehicle veh = null;
for(Vehicle vehicle: getAllVehicle()) for(Vehicle vehicle: allVehicle)
//SM.Debug("Vehicle name:"+vehicle.name+" IMEI:"+vehicle.imei); //SM.Debug("Vehicle name:"+vehicle.name+" IMEI:"+vehicle.imei);
if(vehicle.imei.equals(imei)) if(vehicle.imei.equals(imei))
veh = vehicle; veh = vehicle;
@ -2272,20 +2254,20 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
} }
@Override @Override
public double best_zoom(double latMax, double latMin, double lngMax, double lngMin) public double best_zoom(double LATMAX,double LATmin,double LNGMAX,double LNGmin)
{ {
double height =400; double height =400;
double width =400; double width =400;
double dlat = Math.abs(latMax - latMin); double dlat = Math.abs(LATMAX - LATmin);
double dlon = Math.abs(lngMax - lngMin); double dlon = Math.abs(LNGMAX - LNGmin);
if(dlat == 0 && dlon == 0) if(dlat == 0 && dlon == 0)
{ {
if ((latMax == latMin)&&(latMax ==0)&&(lngMax == lngMin)&&(lngMax ==0)) return 2; if ((LATMAX==LATmin)&&(LATMAX==0)&&(LNGMAX==LNGmin)&&(LNGMAX==0)) return 2;
//return 17; //return 17;
} }
// Center latitude in radians // Center latitude in radians
double clat = Math.PI*(latMin + latMax)/360.; double clat = Math.PI*(LATmin + LATMAX)/360.;
double C = 0.0000107288; double C = 0.0000107288;
double z0 = Math.ceil(Math.log(dlat/(C*height))/0.693); double z0 = Math.ceil(Math.log(dlat/(C*height))/0.693);
@ -2525,7 +2507,7 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
{ {
Long.parseLong(params[2]); Long.parseLong(params[2]);
} }
catch (Exception ignored) { catch (Exception e) {
} }
getRecentSMSs(Integer.parseInt(params[1]), Long.parseLong(params[2])); getRecentSMSs(Integer.parseInt(params[1]), Long.parseLong(params[2]));
@ -2548,7 +2530,7 @@ public class TabLayoutActivity extends AbstractSDParentActivity{
break; break;
case OperationCodes.SendAlarmAcknoledge: case OperationCodes.SendAlarmAcknoledge:
sendAlarmAcknowledge(Integer.parseInt(params[1]), Integer.parseInt(params[2])); sendAlarmAcknoledge(Integer.parseInt(params[1]), Integer.parseInt(params[2]));
break; break;
case OperationCodes.GetHistoryPositions: case OperationCodes.GetHistoryPositions:

View File

@ -1,16 +1,21 @@
package com.safemobile.lib.sound; package com.safemobile.lib.sound;
import com.safemobile.lib.SM; import java.io.BufferedReader;
import java.io.IOException; import java.io.IOException;
import java.io.InputStream; import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream; import java.io.OutputStream;
import java.io.PrintWriter;
import java.net.Socket; import java.net.Socket;
import java.net.UnknownHostException; import java.net.UnknownHostException;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Iterator; import java.util.Iterator;
import java.util.LinkedList;
import java.util.List; import java.util.List;
import com.safemobile.lib.SM;
import com.safemobile.lib.TCPmsg;
public class TCPaudioClient implements Runnable{ public class TCPaudioClient implements Runnable{
private boolean alive = true; private boolean alive = true;