नहीं कहा गया है, मैं एक नक्शा से संबंधित एंड्रॉइड ऐप बनाने की कोशिश कर रहा हूं, लेकिन मुझे एहसास हुआ कि मेरे ऐप का ऑनलाक्शन चेंज किया गया नहीं था, इसलिए मानचित्र हमेशा डिफ़ॉल्ट क्षेत्र (यूएस) पर रहता है।ऑनलाक्शन चेंज को
मेरी कोड:
public class MapMainActivity extends MapActivity
implements OnClickListener, LocationListener {
MapView mapView;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.map_main);
//reference
mapView = (MapView)findViewById(R.id.map_view);
mapView.setBuiltInZoomControls(true);
this.findViewById(R.id.btn_satellite).setOnClickListener(this);
this.findViewById(R.id.btn_street).setOnClickListener(this);
}//onCreate
@Override
protected void onResume() {
super.onResume();
Toast.makeText(this, "GPS tracking started",
Toast.LENGTH_SHORT).show();
// Start location updates; 5s/5m
LocationManager locManager = (LocationManager)getSystemService(
Context.LOCATION_SERVICE);
locManager.requestLocationUpdates(LocationManager.GPS_PROVIDER,
5000, 0, this);
Criteria crit = new Criteria();
crit.setAccuracy(Criteria.ACCURACY_FINE);
String provider = locManager.getBestProvider(crit, true);
Location loc = locManager.getLastKnownLocation(provider);
}//onResume
@Override
protected void onPause() {
super.onPause();
Toast.makeText(this, "GPS tracking stopped",
Toast.LENGTH_SHORT).show();
LocationManager locManager = (LocationManager)getSystemService(
Context.LOCATION_SERVICE);
locManager.removeUpdates(this);
}//onPause
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
if(v == findViewById(R.id.btn_street))
{
mapView.setSatellite(false);
}//street view
else if (v == findViewById(R.id.btn_satellite))
{
mapView.setSatellite(true);
}
}//onClick
@Override
protected boolean isRouteDisplayed() {
// TODO Auto-generated method stub
return false;
}//isRouteDisplayed
@Override
public void onLocationChanged(Location location) {
// TODO Auto-generated method stub
double lat = location.getLatitude();
double lon = location.getLongitude();
TextView txtLat = (TextView)findViewById(R.id.txt_lat);
txtLat.setText(String.format("%.6f", lat));
TextView txtLon = (TextView)findViewById(R.id.txt_lon);
txtLon.setText(String.format("%.6f", lon));
MapView map = (MapView)findViewById(R.id.map_view);
map.getController().animateTo(new GeoPoint((int)(lat*1E6),//1000000),
(int)(lon*1E6)));
}//onLocationChanged
@Override
public void onProviderDisabled(String provider) {
// TODO Auto-generated method stub
Toast.makeText(this, "GPS disabled",
Toast.LENGTH_SHORT).show();
}//onProviderDisabled
@Override
public void onProviderEnabled(String provider) {
// TODO Auto-generated method stub
Toast.makeText(this, "GPS enabled",
Toast.LENGTH_SHORT).show();
}//onProviderEnabled
@Override
public void onStatusChanged(String provider, int status, Bundle extras) {
// TODO Auto-generated method stub
}//onStatusChanged
}//class
मेरी लॉग बिल्ली के पूरे जब मैं अपने डिवाइस के माध्यम से अनुप्रयोग चलाने (16/12/2011)
D/InputTransport(5357): Input channel constructed: name='40baf680 Toast (client)', ashmemFd=54, receivePipeFd=57, sendPipeFd=58
I/MapActivity(5357): Handling network change notification:CONNECTED
E/MapActivity(5357): Couldn't get connection factory client
I/ViewRoot(5357): [email protected] DRAWING : sg.edu.tp/sg.edu.tp.SIP_TestMapActivity
I/ViewRoot(5357): [email protected] is completed : sg.edu.tp/sg.edu.tp.SIP_TestMapActivity
I/ViewRoot(5357): [email protected] DRAWING : Toast
I/ViewRoot(5357): [email protected] is completed : Toast
D/InputTransport(5357): Input channel destroyed: name='40baf680 Toast (client)', ashmemFd=54, receivePipeFd=57, sendPipeFd=58
प्रकट:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="sg.edu.tp"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk android:minSdkVersion="10" />
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<activity
android:label="@string/app_name"
android:name=".SIP_MLT_TestActivity" >
<intent-filter >
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<uses-library android:name="com.google.android.maps" />
<activity android:name=".SIP_TestMapActivity"></activity>
<activity android:name=".SIP_TestDraw1Activity"></activity>
<activity android:name=".SIP_TestDraw2Activity"></activity>
</application>
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
</manifest>
आपने स्थान कैसे बदल दिया ?? – freshDroid
एर ... मैं वास्तव में आपका मतलब प्राप्त नहीं करता हूं। लेकिन, चूंकि मैं राज्य में नहीं हूं, जब मैं ऐप चलाता हूं तो इसे राज्य मानचित्र प्रदर्शित नहीं करना चाहिए। – Jovi
r आप इसे एमुलेटर – freshDroid