2014-07-03 11 views
16

Wszystko działało poprawnie, a następnie nagle zaszło zerwanie, prosząc o zmianę perspektywy i przechodząc do trybu debugowania z błąd "Link klasy" Lcom/google/android/gms/location/internal/ParcelableGeoFence; " nie udało się. Googlowanie o problemie do nikąd. Punkty debugowania linii PathClassLoader (BaseDexClassLoader) .findClass (String) linia: 61
Dziwnie, gdy usuwam map.setMyLocationEnabled (true); z mojego kodu już nie wywala, ale wciąż widzę to w LogCatNie można znaleźć klasy "com.google.android.gms.location.internal.ParcelableGeofence", do której odwołuje się metoda glt.a

E/dalvikvm(5639): Could not find class 'gpr', referenced from method gps.a 
W/dalvikvm(5639): VFY: unable to resolve new-instance 4090 (Lgpr;) in Lgps; 

tutaj jest pełna dziennika:

07-03 13:07:31.677: W/dalvikvm(5639): VFY: unable to resolve static method 24936: Lguj;.a 

(Landroid/content/Context;)Lgri; 
07-03 13:07:31.697: E/dalvikvm(5639): Could not find class 'gpr', referenced from method gps.a 
07-03 13:07:31.697: W/dalvikvm(5639): VFY: unable to resolve new-instance 4090 (Lgpr;) in Lgps; 
07-03 13:07:31.697: E/dalvikvm(5639): Could not find class 'gpr', referenced from method gps.a 
07-03 13:07:31.697: W/dalvikvm(5639): VFY: unable to resolve new-instance 4090 (Lgpr;) in Lgps; 
07-03 13:07:31.697: E/dalvikvm(5639): Could not find class 'gpr', referenced from method gps.a 
07-03 13:07:31.697: W/dalvikvm(5639): VFY: unable to resolve new-instance 4090 (Lgpr;) in Lgps; 
07-03 13:07:31.707: I/Google Maps Android API(5639): Google Play services package version: 5084034 
07-03 13:07:31.737: W/dalvikvm(5639): VFY: unable to resolve static field 20873 (t) in Lyp; 
07-03 13:07:31.737: W/dalvikvm(5639): VFY: unable to resolve static field 20873 (t) in Lyp; 
07-03 13:07:32.778: W/dalvikvm(5639): Link of class 'Lcom/google/android/gms/location/internal/ParcelableGeofence;' failed 
07-03 13:07:32.778: E/dalvikvm(5639): Could not find class 'com.google.android.gms.location.internal.ParcelableGeofence', referenced from method glt.a 
07-03 13:07:32.778: W/dalvikvm(5639): VFY: unable to resolve check-cast 2086 (Lcom/google/android/gms/location/internal/ParcelableGeofence;) in Lglt; 
07-03 13:07:34.089: I/Adreno200-EGLSUB(5639): <ConfigWindowMatch:2078>: Format RGBA_8888. 
07-03 13:07:34.319: D/LOCATION(5639): Connected 
07-03 13:07:34.319: I/Adreno200-EGLSUB(5639): <ConfigWindowMatch:2089>: Format RGBX_8888. 

Odpowiedz

1

problem jest prawdopodobnie dzieje się dlatego, że mapa nie jest załadowana a aplikacja próbuje aby znaleźć cię na rozładowanej mapie. Mapa nie ładuje się z kluczem api lub nazwą pakietu. Myślę, że twój klucz do API został zmieniony. Sprawdź klucz api i nazwę pakietu.

+0

Tak nie jest, niezależnie od tego, kiedy zadzwonię map.setMyLocationEnabled (true); również klucz API nie został zmieniony. Odtworzyłem nawet kod przez kilka dni przez git, ale wciąż nie miałem szczęścia, myślę, że jest to coś związanego z adt. – Vilen

+0

Czy zrobiłeś aktualizację zaćmienia? Coz, które zmieni kod uroku sha1. I dlatego twój kluczowy interfejs musi zostać zmieniony. –

+0

Nie, nie zrobiłem, ale wciąż stworzyłem nowy klucz api mapy, niestety bez powodzenia. Dziwne jest to, że aplikacja działa po tym błędzie. – Vilen

-2

Dla mnie ustawienie preferencji Eclipse -> Android -> Kompilacja -> Niestandardowy magazyn kluczy rozwiązał problem. Odinstaluj też aplikację i wyczyść kompilację.

+0

wypróbowałem to, utworzyłem nowy klucz niestandardowy, następnie klucz Google api oparty na niestandardowym magazynie kluczy, odinstalowałem projekt z urządzenia, wyczyściłem obszar roboczy, ale nie zmiana, w każdym razie dzięki za pomoc – Vilen

+0

Naprawiono problem dla mnie .... – SpyZip

0

zrobiłem dwie rzeczy, aby mapie google do pracy:

  1. Użyj MapView zamiast MapFragment lub SupportMapFragment.
  2. jeśli mapa ty realizowane wykorzystuje aktualną pozycję użytkownika, wówczas należy sprawdzić, czy użytkownik umożliwiły jego służba lokalizacja i realizować swoją mapę na podstawie, że stosując metodę

jak tak na przykład:

public boolean isLocationServiceEnabled() { 
    LocationManager locationManager = (LocationManager) getActivity().getSystemService(Context.LOCATION_SERVICE); 
    if(!locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER) && !locationManager.isProviderEnabled(LocationManager.NETWORK_PROVIDER)) { 
      //All location services are disabled 
     return false; 
    } 
    return true; 
} 
-1

Dla nowych użytkowników, jeśli kod i klucz API są w porządku, sprawdź, czy urządzenie ma połączenie z Internetem. Ponieważ zapomniałem włączyć Internet, dostałem ten sam błąd.

+0

Daj spokój, myślisz, że debuguję aplikację mapową bez połączenia z Internetem lub nieprawidłowy klucz API? i tak wielu ludzi ma ten sam problem? – Vilen

+0

Ta odpowiedź dla programisty, który debuguje aplikację mapową bez połączenia z internetem, ponieważ jesteśmy ludźmi, więc MAYBE możemy zapomnieć o otwarciu połączenia internetowego podczas debugowania. Ta odpowiedź jest po prostu PORADY, ABY SPRAWDZIĆ, ŻE POŁĄCZENIE MAYBE NIE JEST OK – Ozan

Powiązane problemy