Thursday 7 June 2012

Map.java


package com.qualcomm.QCARSamples.ImageTargets;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.io.UnsupportedEncodingException;
import java.util.ArrayList;
import java.util.List;

import org.apache.http.NameValuePair;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.ResponseHandler;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.BasicResponseHandler;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;
import org.apache.http.params.BasicHttpParams;
import org.apache.http.params.HttpConnectionParams;
import org.apache.http.params.HttpParams;
import org.json.JSONArray;
import org.json.JSONException;

import android.app.Activity;
import android.app.ProgressDialog;
import android.content.Context;
import android.content.Intent;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.drawable.BitmapDrawable;
import android.graphics.drawable.Drawable;
import android.net.Uri;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.text.Html;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.ViewGroup.LayoutParams;
import android.view.ViewGroup.MarginLayoutParams;
import android.widget.Button;
import android.widget.FrameLayout;
import android.widget.LinearLayout;
import android.widget.RelativeLayout;
import android.widget.TabHost;
import android.widget.TabWidget;
import android.widget.TextView;
import android.widget.Toast;
import java.io.BufferedInputStream;
import java.io.InputStream;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
import org.apache.http.util.ByteArrayBuffer;

import com.google.android.maps.GeoPoint;
import com.google.android.maps.MapActivity;
import com.google.android.maps.MapView;
import com.google.android.maps.Overlay;
import com.google.android.maps.OverlayItem;
import com.google.android.maps.MapController;
import com.qualcomm.QCARSamples.ImageTargets.ImageLoader1.FlushedInputStream;
import java.util.ArrayList;

import android.app.AlertDialog;
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.drawable.BitmapDrawable;
import android.graphics.drawable.Drawable;
import android.widget.ImageView;

import com.google.android.maps.ItemizedOverlay;
import com.google.android.maps.OverlayItem;

public class Map extends MapActivity {
MapView mapview;
MapController mapController;
String URL = MainURL.URL + "getlocation";
int total = 10;
static Bitmap[] bmp;
ProgressDialog dialog;
String responseBody;
JSONArray jArray, jSubArray;

String[] items;
String[] loc_id, longitude, latitude, thumb, type, type_id, name, cat_id,
cat_name, one_liner,spotimage;

String Location;
LayoutInflater inflater;
ImageLoader1 imageLoader;
LinearLayout.LayoutParams thumbparams;
GeoPoint[] geopoint;
OverlayItem[] overlayitem;
HelloItemizedOverlay1 itemizedoverlay;
List<Overlay> mapOverlays;
ByteArrayBuffer baf;
static Drawable[] drawable;
private static File cacheDir;
Button home, back;
int height, width;
ImageView i1, i2, i3, i4;
ImageView image;

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.mapview);
this.mapview = (MapView) findViewById(R.id.mapview);
double l1 = 22.97884;
double l2 = 72.49037;

GeoPoint point = new GeoPoint((int) (l1 * 1E6), (int) (l2 * 1E6));
this.mapview.getController().animateTo(point);
ViewGroup zoom = (ViewGroup) this.findViewById(R.id.zoom);
zoom.addView(mapview.getZoomControls());
dialog = ProgressDialog.show(Map.this, "",
"Loading Data ...Please Wait", true);
this.mapController = this.mapview.getController();
// String geoUriString =
// getResources().getString(R.string.map_location);
// Uri geoUri = Uri.parse(geoUriString);
// Intent mapCall = new Intent(Intent.ACTION_VIEW, geoUri);
// startActivity(mapCall);
height = getWindowManager().getDefaultDisplay().getHeight();
width = getWindowManager().getDefaultDisplay().getWidth();
home = (Button) findViewById(R.id.home);
back = (Button) findViewById(R.id.back);
fetchData.start();
mapview.setBuiltInZoomControls(true);
mapOverlays = mapview.getOverlays();
Drawable drawable = this.getResources().getDrawable(R.drawable.pushpin);
itemizedoverlay = new HelloItemizedOverlay1(drawable, this);

LinearLayout mainlayout = (LinearLayout) findViewById(R.id.main);
mainlayout.getLayoutParams().height = (int) (height * 0.90);

TabHost tabH = new TabHost(this);
TabWidget tabWidget = new TabWidget(this);
LinearLayout lin = new LinearLayout(this);
lin.setOrientation(LinearLayout.HORIZONTAL);
tabWidget.setId(android.R.id.tabs);
tabH.addView(tabWidget);
tabH.addView(lin);
FrameLayout fl = new FrameLayout(this);
fl.setId(android.R.id.tabcontent);

fl.setPadding(0, (int) (getWindowManager().getDefaultDisplay()
.getHeight() * 0.90), 0, 0);

lin.addView(fl);
tabH.setup();
// android.widget.TabHost.TabSpec ts1 = tabH.newTabSpec("hi");
tabH.addTab(tabH.newTabSpec("tag")

.setIndicator("").setContent(new TabHost.TabContentFactory() {
public View createTabContent(String tag) {
// -- this tab contains multiple control grouped in a panel --
// //
LinearLayout panel = new LinearLayout(Map.this);
panel.setOrientation(LinearLayout.HORIZONTAL);

panel.setBackgroundResource(R.drawable.bottom_bar);
i1 = new ImageView(Map.this);
i1.setBackgroundResource(R.drawable.map_file);
i2 = new ImageView(Map.this);
i2.setBackgroundResource(R.drawable.urhere_file);

i3 = new ImageView(Map.this);
i3.setBackgroundResource(R.drawable.navigate_file);

i4 = new ImageView(Map.this);
i4.setBackgroundResource(R.drawable.arroundme_file);

panel.addView(i1);
panel.addView(i2);
panel.addView(i3);
panel.addView(i4);

// i1.getLayoutParams().width = getWindowManager()
// .getDefaultDisplay().getWidth() / 4;
// i2.getLayoutParams().width = getWindowManager()
// .getDefaultDisplay().getWidth() / 4;
// i3.getLayoutParams().width = getWindowManager()
// .getDefaultDisplay().getWidth() / 4;
// i4.getLayoutParams().width = getWindowManager()
// .getDefaultDisplay().getWidth() / 4;

MarginLayoutParams marginParams_i1 = new MarginLayoutParams(i1
.getLayoutParams());
if (height >= 800) {
marginParams_i1.setMargins(12, 0, 12, 0);

} else if (height < 480) {
marginParams_i1.setMargins(8, 0, 8, 0);
} else {

marginParams_i1.setMargins(12, 0, 12, 0);
}
LinearLayout.LayoutParams layoutParams_i1 = new LinearLayout.LayoutParams(
marginParams_i1);
i1.setLayoutParams(layoutParams_i1);

MarginLayoutParams marginParams_i2 = new MarginLayoutParams(i2
.getLayoutParams());
if (height >= 800) {
marginParams_i2.setMargins(12, 0, 12, 0);

} else if (height < 480) {
marginParams_i2.setMargins(8, 0, 8, 0);
} else {
marginParams_i2.setMargins(12, 0, 12, 0);
}
LinearLayout.LayoutParams layoutParams_i2 = new LinearLayout.LayoutParams(
marginParams_i2);
i2.setLayoutParams(layoutParams_i2);

MarginLayoutParams marginParams_i3 = new MarginLayoutParams(i3
.getLayoutParams());
if (height >= 800) {
marginParams_i3.setMargins(12, 0, 12, 0);

} else if (height < 480) {
marginParams_i3.setMargins(8, 0, 8, 0);
} else {
marginParams_i3.setMargins(12, 0, 12, 0);
}
LinearLayout.LayoutParams layoutParams_i3 = new LinearLayout.LayoutParams(
marginParams_i3);
i3.setLayoutParams(layoutParams_i3);

MarginLayoutParams marginParams_i4 = new MarginLayoutParams(i4
.getLayoutParams());
if (height >= 800) {
marginParams_i4.setMargins(12, 0, 12, 0);
} else if (height < 480) {
marginParams_i4.setMargins(8, 0, 8, 0);
} else {
marginParams_i4.setMargins(12, 0, 12, 0);
}
LinearLayout.LayoutParams layoutParams_i4 = new LinearLayout.LayoutParams(
marginParams_i4);
i4.setLayoutParams(layoutParams_i4);
return panel;
} // TAB 1 done
}));
// ts1.setContent(new Intent(this,Tab1.class));
// tabH.addTab(ts1);
tabH.getTabWidget().getChildAt(0).getLayoutParams().height = (int) 0.000000001;
tabH.getTabWidget().getChildAt(0).getLayoutParams().width = (int) 0.0000000001;

RelativeLayout.LayoutParams tab = new RelativeLayout.LayoutParams(
LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);

// tab.setMargins(0,(int)
// (getWindowManager().getDefaultDisplay().getHeight()*0.8) , 0, 0);
addContentView(tabH, tab);

i1.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View v) {
// do whatever you need
Intent intent = new Intent(Map.this, Map.class);

startActivity(intent);
}
});

i2.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View v) {
// do whatever you need
Intent intent = new Intent(Map.this, Mapper.class);

startActivity(intent);
}
});
i3.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View v) {
// do whatever you need
Intent intent = new Intent(Map.this, navigateAllActivity.class);

startActivity(intent);
}
});

i4.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View v) {
// do whatever you need
Intent intent = new Intent(Map.this, AroundmeActivity.class);

startActivity(intent);
}
});

// GeoPoint point = new GeoPoint((int) 20.8833, (int) 70.3667);
// OverlayItem overlayitem = new OverlayItem(point, "har har mahadev!",
// "I'm in somnath!");
//
//
// GeoPoint point2 = new GeoPoint((int) 23.8833, (int) 72.3667);
// OverlayItem overlayitem2 = new OverlayItem(point2,
// "The manchester of india!", "I'm in ahmedabad!");
// itemizedoverlay.addOverlay(overlayitem2);
// itemizedoverlay.addOverlay(overlayitem);
//
// mapOverlays.add(itemizedoverlay);

// for (int i = 0; i < 2; i++) {
/*
* double lat = 22.97884; double lng = 72.49037;
*
* GeoPoint geopoint = new GeoPoint((int) (lat * 1E6), (int) (lng *
* 1E6)); OverlayItem overlayitem = new OverlayItem(geopoint, "",
* "Sarkhej!");
*
* itemizedoverlay.addOverlay(overlayitem); // }
*
* mapOverlays.add(itemizedoverlay);
*
* double lat2 = 23.07641; double lng2 = 72.50775;
*
* GeoPoint geopoint2 = new GeoPoint((int) (lat2 * 1E6), (int) (lng2 *
* 1E6)); OverlayItem overlayitem2 = new OverlayItem(geopoint2, "",
* "Science City");
*
* itemizedoverlay.addOverlay(overlayitem2); // }
*
* mapOverlays.add(itemizedoverlay);
*
* double lat3 = 23.16389; double lng3 = 72.58056;
*
* GeoPoint geopoint3 = new GeoPoint((int) (lat3 * 1E6), (int) (lng3 *
* 1E6)); OverlayItem overlayitem3 = new OverlayItem(geopoint3, "",
* "Adalaj");
*
* itemizedoverlay.addOverlay(overlayitem3); // }
*
* double lat4 = 22.76219; double lng4 = 72.05867;
*
* GeoPoint geopoint4 = new GeoPoint((int) (lat4 * 1E6), (int) (lng4 *
* 1E6)); OverlayItem overlayitem4 = new OverlayItem(geopoint4, "",
* "Nal Sarovar Lake");
*
* itemizedoverlay.addOverlay(overlayitem4); // }
*
* double lat5 = 22.5209; double lng5 = 72.2497;
*
* GeoPoint geopoint5 = new GeoPoint((int) (lat5 * 1E6), (int) (lng5 *
* 1E6)); OverlayItem overlayitem5 = new OverlayItem(geopoint5, "",
* "Lothal");
*
* itemizedoverlay.addOverlay(overlayitem5);
*
* double lat6 = 21.11702; double lng6 = 73.10768;
*
* GeoPoint geopoint6 = new GeoPoint((int) (lat6 * 1E6), (int) (lng6 *
* 1E6)); OverlayItem overlayitem6 = new OverlayItem(geopoint6, "",
* "Bardoli");
*
* itemizedoverlay.addOverlay(overlayitem6);
*
* double lat7 = 21.16636; double lng7 = 73.56451;
*
* GeoPoint geopoint7 = new GeoPoint((int) (lat7 * 1E6), (int) (lng7 *
* 1E6)); OverlayItem overlayitem7 = new OverlayItem(geopoint7, "",
* "Songadh");
*
* itemizedoverlay.addOverlay(overlayitem7);
*
* double lat8 = 20.48491; double lng8 = 72.86918;
*
* GeoPoint geopoint8 = new GeoPoint((int) (lat8 * 1E6), (int) (lng8 *
* 1E6)); OverlayItem overlayitem8 = new OverlayItem(geopoint8, "",
* "Udwada");
*
* itemizedoverlay.addOverlay(overlayitem8);
*
* double lat9 = 20.53826; double lng9 = 73.17479;
*
* GeoPoint geopoint9 = new GeoPoint((int) (lat9 * 1E6), (int) (lng9 *
* 1E6)); OverlayItem overlayitem9 = new OverlayItem(geopoint9, "",
* "Wilson Hill");
*
* itemizedoverlay.addOverlay(overlayitem9);
*
* double lat10 = 20.42; double lng10 = 72.85;
*
* GeoPoint geopoint10 = new GeoPoint((int) (lat10 * 1E6), (int) (lng10
* * 1E6)); OverlayItem overlayitem10 = new OverlayItem(geopoint10, "",
* "Daman");
*
* itemizedoverlay.addOverlay(overlayitem10);
*
* double lat11 = 20.61007; double lng11 = 72.92586;
*
* GeoPoint geopoint11 = new GeoPoint((int) (lat11 * 1E6), (int) (lng11
* * 1E6)); OverlayItem overlayitem11 = new OverlayItem(geopoint11, "",
* "Dandi");
*
* itemizedoverlay.addOverlay(overlayitem11);
*
* double lat12 = 20.69367; double lng12 = 73.53585;
*
* GeoPoint geopoint12 = new GeoPoint((int) (lat12 * 1E6), (int) (lng12
* * 1E6)); OverlayItem overlayitem12 = new OverlayItem(geopoint12, "",
* "Vansda National Park");
*
* itemizedoverlay.addOverlay(overlayitem12);
*
* double lat13 = 20.5702; double lng13 = 73.75367;
*
* GeoPoint geopoint13 = new GeoPoint((int) (lat13 * 1E6), (int) (lng13
* * 1E6)); OverlayItem overlayitem13 = new OverlayItem(geopoint13, "",
* "Saputara");
*
* itemizedoverlay.addOverlay(overlayitem13);
*
* double lat15 = 22.9893; double lng15 = 69.20655;
*
* GeoPoint geopoint15 = new GeoPoint((int) (lat15 * 1E6), (int) (lng15
* * 1E6)); OverlayItem overlayitem15 = new OverlayItem(geopoint15, "",
* "Padam Dungri");
*
* itemizedoverlay.addOverlay(overlayitem15);
*
* double lat16 = 20.92057; double lng16 = 73.58002;
*
* GeoPoint geopoint16 = new GeoPoint((int) (lat16 * 1E6), (int) (lng16
* * 1E6)); OverlayItem overlayitem16 = new OverlayItem(geopoint16, "",
* "Purna Wildlife Santuary");
*
* itemizedoverlay.addOverlay(overlayitem16);
*
* double lat18 = 21.76062; double lng18 = 73.79485;
*
* GeoPoint geopoint18 = new GeoPoint((int) (lat18 * 1E6), (int) (lng18
* * 1E6)); OverlayItem overlayitem18 = new OverlayItem(geopoint18, "",
* "Shoolpaneshwar Wildlife Sanctuary");
*
* itemizedoverlay.addOverlay(overlayitem18);
*
* double lat19 = 21.75395; double lng19 = 73.12168;
*
* GeoPoint geopoint19 = new GeoPoint((int) (lat19 * 1E6), (int) (lng19
* * 1E6)); OverlayItem overlayitem19 = new OverlayItem(geopoint19, "",
* "Shuklatirth");
*
* itemizedoverlay.addOverlay(overlayitem19);
*
* double lat20 = 21.07109; double lng20 = 71.563;
*
* GeoPoint geopoint20 = new GeoPoint((int) (lat20 * 1E6), (int) (lng20
* * 1E6)); OverlayItem overlayitem20 = new OverlayItem(geopoint20, "",
* "kadiadungar");
*
* itemizedoverlay.addOverlay(overlayitem20);
*
* double lat21 = 22.47563; double lng21 = 70.05925;
*
* GeoPoint geopoint21 = new GeoPoint((int) (lat21 * 1E6), (int) (lng21
* * 1E6)); OverlayItem overlayitem21 = new OverlayItem(geopoint21, "",
* "Nature Park");
*
* itemizedoverlay.addOverlay(overlayitem21);
*
* double lat22 = 22.30731; double lng22 = 73.1811;
*
* GeoPoint geopoint22 = new GeoPoint((int) (lat22 * 1E6), (int) (lng22
* * 1E6)); OverlayItem overlayitem22 = new OverlayItem(geopoint22, "",
* "Vadhvana wetland");
*
* itemizedoverlay.addOverlay(overlayitem22);
*
* double lat23 = 22.30868; double lng23 = 74.01318;
*
* GeoPoint geopoint23 = new GeoPoint((int) (lat23 * 1E6), (int) (lng23
* * 1E6)); OverlayItem overlayitem23 = new OverlayItem(geopoint23, "",
* "Chhota Udepur");
*
* itemizedoverlay.addOverlay(overlayitem23);
*
* double lat25 = 22.4833; double lng25 = 73.5333;
*
* GeoPoint geopoint25 = new GeoPoint((int) (lat25 * 1E6), (int) (lng25
* * 1E6)); OverlayItem overlayitem25 = new OverlayItem(geopoint25, "",
* "Champaner-Pavagadh");
*
* itemizedoverlay.addOverlay(overlayitem25);
*
* double lat26 = 22.36781; double lng26 = 73.73123;
*
* GeoPoint geopoint26 = new GeoPoint((int) (lat26 * 1E6), (int) (lng26
* * 1E6)); OverlayItem overlayitem26 = new OverlayItem(geopoint26, "",
* "jhambugoda");
*
* itemizedoverlay.addOverlay(overlayitem26);
*
* double lat27 = 22.70106; double lng27 = 73.91481;
*
* GeoPoint geopoint27 = new GeoPoint((int) (lat27 * 1E6), (int) (lng27
* * 1E6)); OverlayItem overlayitem27 = new OverlayItem(geopoint27, "",
* "Devgad Baria");
*
* itemizedoverlay.addOverlay(overlayitem27);
*
* double lat32 = 23.07485; double lng32 = 72.57557;
*
* GeoPoint geopoint32 = new GeoPoint((int) (lat32 * 1E6), (int) (lng32
* * 1E6)); OverlayItem overlayitem32 = new OverlayItem(geopoint32, "",
* "Vijaynagar");
*
* itemizedoverlay.addOverlay(overlayitem32);
*
* double lat36 = 22.31311; double lng36 = 72.61941;
*
* GeoPoint geopoint36 = new GeoPoint((int) (lat36 * 1E6), (int) (lng36
* * 1E6)); OverlayItem overlayitem36 = new OverlayItem(geopoint36, "",
* "khambat");
*
* itemizedoverlay.addOverlay(overlayitem36);
*
* double lat37 = 22.75185; double lng37 = 73.15125;
*
* GeoPoint geopoint37 = new GeoPoint((int) (lat37 * 1E6), (int) (lng37
* * 1E6)); OverlayItem overlayitem37 = new OverlayItem(geopoint37, "",
* "Dakor");
*
* itemizedoverlay.addOverlay(overlayitem37);
*
* double lat39 = 23.58237; double lng39 = 72.13783;
*
* GeoPoint geopoint39 = new GeoPoint((int) (lat39 * 1E6), (int) (lng39
* * 1E6)); OverlayItem overlayitem39 = new OverlayItem(geopoint39, "",
* "Modhera");
*
* itemizedoverlay.addOverlay(overlayitem39);
*
* double lat41 = 22.905929; double lng41 = 72.243364;
*
* GeoPoint geopoint41 = new GeoPoint((int) (lat41 * 1E6), (int) (lng41
* * 1E6)); OverlayItem overlayitem41 = new OverlayItem(geopoint41, "",
* "Thol lake");
*
* itemizedoverlay.addOverlay(overlayitem41);
*
* double lat42 = 23.784167; double lng42 = 72.638611;
*
* GeoPoint geopoint42 = new GeoPoint((int) (lat42 * 1E6), (int) (lng42
* * 1E6)); OverlayItem overlayitem42 = new OverlayItem(geopoint42, "",
* "Vadnagar");
*
* itemizedoverlay.addOverlay(overlayitem42);
*
* double lat43 = 23.965823; double lng43 = 72.752473;
*
* GeoPoint geopoint43 = new GeoPoint((int) (lat43 * 1E6), (int) (lng43
* * 1E6)); OverlayItem overlayitem43 = new OverlayItem(geopoint43, "",
* "Taranga");
*
* itemizedoverlay.addOverlay(overlayitem43);
*
* double lat44 = 24.306934; double lng44 = 72.780642;
*
* GeoPoint geopoint44 = new GeoPoint((int) (lat44 * 1E6), (int) (lng44
* * 1E6)); OverlayItem overlayitem44 = new OverlayItem(geopoint44, "",
* "Balaram-Ambaji Sanctuary");
*
* itemizedoverlay.addOverlay(overlayitem44);
*
* double lat45 = 24.331002; double lng45 = 72.851653;
*
* GeoPoint geopoint45 = new GeoPoint((int) (lat45 * 1E6), (int) (lng45
* * 1E6)); OverlayItem overlayitem45 = new OverlayItem(geopoint45, "",
* "Ambaji");
*
* itemizedoverlay.addOverlay(overlayitem45);
*
* double lat46 = 24.171181; double lng46 = 72.43438393;
*
* GeoPoint geopoint46 = new GeoPoint((int) (lat46 * 1E6), (int) (lng46
* * 1E6)); OverlayItem overlayitem46 = new OverlayItem(geopoint46, "",
* "Jessore Wildlife Sanctuary");
*
* itemizedoverlay.addOverlay(overlayitem46);
*
* double lat47 = 22.032593; double lng47 = 72.064;
*
* GeoPoint geopoint47 = new GeoPoint((int) (lat47 * 1E6), (int) (lng47
* * 1E6)); OverlayItem overlayitem47 = new OverlayItem(geopoint47, "",
* "Velavadar National Park");
*
* itemizedoverlay.addOverlay(overlayitem47);
*
* double lat48 = 21.527682; double lng48 = 71.820718;
*
* GeoPoint geopoint48 = new GeoPoint((int) (lat48 * 1E6), (int) (lng48
* * 1E6)); OverlayItem overlayitem48 = new OverlayItem(geopoint48, "",
* "Palitana");
*
* itemizedoverlay.addOverlay(overlayitem48);
*
* mapOverlays.add(itemizedoverlay);
*/
home.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View v) {
// do whatever you need
Intent intent = new Intent(Map.this,
ZoomByEnterPageActivity.class);

startActivity(intent);
}
});
back.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View v) {
// do whatever you need
Intent intent = new Intent(Map.this,
ZoomByEnterPageActivity.class);
Map.this.finish();

startActivity(intent);
}
});

}

@Override
protected boolean isRouteDisplayed() {
// TODO Auto-generated method stub
return false;
}

private void gotoMyHome() {
Double lat = 22.312381 * 1E6;
Double lng = 114.225242 * 1E6;
this.mapController.setCenter(new GeoPoint(lat.intValue(), lng
.intValue()));
}

final Handler handler = new Handler() {
public void handleMessage(Message msg) {
try {
// int start = responseBody.indexOf("{");
// int end = responseBody.length();
// String result = responseBody.substring(start, end);
// // Toast.makeText(getApplicationContext(), result,
// 9000).show();

int start = responseBody.indexOf("status");
int end = responseBody.length();
String result = responseBody.substring(start, end);
String result1 = "[{" + '"' + result.toString().trim();
// Toast.makeText(getApplicationContext(), result1,
// 9000).show();
// Log.e("result", "" + result1);

try {
jArray = new JSONArray(result1.toString());
} catch (JSONException e) {
Log.e("log_tag", "Error parsing data " + e.toString());
}

try {
items = new String[jArray.length()];

for (int i = 0; i < jArray.length(); i++) {

items[i] = jArray.getJSONObject(i).getString("status")
.toString();
Location = jArray.getJSONObject(i)
.getString("Location").toString();

}
jSubArray = new JSONArray(Location.toString());

loc_id = new String[jSubArray.length()];
longitude = new String[jSubArray.length()];
drawable = new Drawable[jSubArray.length()];
spotimage = new String[jSubArray.length()];
latitude = new String[jSubArray.length()];
thumb = new String[jSubArray.length()];
type = new String[jSubArray.length()];
type_id = new String[jSubArray.length()];
name = new String[jSubArray.length()];
cat_id = new String[jSubArray.length()];
cat_name = new String[jSubArray.length()];
one_liner = new String[jSubArray.length()];
geopoint = new GeoPoint[jSubArray.length()];
overlayitem = new OverlayItem[jSubArray.length()];
for (int j = 0; j < jSubArray.length(); j++) {
loc_id[j] = jSubArray.getJSONObject(j)
.getString("loc_id").toString();
longitude[j] = jSubArray.getJSONObject(j)
.getString("longitude").toString();
latitude[j] = jSubArray.getJSONObject(j)
.getString("latitude").toString();
thumb[j] = jSubArray.getJSONObject(j)
.getString("thumb").toString();
spotimage[j] = jSubArray.getJSONObject(j)
.getString("spotimage").toString();
type[j] = jSubArray.getJSONObject(j).getString("type")
.toString();
type_id[j] = jSubArray.getJSONObject(j)
.getString("type_id").toString();
name[j] = jSubArray.getJSONObject(j).getString("name")
.toString();
cat_id[j] = jSubArray.getJSONObject(j)
.getString("cat_id").toString();

cat_name[j] = jSubArray.getJSONObject(j)
.getString("cat_name").toString();
one_liner[j] = jSubArray.getJSONObject(j)
.getString("one_liner").toString();
one_liner[j] = one_liner[j].replaceAll("&nbsp;", "");

// Toast.makeText(getApplicationContext(), "" +
// thumb[j],
// 7000).show();
// Log.e("thumb[j]", thumb[0]);
total = jSubArray.length();
}

} catch (JSONException e) {
Log.e("log_tag", "Error parsing data " + e.toString());
}
if (items[0].equalsIgnoreCase("OK")) {
if ((dialog.isShowing()))
dialog.dismiss();

} else {
if ((dialog.isShowing()))
dialog.dismiss();
Toast.makeText(getApplicationContext(),
"try after some time", 4000).show();
}
} catch (NullPointerException e) {
if ((dialog.isShowing()))
dialog.dismiss();
Toast.makeText(getApplicationContext(), "try after some time",
4000).show();
}

// try {
//
// Activity activity;
//
// activity = CityAboutActivity.this;
//
// inflater = (LayoutInflater) activity
// .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
//
// imageLoader = new ImageLoader1(activity.getApplicationContext());
//
// // for (int i = 0; i < total; i++) {
//
// // imageview_left[i].setImageBitmap(bmp[i]);
// thumbpic.setTag(thumb[0]);
//
// imageLoader.DisplayImage(thumb[0], activity, thumbpic);
//
// // }
// } catch (NullPointerException f) {
// Toast.makeText(getApplicationContext(), "reload the page", 5000)
// .show();
// } catch (ArrayIndexOutOfBoundsException g) {
// Toast.makeText(getApplicationContext(), "reload the page", 5000)
// .show();
// }

// Toast.makeText(
// getApplicationContext(),
// longitude[0] + latitude[0] + thumb[0]
// + longitude[total - 1] + thumb[total - 1]
// + latitude[total - 1], 4000).show();

// for (int k = 0; k < total; k++) {
// drawable[k] = ImageOperations(getApplicationContext(), thumb[k]);
//
// }

for (int j = 0; j < total; j++) {
double lat = Double.parseDouble(latitude[j]);
double lng = Double.parseDouble(longitude[j]);

geopoint[j] = new GeoPoint((int) (lat * 1E6), (int) (lng * 1E6));
overlayitem[j] = new OverlayItem(geopoint[j], name[j],
one_liner[j]);

itemizedoverlay.addOverlay(overlayitem[j]);
}

mapOverlays.add(itemizedoverlay);

if ((dialog.isShowing()))
dialog.dismiss();

}
};

public Object fetch(String address) throws MalformedURLException,
IOException {
URL url = new URL(address);
Object content = url.getContent();
return content;
}

private Drawable ImageOperations(Context ctx, String url) {
try {
InputStream is = (InputStream) this.fetch(url);
Drawable d = Drawable.createFromStream(is, "src");
return d;
} catch (MalformedURLException e) {
return null;
} catch (IOException e) {
return null;
}
}

Thread fetchData = new Thread() {// worker thread or background thread
public void run() {

double TIMEOUT_MILLISEC = 1234567890;

HttpParams httpParams = new BasicHttpParams();
HttpConnectionParams.setConnectionTimeout(httpParams,
(int) TIMEOUT_MILLISEC);
HttpConnectionParams.setSoTimeout(httpParams,
(int) TIMEOUT_MILLISEC);
//
HttpParams p = new BasicHttpParams();
// p.setParameter("name", pvo.getName());

p.setParameter("View location", "View location");

p.setParameter("key", "c89a7662dae613ea3d20d334339b6dff");

// Instantiate an HttpClient
HttpClient httpclient = new DefaultHttpClient(p);

HttpPost httppost = new HttpPost(URL);

List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);

nameValuePairs.add(new BasicNameValuePair("View location",
"View location"));

nameValuePairs.add(new BasicNameValuePair("key",
"c89a7662dae613ea3d20d334339b6dff"));

try {
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
} catch (UnsupportedEncodingException e) { // TODO Auto-generated
// catch
;
}

ResponseHandler<String> responseHandler = new BasicResponseHandler();
try {
responseBody = httpclient.execute(httppost, responseHandler);
Log.e("aaaaaaaaaaaaaaaaaaaaaaaaa+++", responseBody.toString());
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
handler.sendEmptyMessage(0);
}

};

public class HelloItemizedOverlay1 extends ItemizedOverlay {
private ArrayList<OverlayItem> mOverlays = new ArrayList<OverlayItem>();
Context mContext;

public HelloItemizedOverlay1(Drawable defaultMarker) {
super(boundCenterBottom(defaultMarker));
// TODO Auto-generated constructor stub
}

@Override
protected OverlayItem createItem(int arg0) {
return mOverlays.get(arg0);

}

@Override
public int size() {
// TODO Auto-generated method stub
return mOverlays.size();

}

public void addOverlay(OverlayItem overlay) {
mOverlays.add(overlay);
populate();
}

public HelloItemizedOverlay1(Drawable defaultMarker, Context context) {
super(boundCenterBottom(defaultMarker));
mContext = context;
}

@Override
protected boolean onTap(final int index) {
OverlayItem item = mOverlays.get(index);
// AlertDialog.Builder dialog = new AlertDialog.Builder(mContext);
// dialog.setTitle(item.getTitle());
// dialog.setMessage(item.getSnippet()).setIcon(Map.drawable[index]);
// // dialog.setIcon(R.drawable.icon_vuforia);
//
//
//
// dialog.show();

// LayoutInflater inflater = getLayoutInflater();
// View dialoglayout = inflater.inflate(R.layout.customdialog,
// (ViewGroup) getCurrentFocus());

TextView text = (TextView) findViewById(R.id.text);
TextView head = (TextView) findViewById(R.id.head);
head.setText(item.getTitle());
text.setText(item.getSnippet());
image = (ImageView) findViewById(R.id.image);
LinearLayout layout_root = (LinearLayout) findViewById(R.id.layout_root);
// image.setImageDrawable(Map.drawable[index]);

try {

Activity activity;

activity = Map.this;

inflater = (LayoutInflater) activity
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);

imageLoader = new ImageLoader1(activity.getApplicationContext());

// for (int i = 0; i < total; i++) {

// imageview_left[i].setImageBitmap(bmp[i]);
image.setTag(thumb[index]);

imageLoader.DisplayImage(thumb[index], activity, image);

// }
} catch (NullPointerException f) {
Toast.makeText(getApplicationContext(), "reload the page", 5000)
.show();
} catch (ArrayIndexOutOfBoundsException g) {
Toast.makeText(getApplicationContext(), "reload the page", 5000)
.show();
}

// AlertDialog.Builder builder = new AlertDialog.Builder(Map.this);
// builder.setView(dialoglayout);
// builder.setTitle(item.getTitle());
// builder.show();
//
layout_root.setVisibility(View.VISIBLE);
layout_root.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View arg0) {
Intent intent = new Intent(Map.this,
TSpotDetailActivity.class);

Bundle b = new Bundle();

b.putString("mainspot_id", type_id[index]);
b.putString("sname", name[index]);
b.putString("spotpic", spotimage[index]);

intent.putExtras(b);

startActivity(intent);

}
});

return true;
}

}

}

No comments:

Post a Comment