From 8a3d86c173cec8efb4a20b6ed1f118b5fbe42ee8 Mon Sep 17 00:00:00 2001 From: Anton Tananaev Date: Sat, 29 Aug 2015 21:32:11 +1200 Subject: [PATCH] Get address and port once --- .../org/traccar/client/TrackingController.java | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/app/src/main/java/org/traccar/client/TrackingController.java b/app/src/main/java/org/traccar/client/TrackingController.java index a27ed1e..bb93bc1 100644 --- a/app/src/main/java/org/traccar/client/TrackingController.java +++ b/app/src/main/java/org/traccar/client/TrackingController.java @@ -33,7 +33,9 @@ public class TrackingController implements PositionProvider.PositionListener, Ne private Context context; private Handler handler; - private SharedPreferences preferences; + + private String address; + private int port; private PositionProvider positionProvider; private DatabaseHelper databaseHelper; @@ -54,7 +56,7 @@ public class TrackingController implements PositionProvider.PositionListener, Ne public TrackingController(Context context) { this.context = context; handler = new Handler(); - preferences = PreferenceManager.getDefaultSharedPreferences(context); + SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(context); if (preferences.getString(MainActivity.KEY_PROVIDER, null).equals("mixed")) { positionProvider = new MixedPositionProvider(context, this); } else { @@ -64,6 +66,9 @@ public class TrackingController implements PositionProvider.PositionListener, Ne networkManager = new NetworkManager(context, this); isOnline = networkManager.isOnline(); + address = preferences.getString(MainActivity.KEY_ADDRESS, null); + port = Integer.parseInt(preferences.getString(MainActivity.KEY_PORT, null)); + PowerManager powerManager = (PowerManager) context.getSystemService(Context.POWER_SERVICE); wakeLock = powerManager.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, getClass().getName()); } @@ -173,11 +178,7 @@ public class TrackingController implements PositionProvider.PositionListener, Ne private void send(final Position position) { log("send", position); lock(); - String request = ProtocolFormatter.formatRequest( - preferences.getString(MainActivity.KEY_ADDRESS, null), - Integer.parseInt(preferences.getString(MainActivity.KEY_PORT, null)), - position); - + String request = ProtocolFormatter.formatRequest(address, port, position); RequestManager.sendRequestAsync(request, new RequestManager.RequestHandler() { @Override public void onComplete(boolean success) {