Não foi possível localizar a classe com.google.android.gms.location.internal.ParcelableGeofence ' referenciado a partir de método glt.a

? Naveen Kumar @ | Original: StackOverFlow
---

Eu tenho um aplicativo onde homepage é o mapa .

Não sei por que eu estou recebendo este erro e junto com este erro Could not find class 'gpr', referenced from method gps.a

Eu atualizei eclipse assim que eu tentei mudar a chave da API com a nova impressão digital SHA1 . Mas isso não funciona.

Meu aplicativo é para mostrar a localização atual quando você abre o app . Ele acaba de desembarcar em todo mapa, mas em LOG gato eu recebo esses erros. Aqui está o meu Logcat

`07-08 12:54:39.897: I/Google Maps Android API(25749): Google Play services client version: 5077000

 07-08 12:54:39.907: I/dalvikvm(25749): Could not find method guj.a, referenced from method gqi.a

 07-08 12:54:39.907: W/dalvikvm(25749): VFY: unable to resolve static method 24936: Lguj;.a (Landroid/content/Context;)Lgri;

 07-08 12:54:39.907: D/dalvikvm(25749): VFY: replacing opcode 0x71 at 0x0003

 07-08 12:54:39.917: E/dalvikvm(25749): Could not find class 'gpr', referenced from method gps.a

 07-08 12:54:39.917: W/dalvikvm(25749): VFY: unable to resolve new-instance 4090 (Lgpr;) in Lgps;

 07-08 12:54:39.917: D/dalvikvm(25749): VFY: replacing opcode 0x22 at 0x0000

 07-08 12:54:39.927: E/dalvikvm(25749): Could not find class 'gpr', referenced from method gps.a

 07-08 12:54:39.927: W/dalvikvm(25749): VFY: unable to resolve new-instance 4090 (Lgpr;) in Lgps;

 07-08 12:54:39.927: D/dalvikvm(25749): VFY: replacing opcode 0x22 at 0x0000

 07-08 12:54:39.927: E/dalvikvm(25749): Could not find class 'gpr', referenced from method gps.a

 07-08 12:54:39.927: W/dalvikvm(25749): VFY: unable to resolve new-instance 4090 (Lgpr;) in Lgps;

 07-08 12:54:39.927: D/dalvikvm(25749): VFY: replacing opcode 0x22 at 0x0000

 07-08 12:54:39.937: D/dalvikvm(25749): DexOpt: unable to opt direct call 0x5ea3 at 0x0a in Lgps;.a

 07-08 12:54:39.937: D/dalvikvm(25749): DexOpt: unable to opt direct call 0x5ea3 at 0x0c in Lgps;.a

 07-08 12:54:39.937: D/dalvikvm(25749): DexOpt: unable to opt direct call 0x5ea3 at 0x0a in Lgps;.a

 07-08 12:54:39.957: I/Google Maps Android API(25749): Google Play services package version: 5084034

 07-08 12:54:39.977: W/dalvikvm(25749): VFY: unable to resolve static field 20873 (t) in Lyp;

 07-08 12:54:39.977: D/dalvikvm(25749): VFY: replacing opcode 0x62 at 0x000e
 07-08 12:54:39.977: W/dalvikvm(25749): VFY: unable to resolve static field 20873 (t) in Lyp;

 07-08 12:54:39.977: D/dalvikvm(25749): VFY: replacing opcode 0x62 at 0x000d

 07-08 12:54:40.888: I/dalvikvm(25749): Failed resolving Lcom/google/android/gms/location/internal/ParcelableGeofence; interface 4023 'Lgln;'

 07-08 12:54:40.888: W/dalvikvm(25749): Link of class 'Lcom/google/android/gms/location/internal/ParcelableGeofence;' failed

 07-08 12:54:40.898: E/dalvikvm(25749): Could not find class 'com.google.android.gms.location.internal.ParcelableGeofence', referenced from method glt.a

 07-08 12:54:40.898: W/dalvikvm(25749): VFY: unable to resolve check-cast 2086 (Lcom/google/android/gms/location/internal/ParcelableGeofence;) in Lglt;

 07-08 12:54:40.898: D/dalvikvm(25749): VFY: replacing opcode 0x1f at 0x0019

 07-08 12:54:41.589: W/ActivityThread(25749): ClassLoader.loadClass: The class loader returned by Thread.getContextClassLoader() may fail for processes that host multiple applications. You should explicitly specify a context class loader. For example: Thread.setContextClassLoader(getClass().getClassLoader());`

Tentei pesquisar no Google ao redor e parece que não há nenhuma solução adequada ainda assim seria útil se alguém poderia me ajudar com isso.

---

Top 5 Responder

1Alex Ferrer Developer @

Eu te mostrar como eu resolver o mesmo problema que você tem.

Primeiro de tudo, eu limpei tudo SDK e eu baixei de novo Google Play Serviços lib. Então eu removi pasta .android de meu computador e eu regenerado minha debug.keystore .

Depois disso, acabei de receber meu novo SHA1 para obter o meu Google Maps V2 Api Key .

Depois de atualizar o meu apiKey, vamos ver como eu alterar meu código .

Agora eu uso fragmento com MapFragment insted de MapView em seu layout xml.

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MapsActivity" >

    <fragment
        android:id="@+id/map"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        class="com.google.android.gms.maps.MapFragment" />

</RelativeLayout> 

E use FragmentManager para localizá-lo :

    public class MapsActivity extends Activity
{
    private GoogleMap map;

    @Override
    protected void onCreate(Bundle savedInstanceState) 
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_map);

        // Gets the MapView from the XML layout and creates it
        map = ((MapFragment) getFragmentManager().findFragmentById(R.id.map)).getMap();
        map.getUiSettings().setMyLocationButtonEnabled(false);
        //map.setMyLocationEnabled(true);
        map.setOnMapClickListener(this);
        map.setOnMapLongClickListener(this);
        try 
        {
            MapsInitializer.initialize(MapsActivity.this);
        } 
        catch (Exception e) 
        {
            e.printStackTrace();
        }
    }

Espero que seja útil e desculpe se o meu Inglês é tão ruim, relação

2Autocyclist @

Você poderia postar o seu manifesto ? Sans chave de API, é claro.

Seu log parece quase idêntico ao meu para um problema que eu tive recentemente, o que foi corrigido, adicionando o seguinte para o manifesto :

 <uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" />

Eu estou trabalhando em um aplicativo que estava acessando mapas muito bem, em seguida, parou de repente . Eu não conseguia ver nada, na verdade, apontando para uma permissão de falta; Eu só pegou nele quando comparei o manifesto com outro aplicativo que usou Maps API v2.

Eu ainda estou confuso sobre o porquê ele já trabalhou sem ele (Google diz que você precisa da permissão de mapas para o trabalho) . Talvez eu disse uma vez lá e apagados acidentalmente a linha, mas de qualquer forma de colocá-lo em é o que fixa-lo .

fonte :  https://developers.google.com/maps/documentation/business/mobile/android/config

3virtualSO @

Eu tive o mesmo problema após a atualização para Nível API 23 em julho (com cliente google- play- service_lib 5.0.77 ) .

O problema foi resolvido após a Google Play Serviço foi atualizado para a última ( 6.1.09 ) no dispositivo de teste.

Assim, parece ter sido (a questão específica do dispositivo ), devido à incompatibilidade entre a versão do Google Play Serviço no dispositivo / emulador ea API biblioteca cliente (google -play - service_lib ) no projeto.

De acordo com a documentação do Google, quando o cliente é mais recente do que o serviço, a API biblioteca cliente é suposto para resolver problemas apk serviço fora da data; ( e ele faz, neste caso, uma vez que o problema não afeta realmente lançado apk do ) https://developer.android.com/google/play-services/index.html .

Minhas tentativas anteriores para resolver esse problema usando a nova chave de API, e instalações novas de Eclipse / ADT / SDK / google- play- service_lib, como sugerido nesta e em outras questões semelhantes não funcionou.