| |||||||
Das Thema "Eigenen Standort mit GoogleMaps anzeigen" befindet sich unter Android App Entwicklung auf Android-Hilfe.de.
|
| | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Android-Hilfe.de Mitglied Registriert seit: 31.10.2011
Beiträge: 85
Abgegebene Danke: 3
Erhielt 0 Danke für 0 Beiträge
| Hallo Users, seit Tagen kämpfe ich damit , dass mein eigener Standort auf der GoogleMap Karte nicht angezeigt wird (z.b als ein Pfeil, ein farbiges Punkt, wie auch immer). Dafür habe ich ne Klasse erstellt : Code:
public class HelloGoogleMaps extends MapActivity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
MapView mapView = (MapView) findViewById(R.id.mapView);
mapView.setBuiltInZoomControls(true);
final List<Overlay> mapOverlays = mapView.getOverlays();
Drawable drawable = this.getResources().getDrawable(R.drawable.ic_launcher);
final ITO itemizedoverlay = new ITO(drawable);
final MapController controller = mapView.getController();
LocationManager locationManager = (LocationManager) this.getSystemService(Context.LOCATION_SERVICE);
LocationListener listener = new LocationListener() {
@Override
public void onLocationChanged(Location location) {
// TODO Auto-generated method stub
GeoPoint point = new GeoPoint((int) location.getLatitude() * (int)1E6, (int) location.getLongitude()* (int)1E6);
controller.setCenter(point);
OverlayItem overlayitem = new OverlayItem(point, "Hola, Mundo!", "I'm in Mexico City!");
itemizedoverlay.addOverlay(overlayitem);
mapOverlays.add(itemizedoverlay);
}
};
locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 6000, 10, listener);
}
} Code: public class ITO extends ItemizedOverlay {
private ArrayList<OverlayItem> mOverlays = new ArrayList<OverlayItem>();
Context mContext;
public ITO(Drawable defaultMarker) {
super(boundCenter(defaultMarker));
// TODO Auto-generated constructor stub
}
public ITO(Drawable defaultMarker, Context context) {
super(defaultMarker);
mContext = context;
}
/* (non-Javadoc)
* @see com.google.android.maps.ItemizedOverlay#createItem(int)
*/
@Override
protected OverlayItem createItem(int arg0) {
// TODO Auto-generated method stub
return mOverlays.get(arg0);
}
public void addOverlay(OverlayItem overlay) {
mOverlays.add(overlay);
populate();
}
/* (non-Javadoc)
* @see com.google.android.maps.ItemizedOverlay#size()
*/
@Override
public int size() {
// TODO Auto-generated method stub
return mOverlays.size();
}
@Override
protected boolean onTap(int index) {
OverlayItem item = mOverlays.get(index);
AlertDialog.Builder dialog = new AlertDialog.Builder(mContext);
dialog.setTitle(item.getTitle());
dialog.setMessage(item.getSnippet());
dialog.show();
return true;
}
} Die Sachen : <uses-permission android:name="android.permission.ACCESS_FINE_LOCAT ION"/> <uses-permission android:name="android.permission.INTERNET"/> <uses-library android:name="com.google.android.maps"/> sind auch in der AndroidManifest drin. Bei der Ausführung am Handy, geht GPS an. Die Position wird gezeigt, nur die Stadt wo ich bin ist leider die falsche. Beim klicken auf das Icon wo ich mich befinde , stürzt die App ab. die Logcat ausgaben sind folgende: Code: 11-20 21:09:09.934: I/MapActivity(23074): Handling network change notification:CONNECTED
11-20 21:09:09.944: E/MapActivity(23074): Couldn't get connection factory client
11-20 21:09:09.944: I/ActivityThread(23074): queueIdle
11-20 21:09:09.944: V/ActivityThread(23074): Reporting idle of ActivityRecord{4a4054d0 token=android.os.BinderProxy@4a405038 {t.m/t.m.HelloGoogleMaps}} finished=false
11-20 21:09:09.944: W/ActivityNative(23074): send ACTIVITY_IDLE_TRANSACTION
11-20 21:09:13.074: W/dalvikvm(23074): threadid=1: thread exiting with uncaught exception (group=0x400207d8)
11-20 21:09:13.084: E/AndroidRuntime(23074): FATAL EXCEPTION: main
11-20 21:09:13.084: E/AndroidRuntime(23074): java.lang.NullPointerException
11-20 21:09:13.084: E/AndroidRuntime(23074): at com.android.internal.app.AlertController$AlertParams.<init>(AlertController.java:743)
11-20 21:09:13.084: E/AndroidRuntime(23074): at android.app.AlertDialog$Builder.<init>(AlertDialog.java:273)
11-20 21:09:13.084: E/AndroidRuntime(23074): at t.m.ITO.onTap(ITO.java:58)
11-20 21:09:13.084: E/AndroidRuntime(23074): at com.google.android.maps.ItemizedOverlay.onTap(ItemizedOverlay.java:453)
11-20 21:09:13.084: E/AndroidRuntime(23074): at com.google.android.maps.OverlayBundle.onTap(OverlayBundle.java:83)
11-20 21:09:13.084: E/AndroidRuntime(23074): at com.google.android.maps.MapView$1.onSingleTapUp(MapView.java:347)
11-20 21:09:13.084: E/AndroidRuntime(23074): at com.google.android.maps.GestureDetector.onTouchEvent(GestureDetector.java:533)
11-20 21:09:13.084: E/AndroidRuntime(23074): at com.google.android.maps.MapView.onTouchEvent(MapView.java:647)
11-20 21:09:13.084: E/AndroidRuntime(23074): at android.view.View.dispatchTouchEvent(View.java:3766)
11-20 21:09:13.084: E/AndroidRuntime(23074): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:897)
11-20 21:09:13.084: E/AndroidRuntime(23074): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:936)
11-20 21:09:13.084: E/AndroidRuntime(23074): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:936)
11-20 21:09:13.084: E/AndroidRuntime(23074): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:936)
11-20 21:09:13.084: E/AndroidRuntime(23074): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:936)
11-20 21:09:13.084: E/AndroidRuntime(23074): at com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:1731)
11-20 21:09:13.084: E/AndroidRuntime(23074): at com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1120)
11-20 21:09:13.084: E/AndroidRuntime(23074): at android.app.Activity.dispatchTouchEvent(Activity.java:2086)
11-20 21:09:13.084: E/AndroidRuntime(23074): at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:1715)
11-20 21:09:13.084: E/AndroidRuntime(23074): at android.view.ViewRoot.handleMessage(ViewRoot.java:1787)
11-20 21:09:13.084: E/AndroidRuntime(23074): at android.os.Handler.dispatchMessage(Handler.java:99)
11-20 21:09:13.084: E/AndroidRuntime(23074): at android.os.Looper.loop(Looper.java:123)
11-20 21:09:13.084: E/AndroidRuntime(23074): at android.app.ActivityThread.main(ActivityThread.java:4633)
11-20 21:09:13.084: E/AndroidRuntime(23074): at java.lang.reflect.Method.invokeNative(Native Method)
11-20 21:09:13.084: E/AndroidRuntime(23074): at java.lang.reflect.Method.invoke(Method.java:521)
11-20 21:09:13.084: E/AndroidRuntime(23074): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:858)
11-20 21:09:13.084: E/AndroidRuntime(23074): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
11-20 21:09:13.084: E/AndroidRuntime(23074): at dalvik.system.NativeStart.main(Native Method) Geändert von zblack (20.11.2011 um 21:15 Uhr) |
| | |
| | #4 (permalink) |
| Android-Hilfe.de Mitglied Registriert seit: 31.10.2011
Beiträge: 85
Abgegebene Danke: 3
Erhielt 0 Danke für 0 Beiträge
|
ok. NullPointer wurde beseitigt, aber warum zeigt er mir mein Standort ungenau an ? Ich befinde mich laut der Karte im Nachbarhaus. |
| | |
| | #6 (permalink) |
| Android-Hilfe.de Mitglied Registriert seit: 31.10.2011
Beiträge: 85
Abgegebene Danke: 3
Erhielt 0 Danke für 0 Beiträge
|
ja so ca 50 meter vlt weniger bin ich von meinem tatsächlichem Standort entfernt
Geändert von zblack (21.11.2011 um 18:21 Uhr) |
| | |
| | #7 (permalink) |
| Android-Hilfe.de Mitglied |
GPS-Genauigkeit kann sich bis zu 10m verbessern, muss halt alle ungenauen Signale ausfiltern. Location | Android Developers regards |
| | |
![]() |
|
| Themen-Optionen | |
| Ansicht | |
| |
| ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Bilder: Standort auf Karte anzeigen passt nicht | Garfieldonline | Samsung Galaxy S2 (I9100) Forum | 1 | 18.05.2012 11:20 |
| Fotos Details Standort anzeigen | Duffy81 | Samsung Galaxy S (I9000) Forum | 2 | 21.05.2011 21:08 |
| Keine Wetteranimation beim eigenen Standort! | jarc | HTC Desire Forum | 10 | 18.12.2010 08:58 |
| Ihr Standort ungefährer (netzwerkbasierter) Standort, genauer (GPS-) Standort | PeeG | Android App Entwicklung | 1 | 01.11.2010 11:17 |
| Mytracks, wie Strecke auf Googlemaps anzeigen? | Schanzer | Sonstige Apps & Widgets | 5 | 27.08.2010 11:35 |