From 589d2b52b1135e876ee4c76dd2bf11c7a7cd973a Mon Sep 17 00:00:00 2001
From: Myth Yang <yangguangpkpk@gmail.com>
Date: Fri, 23 Aug 2013 20:17:23 +0800
Subject: idiot

---
 .../Piztor/src/com/example/piztor/Controller.java  |   5 +-
 .../Piztor/src/com/example/piztor/GPSTracker.java  | 107 +++++++++++----------
 .../Piztor/src/com/example/piztor/Login.java       |   4 +-
 .../src/com/example/piztor/MainActivity.java       |  32 ++++--
 .../Piztor/src/com/example/piztor/MyView.java      |  60 ++++++++----
 .../Piztor/src/com/example/piztor/Rmsg.java        |  12 +++
 .../Piztor/src/com/example/piztor/Running.java     |   4 +-
 .../src/com/example/piztor/SocketClient.java       |  13 ++-
 .../Piztor/src/com/example/piztor/Tracker.java     |  35 ++++---
 .../Piztor/src/com/example/piztor/Transam.java     |   2 +
 10 files changed, 172 insertions(+), 102 deletions(-)
 create mode 100644 client/activity-demo/Piztor/src/com/example/piztor/Rmsg.java

(limited to 'client/activity-demo/Piztor/src/com/example')

diff --git a/client/activity-demo/Piztor/src/com/example/piztor/Controller.java b/client/activity-demo/Piztor/src/com/example/piztor/Controller.java
index 6e55581..d6e75d7 100644
--- a/client/activity-demo/Piztor/src/com/example/piztor/Controller.java
+++ b/client/activity-demo/Piztor/src/com/example/piztor/Controller.java
@@ -1,7 +1,5 @@
 package com.example.piztor;
 
-import java.io.Serializable;
-import android.content.Intent;
 
 public class Controller {
 	String userToken;
@@ -25,6 +23,7 @@ public class Controller {
 	}
 
 	void recieveLocation(double x, double y) {
-		run.v.drawLocation(x, y);
+		System.out.println(x + "  xxxx " + y);
+		run.v.changMyLocation(x, y);
 	}
 }
diff --git a/client/activity-demo/Piztor/src/com/example/piztor/GPSTracker.java b/client/activity-demo/Piztor/src/com/example/piztor/GPSTracker.java
index e592ba3..13cb868 100644
--- a/client/activity-demo/Piztor/src/com/example/piztor/GPSTracker.java
+++ b/client/activity-demo/Piztor/src/com/example/piztor/GPSTracker.java
@@ -1,4 +1,5 @@
 package com.example.piztor;
+
 import android.app.AlertDialog;
 import android.app.Service;
 import android.content.Context;
@@ -33,7 +34,7 @@ public class GPSTracker extends Service implements LocationListener {
 	private static final long MIN_DISTANCE_CHANGE_FOR_UPDATES = 10; // 10 meters
 
 	// The minimum time between updates in milliseconds
-	private static final long MIN_TIME_BW_UPDATES = 10 * 60 * 1; // 1 minute
+	private static final long MIN_TIME_BW_UPDATES = 1000 * 10; // 10 seconds
 
 	// Declaring a Location Manager
 	protected LocationManager locationManager;
@@ -56,7 +57,7 @@ public class GPSTracker extends Service implements LocationListener {
 			isNetworkEnabled = locationManager
 					.isProviderEnabled(LocationManager.NETWORK_PROVIDER);
 
-			if (!isGPSEnabled && !isNetworkEnabled) {
+			if (!isGPSEnabled) {
 				// no network provider is enabled
 			} else {
 				this.canGetLocation = true;
@@ -101,79 +102,84 @@ public class GPSTracker extends Service implements LocationListener {
 
 		return location;
 	}
-	
+
 	/**
-	 * Stop using GPS listener
-	 * Calling this function will stop using GPS in your app
-	 */
-	public void stopUsingGPS(){
-		if(locationManager != null){
+	 * Stop using GPS listener Calling this function will stop using GPS in your
+	 * app
+	 * */
+	public void stopUsingGPS() {
+		if (locationManager != null) {
 			locationManager.removeUpdates(GPSTracker.this);
-		}		
+		}
 	}
-	
+
 	/**
 	 * Function to get latitude
-	 */
-	public double getLatitude(){
-		if(location != null){
+	 * */
+	public double getLatitude() {
+		if (location != null) {
 			latitude = location.getLatitude();
 		}
-		
+
 		// return latitude
 		return latitude;
 	}
-	
+
 	/**
 	 * Function to get longitude
-	 */
-	public double getLongitude(){
-		if(location != null){
+	 * */
+	public double getLongitude() {
+		if (location != null) {
 			longitude = location.getLongitude();
 		}
-		
+
 		// return longitude
 		return longitude;
 	}
-	
+
 	/**
 	 * Function to check GPS/wifi enabled
+	 * 
 	 * @return boolean
-	 */
+	 * */
 	public boolean canGetLocation() {
 		return this.canGetLocation;
 	}
-	
+
 	/**
-	 * Function to show settings alert dialog
-	 * On pressing Settings button will lauch Settings Options
-	 */
-	public void showSettingsAlert(){
+	 * Function to show settings alert dialog On pressing Settings button will
+	 * lauch Settings Options
+	 * */
+	public void showSettingsAlert() {
 		AlertDialog.Builder alertDialog = new AlertDialog.Builder(mContext);
-   	 
-        // Setting Dialog Title
-        alertDialog.setTitle("GPS is settings");
- 
-        // Setting Dialog Message
-        alertDialog.setMessage("GPS is not enabled. Do you want to go to settings menu?");
- 
-        // On pressing Settings button
-        alertDialog.setPositiveButton("Settings", new DialogInterface.OnClickListener() {
-            public void onClick(DialogInterface dialog,int which) {
-            	Intent intent = new Intent(Settings.ACTION_LOCATION_SOURCE_SETTINGS);
-            	mContext.startActivity(intent);
-            }
-        });
- 
-        // on pressing cancel button
-        alertDialog.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
-            public void onClick(DialogInterface dialog, int which) {
-            dialog.cancel();
-            }
-        });
- 
-        // Showing Alert Message
-        alertDialog.show();
+
+		// Setting Dialog Title
+		alertDialog.setTitle("GPS is settings");
+
+		// Setting Dialog Message
+		alertDialog
+				.setMessage("GPS is not enabled. Do you want to go to settings menu?");
+
+		// On pressing Settings button
+		alertDialog.setPositiveButton("Settings",
+				new DialogInterface.OnClickListener() {
+					public void onClick(DialogInterface dialog, int which) {
+						Intent intent = new Intent(
+								Settings.ACTION_LOCATION_SOURCE_SETTINGS);
+						mContext.startActivity(intent);
+					}
+				});
+
+		// on pressing cancel button
+		alertDialog.setNegativeButton("Cancel",
+				new DialogInterface.OnClickListener() {
+					public void onClick(DialogInterface dialog, int which) {
+						dialog.cancel();
+					}
+				});
+
+		// Showing Alert Message
+		alertDialog.show();
 	}
 
 	@Override
@@ -196,4 +202,5 @@ public class GPSTracker extends Service implements LocationListener {
 	public IBinder onBind(Intent arg0) {
 		return null;
 	}
+
 }
diff --git a/client/activity-demo/Piztor/src/com/example/piztor/Login.java b/client/activity-demo/Piztor/src/com/example/piztor/Login.java
index e7712c4..de5cded 100644
--- a/client/activity-demo/Piztor/src/com/example/piztor/Login.java
+++ b/client/activity-demo/Piztor/src/com/example/piztor/Login.java
@@ -2,13 +2,15 @@ package com.example.piztor;
 
 public class Login {
 	MainActivity main;
+	int tk;
 	
 	Login(MainActivity main) {
 		this.main = main;
 	}
 	
 	void success(int token) {
-		main.start();
+		//main.start();
+		tk = token;
 		System.out.println("token!");
 	}
 	
diff --git a/client/activity-demo/Piztor/src/com/example/piztor/MainActivity.java b/client/activity-demo/Piztor/src/com/example/piztor/MainActivity.java
index 333bfd4..bf8d755 100644
--- a/client/activity-demo/Piztor/src/com/example/piztor/MainActivity.java
+++ b/client/activity-demo/Piztor/src/com/example/piztor/MainActivity.java
@@ -16,6 +16,8 @@ public class MainActivity extends Activity {
 	Button b;
 	EditText username, password, ip, port;
 	Login login;
+	Controller c;
+	boolean flag = false;
 	public final static String SER_KEY = "CONTROL";
 
 	@Override
@@ -23,17 +25,12 @@ public class MainActivity extends Activity {
 		super.onCreate(savedInstanceState);
 		setContentView(R.layout.activity_main);
 		login = new Login(this);
+		c = new Controller();
 		b = (Button) findViewById(R.id.login);
+		
 		b.setOnClickListener(new View.OnClickListener() {
 			public void onClick(View v) {
-				cout.println(username.getText().toString());
-				cout.println(password.getText().toString());
-				cout.println(ip.getText().toString());
-				cout.println(port.getText().toString());
-				ip.setText("192.168.1.102");
-				port.setText("9990");
-				username.setText("hello");
-				password.setText("world");
+				if(flag==false){
 				 Vector<Object> r = new Vector<Object>();
 				 r.add(0);
 				 r.add(username.getText().toString());
@@ -42,6 +39,21 @@ public class MainActivity extends Activity {
 				 .parseInt(port.getText().toString()), new Myrequest(r),
 				 login);
 				 new Thread(t).run();
+				 flag = true;
+				}
+				else{
+					 Vector<Object> r = new Vector<Object>();
+					 r.add(2);
+					 r.add(login.tk);
+					 double lot = 123.456;
+					 double lat = 654.321;
+					 r.add(lot);
+					 r.add(lat);
+					 Transam t = new Transam(ip.getText().toString(), Integer
+					 .parseInt(port.getText().toString()), new Myrequest(r),
+					 c);
+					 new Thread(t).run();
+				}
 			}
 		});
 		username = (EditText) findViewById(R.id.username);
@@ -60,6 +72,10 @@ public class MainActivity extends Activity {
 	@Override
 	protected void onStart() {
 		super.onStart();
+		ip.setText("192.168.1.101");
+		port.setText("9990");
+		username.setText("hello");
+		password.setText("world");
 		cout.println("onStart!");
 	}
 
diff --git a/client/activity-demo/Piztor/src/com/example/piztor/MyView.java b/client/activity-demo/Piztor/src/com/example/piztor/MyView.java
index 1627e4c..a213013 100644
--- a/client/activity-demo/Piztor/src/com/example/piztor/MyView.java
+++ b/client/activity-demo/Piztor/src/com/example/piztor/MyView.java
@@ -1,39 +1,55 @@
 package com.example.piztor;
 
-import java.io.*;
-import android.content.*;
-import android.graphics.*;
+import java.io.PrintStream;
+import java.util.Vector;
+
+import android.content.Context;
+import android.graphics.Bitmap;
+import android.graphics.Canvas;
+import android.graphics.Color;
+import android.graphics.Paint;
 import android.graphics.Paint.Style;
-import android.util.*;
-import android.view.*;
+import android.graphics.Point;
+import android.util.AttributeSet;
+import android.view.MotionEvent;
+import android.view.View;
 
 public class MyView extends View {
 	static PrintStream cout = System.out;
-	private Paint mPaint;
+	private Paint mPaint, oPaint;
 	public Canvas c = null;
 	public Bitmap b = null;
-	public double scale = 100;
+	public double scale = 1;
 	public double centerX, centerY;
-//	Vector<PointF> v;
+	
+	
+	Point myLocation;
+	Vector<Point> Location;
 
 	void setup(Canvas c, Bitmap b, double x, double y) {
 		this.c = c;
 		this.b = b;
 		centerX = x;
 		centerY = y;
+		myLocation = new Point(10, 10);
+		Location = new Vector<Point>();
+		Location.add(myLocation);
 	}
 
 	public MyView(Context context) {
 		super(context);
-//		v = new Vector<PointF>();
+		// v = new Vector<PointF>();
 		mPaint = new Paint();
 		mPaint.setColor(Color.RED);
 		mPaint.setStyle(Style.FILL);
+		oPaint = new Paint();
+		oPaint.setColor(Color.BLUE);
+		oPaint.setStyle(Style.FILL);
 	}
 
 	public MyView(Context context, AttributeSet attr) {
 		super(context, attr);
-//		v = new Vector<PointF>();
+		// v = new Vector<PointF>();
 		mPaint = new Paint();
 		mPaint.setColor(Color.RED);
 		mPaint.setStyle(Style.FILL);
@@ -42,34 +58,42 @@ public class MyView extends View {
 	@Override
 	protected void onDraw(Canvas canvas) {
 		super.onDraw(canvas);
-		canvas.drawBitmap(b, 0, 0, mPaint);
+		cout.println(myLocation.x + "   --   " + myLocation.y);
+		canvas.drawCircle(myLocation.x, myLocation.y, 5, mPaint);
+		//canvas.drawBitmap(b, 0, 0, mPaint);
+		/*for (int i = 1; i < Location.size(); i++) {
+			canvas.drawCircle(Location.get(i).x, Location.get(i).y, 2, oPaint);
+		}*/
 		// canvas.restore();
 	}
 
 	@Override
 	public boolean onTouchEvent(MotionEvent e) {
-//		v.add(new PointF(e.getX(), e.getY()));
+		// v.add(new PointF(e.getX(), e.getY()));
 		c.drawRect(e.getX() - 1, e.getY() + 1, e.getX() + 1, e.getY() - 1,
 				mPaint);
+		
 		invalidate();
 		return true;
 	}
 
-	void drawLocation(double x, double y) {
+	void changMyLocation(double x, double y) {
 		if (centerX < 0) {
 			centerX = x;
 			centerY = y;
 		}
-		int x1 = (int)(getWidth() / 2 + (x - centerX) * scale);
-		int y1 = (int)(getHeight() / 2 + (y - centerY) * scale);
-		c.drawRect(x1 - 1, y1 + 1, x1 + 1, y1 - 1, mPaint);
+		int x1 = (int) (getWidth() / 2 + (x - centerX) * scale);
+		int y1 = (int) (getHeight() / 2 + (y - centerY) * scale);
+		myLocation.x = x1;
+		myLocation.y = y1;
+		cout.println(x + " " + y);
 		invalidate();
 	}
-	
+
 	void drawString(String s) {
 		mPaint.setTextSize(15);
 		c.drawText(s, 0, getHeight() / 2, mPaint);
 		invalidate();
 	}
-	
+
 }
\ No newline at end of file
diff --git a/client/activity-demo/Piztor/src/com/example/piztor/Rmsg.java b/client/activity-demo/Piztor/src/com/example/piztor/Rmsg.java
new file mode 100644
index 0000000..8f4f587
--- /dev/null
+++ b/client/activity-demo/Piztor/src/com/example/piztor/Rmsg.java
@@ -0,0 +1,12 @@
+package com.example.piztor;
+
+public class Rmsg{
+	int id;
+	double lat;
+	double lot;
+	Rmsg(int i,double l,double ll){
+		id = i;
+		lat = l;
+		lot = ll;
+	}
+}
\ No newline at end of file
diff --git a/client/activity-demo/Piztor/src/com/example/piztor/Running.java b/client/activity-demo/Piztor/src/com/example/piztor/Running.java
index 4ea1526..f4b6135 100644
--- a/client/activity-demo/Piztor/src/com/example/piztor/Running.java
+++ b/client/activity-demo/Piztor/src/com/example/piztor/Running.java
@@ -29,7 +29,9 @@ public class Running extends Activity {
 	protected void onStart() {
 		super.onStart();
 		v = (MyView) findViewById(R.id.view);
-		v.setup(c, b, 31, 121);
+		v.setup(c, b, -1, -1);
+		Tracker tr = new Tracker(controller, Running.this);
+		new Thread(tr).run();
 	}
 	
 	@Override
diff --git a/client/activity-demo/Piztor/src/com/example/piztor/SocketClient.java b/client/activity-demo/Piztor/src/com/example/piztor/SocketClient.java
index e66b5bc..472da0d 100644
--- a/client/activity-demo/Piztor/src/com/example/piztor/SocketClient.java
+++ b/client/activity-demo/Piztor/src/com/example/piztor/SocketClient.java
@@ -36,8 +36,7 @@ public class SocketClient {
 			case 0:
 				String id = (String) req.contain.get(1);
 				String pass = (String) req.contain.get(2);
-				out.writeUTF(id);
-				out.writeUTF(pass);
+				out.writeBytes(id + "\0" + pass);
 				break;
 			case 1:
 				int tk1 = (Integer) req.contain.get(1);
@@ -45,7 +44,7 @@ public class SocketClient {
 				String mess = (String) req.contain.get(3);
 				out.writeInt(tk1);
 				out.writeInt(acc);
-				out.writeUTF(mess);
+				out.writeBytes(mess);
 				break;
 			case 2:
 				int tk2 = (Integer) req.contain.get(1);
@@ -74,6 +73,7 @@ public class SocketClient {
 				r.contain.add(0);
 				r.contain.add(id);
 				r.contain.add(status);
+				System.out.println(id);
 				break;
 			case 1:
 				r.contain.add(1);
@@ -89,11 +89,10 @@ public class SocketClient {
 				r.contain.add(n);
 				for (int i = 1; i <= n; i++) {
 					int tid = in.readInt();
-					double lot = in.readDouble();
 					double lat = in.readDouble();
-					r.contain.add(tid);
-					r.contain.add(lot);
-					r.contain.add(lat);
+					double lot = in.readDouble();
+					Rmsg a = new Rmsg(tid,lat,lot);
+					r.contain.add(a);
 				}
 				break;
 			}
diff --git a/client/activity-demo/Piztor/src/com/example/piztor/Tracker.java b/client/activity-demo/Piztor/src/com/example/piztor/Tracker.java
index ceda506..0222325 100644
--- a/client/activity-demo/Piztor/src/com/example/piztor/Tracker.java
+++ b/client/activity-demo/Piztor/src/com/example/piztor/Tracker.java
@@ -1,34 +1,41 @@
 package com.example.piztor;
-
 import java.util.Timer;
 import java.util.TimerTask;
 
+import android.content.Context;
+
 public class Tracker implements Runnable {
 
-	private static final long TIME_DELTA = 1000 * 60 * 5;	
-	public final Context mContext;
-	
+	private static final long TIME_DELTA = 1000 * 10; // 10 seconds	
+	public Timer timer;
+	private final Context mContext;
 	Controller controller;
 
-	public Tracker(Controller newController) {
+	public Tracker(Controller newController, Context context) {
+		timer = new Timer();
+		mContext = context;
 		controller = newController;
 	}
 
-	public Timer timer;
 	public void run() {
-		TimerTask task = new GPSTask();	
-		timer.schedule(new GPSTask(), 0, TIME_DELTA);
+		GPSTask t = new GPSTask();
+		t.run();
+		//timer.s
+//		timer.schedule(new GPSTask(), 0, TIME_DELTA);
 	}
 
 	class GPSTask extends TimerTask {
+		@Override
 		public void run() {
 			GPSTracker tracker;
-			tracker = new GPSTracker(Tracker.this);
-
-			double latitude = tracker.getLatitude();
-			double longitude = tracker.getLongitude();
-
-			controller.recieveLocation(latitude, longitude);
+			tracker = new GPSTracker(mContext);
+			System.out.println("can get location?");
+			if(tracker.canGetLocation()) {
+				double latitude = tracker.getLatitude();
+				double longitude = tracker.getLongitude();
+				System.out.println("yes!");
+				controller.recieveLocation(latitude, longitude);
+			}
 		}
 	}
 }
diff --git a/client/activity-demo/Piztor/src/com/example/piztor/Transam.java b/client/activity-demo/Piztor/src/com/example/piztor/Transam.java
index e39abd5..db76d06 100644
--- a/client/activity-demo/Piztor/src/com/example/piztor/Transam.java
+++ b/client/activity-demo/Piztor/src/com/example/piztor/Transam.java
@@ -71,7 +71,9 @@ public class Transam implements Runnable {
          	handler.sendMessage(msg); 
 			client.closeSocket();	
 			}catch (UnknownHostException e){
+				e.printStackTrace();
 			}catch (IOException e){
+				e.printStackTrace();
 			}
 			 
 		}
-- 
cgit v1.2.3-70-g09d2