2015-05-25 15 views
10

Desidero mostrare il selettore di luogo in modo che l'utente possa scegliere la posizione di sua scelta. Ma l'attività secondaria di selezione dei luoghi si chiude automaticamente dopo il lancio. Ho controllato la chiave API più volte e altre autorizzazioni, tutto è corretto. Ecco tutto il codice. Per favore aiuto!Selettore di posizione Chiudi automaticamente dopo il lancio

task_location.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      try { 
       PlacePicker.IntentBuilder intentBuilder = new PlacePicker.IntentBuilder(); 
       Intent intent = intentBuilder.build(NewTaskActivity.this); 
       // Start the Intent by requesting a result, identified by a request code. 
       startActivityForResult(intent, 123); 


      } catch (GooglePlayServicesRepairableException e) { 
       GooglePlayServicesUtil 
         .getErrorDialog(e.getConnectionStatusCode(), NewTaskActivity.this, 0); 
      } catch (GooglePlayServicesNotAvailableException e) { 
       Toast.makeText(NewTaskActivity.this, "Google Play Services is not available.", 
         Toast.LENGTH_LONG) 
         .show(); 
      } 
     } 
    }); 

E qui è il file manifest.

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

<uses-feature 
    android:glEsVersion="0x00020000" 
    android:required="true" /> 
<application 
    android:allowBackup="true" 
    android:icon="@mipmap/ic_launcher" 
    android:label="@string/app_name" 
    android:theme="@style/AppTheme" 
    tools:replace="android:icon"> 

    <meta-data android:name="com.google.android.gms.version" 
     android:value="@integer/google_play_services_version" /> 

    <meta-data 
     android:name="com.google.android.geo.API_KEY" 
     android:value="AIzaSyAjM9hWUXm8vlABqFbM_fJfQgIFli8HP1E"/> 

risposta

9

Dopo un sacco di debug, l'ho risolto io stesso. Il problema era il nome del pacchetto .. Studio Android gestisce il nome del pacchetto da solo sulla creazione del progetto. Ho cambiato il nome del pacchetto in manifest e funzionava perfettamente bene. ma quando ottengo la chiave API dalla console degli sviluppatori di Google per la selezione dei luoghi, il selettore dei luoghi si chiude automaticamente senza un singolo carattere di errore.

Quindi cambio il nome del pacchetto accedendo a -> Impostazioni modulo -> Aroma e modifica l'ID applicazione e risolve il problema.

+0

Come si arriva a 'Impostazioni modulo'? –

+0

Fare clic con il tasto destro sul progetto e fare clic sulla penultima opzione dall'elenco. ad esempio Impostazioni del modulo OPPURE semplicemente premere F4. –

+1

Mi ha fatto impazzire per capirlo, lol, grazie –

24

Si prega di verificare la logcat della vostra applicazione per il messaggio 'PLACES_API_ACCESS_NOT_CONFIGURED'. In questo caso, l'attivazione dell'API di Google Places per Android nella tua Google Developer Console per questo progetto dovrebbe risolvere il tuo problema.

+1

Grazie, la sua ha lavorato per me dopo che ho enable'Google Luoghi API Web Service' API in Google Api console sviluppatore – Ninja

1

problema risolto semplicemente cambiando l'API chiave

È possibile creare una nuova chiave da here

Problemi correlati