6
votes

Marquage Emplacement actuel sur la carte, Android

J'ai suivi certains tutoriels pour créer une application qui affiche la position actuelle de l'utilisateur sur la carte avec un marquage. Mais pour des raisons pour des raisons, je ne peux pas faire travailler la partie marquage? Les autres parties fonctionnent bien, mais chaque fois que j'ajoute le code de marquage, les accidents de l'application.
Voici le code:

    01-19 05:31:43.011: DEBUG/AndroidRuntime(759): >>>>>>>>>>>>>> AndroidRuntime START <<<<<<<<<<<<<<
01-19 05:31:43.011: DEBUG/AndroidRuntime(759): CheckJNI is ON
01-19 05:31:43.411: DEBUG/AndroidRuntime(759): --- registering native functions ---
01-19 05:31:43.431: INFO/jdwp(759): received file descriptor 19 from ADB
01-19 05:31:43.431: INFO/jdwp(759): Ignoring second debugger -- accepting and dropping
01-19 05:31:44.531: INFO/ActivityManager(583): Starting activity: Intent { flg=0x10000000 cmp=pro.googlemapp/.LocationActivity }
01-19 05:31:44.641: DEBUG/AndroidRuntime(759): Shutting down VM
01-19 05:31:44.641: DEBUG/dalvikvm(759): DestroyJavaVM waiting for non-daemon threads to exit
01-19 05:31:44.641: DEBUG/dalvikvm(759): DestroyJavaVM shutting VM down
01-19 05:31:44.641: DEBUG/dalvikvm(759): HeapWorker thread shutting down
01-19 05:31:44.651: DEBUG/dalvikvm(759): HeapWorker thread has shut down
01-19 05:31:44.651: DEBUG/jdwp(759): JDWP shutting down net...
01-19 05:31:44.651: DEBUG/jdwp(759): +++ peer disconnected
01-19 05:31:44.651: INFO/dalvikvm(759): Debugger has detached; object registry had 1 entries
01-19 05:31:44.661: DEBUG/dalvikvm(759): VM cleaning up
01-19 05:31:44.681: INFO/ActivityManager(583): Start proc pro.googlemapp for activity pro.googlemapp/.LocationActivity: pid=770 uid=10025 gids={3003}
01-19 05:31:44.761: DEBUG/dalvikvm(759): LinearAlloc 0x0 used 676436 of 4194304 (16%)
01-19 05:31:44.801: INFO/jdwp(770): received file descriptor 20 from ADB
01-19 05:31:44.822: INFO/dalvikvm(770): ignoring registerObject request in thread=3
01-19 05:31:44.851: INFO/jdwp(770): Ignoring second debugger -- accepting and dropping
01-19 05:31:44.851: ERROR/jdwp(770): Failed writing handshake bytes: Broken pipe (-1 of 14)
01-19 05:31:44.851: INFO/dalvikvm(770): Debugger has detached; object registry had 0 entries
01-19 05:31:45.320: ERROR/ActivityThread(770): Failed to find provider info for com.google.settings
01-19 05:31:45.320: ERROR/ActivityThread(770): Failed to find provider info for com.google.settings
01-19 05:31:45.340: ERROR/ActivityThread(770): Failed to find provider info for com.google.settings
01-19 05:31:45.781: DEBUG/LocationManager(770): Constructor: service = android.location.ILocationManager$Stub$Proxy@4379d9f0
01-19 05:31:45.791: WARN/GpsLocationProvider(583): Duplicate add listener for uid 10025
01-19 05:31:45.791: DEBUG/GpsLocationProvider(583): setMinTime 0
01-19 05:31:45.791: DEBUG/GpsLocationProvider(583): startNavigating
01-19 05:31:45.831: INFO/jdwp(770): received file descriptor 27 from ADB
01-19 05:31:46.001: INFO/MapActivity(770): Handling network change notification:CONNECTED
01-19 05:31:46.001: ERROR/MapActivity(770): Couldn't get connection factory client
01-19 05:31:46.451: DEBUG/dalvikvm(770): GC freed 4539 objects / 298952 bytes in 118ms
01-19 05:31:46.470: DEBUG/AndroidRuntime(770): Shutting down VM
01-19 05:31:46.470: WARN/dalvikvm(770): threadid=3: thread exiting with uncaught exception (group=0x4001aa28)
01-19 05:31:46.481: ERROR/AndroidRuntime(770): Uncaught handler: thread main exiting due to uncaught exception
01-19 05:31:46.541: ERROR/AndroidRuntime(770): java.lang.NullPointerException
01-19 05:31:46.541: ERROR/AndroidRuntime(770):     at com.google.android.maps.PixelConverter.toPixels(PixelConverter.java:58)
01-19 05:31:46.541: ERROR/AndroidRuntime(770):     at com.google.android.maps.PixelConverter.toPixels(PixelConverter.java:48)
01-19 05:31:46.541: ERROR/AndroidRuntime(770):     at pro.googlemapp.LocationActivity$MyLocationOverlay.draw(LocationActivity.java:101)
01-19 05:31:46.541: ERROR/AndroidRuntime(770):     at com.google.android.maps.OverlayBundle.draw(OverlayBundle.java:42)
01-19 05:31:46.541: ERROR/AndroidRuntime(770):     at com.google.android.maps.MapView.onDraw(MapView.java:476)
01-19 05:31:46.541: ERROR/AndroidRuntime(770):     at android.view.View.draw(View.java:6274)
01-19 05:31:46.541: ERROR/AndroidRuntime(770):     at android.view.ViewGroup.drawChild(ViewGroup.java:1526)
01-19 05:31:46.541: ERROR/AndroidRuntime(770):     at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1256)
01-19 05:31:46.541: ERROR/AndroidRuntime(770):     at android.view.ViewGroup.drawChild(ViewGroup.java:1524)
01-19 05:31:46.541: ERROR/AndroidRuntime(770):     at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1256)
01-19 05:31:46.541: ERROR/AndroidRuntime(770):     at android.view.View.draw(View.java:6277)
01-19 05:31:46.541: ERROR/AndroidRuntime(770):     at android.widget.FrameLayout.draw(FrameLayout.java:352)
01-19 05:31:46.541: ERROR/AndroidRuntime(770):     at android.view.ViewGroup.drawChild(ViewGroup.java:1526)
01-19 05:31:46.541: ERROR/AndroidRuntime(770):     at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1256)
01-19 05:31:46.541: ERROR/AndroidRuntime(770):     at android.view.ViewGroup.drawChild(ViewGroup.java:1524)
01-19 05:31:46.541: ERROR/AndroidRuntime(770):     at android.view.ViewGroup.dispatchDraw(ViewGroup.java:1256)
01-19 05:31:46.541: ERROR/AndroidRuntime(770):     at android.view.View.draw(View.java:6277)
01-19 05:31:46.541: ERROR/AndroidRuntime(770):     at android.widget.FrameLayout.draw(FrameLayout.java:352)
01-19 05:31:46.541: ERROR/AndroidRuntime(770):     at com.android.internal.policy.impl.PhoneWindow$DecorView.draw(PhoneWindow.java:1883)
01-19 05:31:46.541: ERROR/AndroidRuntime(770):     at android.view.ViewRoot.draw(ViewRoot.java:1332)
01-19 05:31:46.541: ERROR/AndroidRuntime(770):     at android.view.ViewRoot.performTraversals(ViewRoot.java:1097)
01-19 05:31:46.541: ERROR/AndroidRuntime(770):     at android.view.ViewRoot.handleMessage(ViewRoot.java:1613)
01-19 05:31:46.541: ERROR/AndroidRuntime(770):     at android.os.Handler.dispatchMessage(Handler.java:99)
01-19 05:31:46.541: ERROR/AndroidRuntime(770):     at android.os.Looper.loop(Looper.java:123)
01-19 05:31:46.541: ERROR/AndroidRuntime(770):     at android.app.ActivityThread.main(ActivityThread.java:4203)
01-19 05:31:46.541: ERROR/AndroidRuntime(770):     at java.lang.reflect.Method.invokeNative(Native Method)
01-19 05:31:46.541: ERROR/AndroidRuntime(770):     at java.lang.reflect.Method.invoke(Method.java:521)
01-19 05:31:46.541: ERROR/AndroidRuntime(770):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:791)
01-19 05:31:46.541: ERROR/AndroidRuntime(770):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:549)
01-19 05:31:46.541: ERROR/AndroidRuntime(770):     at dalvik.system.NativeStart.main(Native Method)
01-19 05:31:46.551: INFO/Process(583): Sending signal. PID: 770 SIG: 3
01-19 05:31:46.581: INFO/dalvikvm(770): threadid=7: reacting to signal 3
01-19 05:31:46.661: INFO/dalvikvm(770): Wrote stack trace to '/data/anr/traces.txt'
01-19 05:31:46.871: INFO/ARMAssembler(583): generated scanline__00000077:03515104_00000000_00000000 [ 27 ipp] (41 ins) at [0x2c69c8:0x2c6a6c] in 973448 ns
01-19 05:31:46.911: INFO/ARMAssembler(583): generated scanline__00000077:03515104_00001001_00000000 [ 64 ipp] (84 ins) at [0x2c6a70:0x2c6bc0] in 1985378 ns
01-19 05:31:49.881: INFO/Process(770): Sending signal. PID: 770 SIG: 9
01-19 05:31:49.931: INFO/ActivityManager(583): Process pro.googlemapp (pid 770) has died.
01-19 05:31:49.941: WARN/GpsLocationProvider(583): Unneeded remove listener for uid 1000
01-19 05:31:49.941: DEBUG/GpsLocationProvider(583): stopNavigating
01-19 05:31:49.951: INFO/WindowManager(583): WIN DEATH: Window{438891c0 pro.googlemapp/pro.googlemapp.LocationActivity paused=false}
01-19 05:31:50.111: WARN/UsageStats(583): Unexpected resume of com.android.launcher while already resumed in pro.googlemapp
01-19 05:31:50.200: WARN/InputManagerService(583): Got RemoteException sending setActive(false) notification to pid 770 uid 10025


1 commentaires

Voulez-vous s'il vous plaît poster le journal de l'accident? Il serait utile que nous pouvions voir la trace de la pile, nous savons donc quelle ligne se bloque.


5 Réponses :


0
votes

C'est quelque chose qui pourrait vous aider à faire de votre byg:

http://code.google.com/p/android / Problèmes / Détails? ID = 2035


0 commentaires

3
votes

Le géopoint "P" dans la mylocatoverlay est null. Lorsque vous rejouez "Geopoint Initigeopoint" avec "P", vous pouvez résoudre ce problème.


0 commentaires

0
votes

Dans vos journaux Regardez cette ligne 01-19 05: 31: 46.541: Erreur / AndroiDruntime (770): à pro.googlemapp.locallocsactivité $ mylocalisationoverlay.draw (emplacementactivité.java:101)

Ceci fait référence au géopoint p . Au début, vous avez défini la valeur de p à null (comme "Asdf") et ne change jamais sa valeur à un géopoint et c'est pourquoi vous obtenez Java .lang.nullpointereException .

Par exemple, vous pouvez définir la valeur de p comme ceci: p = nouveau géopoint (19240000, -991200000000); et bien sûr, cela doit arriver avant cette ligne < Code> MapView.getProjection (). Topixels (P, MyScreenconords); de votre code.

bonne chance


0 commentaires

9
votes

La façon dont vous construisez que la mylocalisationoverlay pourrait avoir un problème.

myLocalisationOverLay myLocalisationOverlay = nouveau myLocalisationOverlay (ceci, MapView); CODE> P>

P>

http://code.google.com/intl/zh-cn/andrroid/add-ons/google-apis/reference/index.html "rel =" noreferrer "> API de code Google Vous devez passer un Contexte et un paramètre MAPView param. p>

puis mettez ce code après que P>

mylocationOverlay.enableMyLocation();
mapView.getOverlays().add(locationOverlay);


0 commentaires

0
votes

Ceci est parce que la valeur Geopoint P est NULL dans la classe MyLocationListener. Donc, lorsque vous avez appelé mapview.getProjection (). Topixels (P, MyScreenconords); Parce que p est null, il est incapable de convertir les topixels et jette une exception. Vous pouvez surmonter à ce sujet en déclarez simplement votre géopoint P comme statique dans votre emplacement de localisation.


0 commentaires