utilizzando abilitareAutoManage () in frammento

C'è un altro modo per colbind il client API di Google?

Io uso i posti auto completi e devo usare questo codice alcuni where in MYFRAGMENT

  • Come e cosa impostare su Android WifiConfiguration.preSharedKey per connettersi alla networking WPA2 PSK WiFi
  • creando un text in striscia in Android?
  • Perché non viene chiamato il metodo onProviderEnabled () di Android?
  • l'aidl manca dello studio android
  • È ansible utilizzare i comandi adb per fare clic su una vista trovando il proprio ID?
  • Inserimento Javascript in webview
  • mGoogleApiClient = new GoogleApiClient.Builder(MainActivity.this) .addApi(Places.GEO_DATA_API) .enableAutoManage(this, GOOGLE_API_CLIENT_ID, this) .addConnectionCallbacks(this).build(); 

    Il mio problema con

     enableAutoManage(this, GOOGLE_API_CLIENT_ID, this) .addConnectionCallbacks(this).build(); 

    Non posso affrontarlo perché quando sostituisco this con getActivity() ho molti problemi con il casting

    grazie per l'aiuto e mi dispiace se questa domanda è sciocca.

  • Google Maps V2 "Purtroppo l'applicazione si è arrestata"
  • il ricevitore di trasmissione per ACTION_CAMERA_BUTTON non viene mai chiamato
  • Evidenziare un path specificato in Google Maps v2 Android
  • Come impostare la dimensione del carattere per il text dei pulsanti di dialogo
  • TabLayout di supporto per Android: Centro di gravità e modalità scorrevole
  • Utilizza caratteri esterni in android
  • 3 Solutions collect form web for “utilizzando abilitareAutoManage () in frammento”

    Se si desidera utilizzare enableAutoManage è necessario triggersre la function FragmentActivity . Le chiamate richieste sono necessarie per la gestione automatica del GoogleApiClient . Quindi la soluzione più semplice è quella di aggiungere extends FragmentActivity alla tua attività. Quindi il tuo cast non sarebbe riuscito e causerebbe l'applicazione a bloccarsi durante il runtime.

    La soluzione alternativa è gestire il cliente api. Rimuovere la linea enableAutoManage dal constructor e assicurarsi di connect / disconnect dal client da soli. Il luogo più comune per farlo è onStart() / onStop() . Qualcosa di simile a…

     @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); mGoogleApiClient = new GoogleApiClient.Builder(MainActivity.this) .addApi(Places.GEO_DATA_API) .addConnectionCallbacks(this).build(); } @Override protected void onStart() { super.onStart(); mGoogleApiClient.connect(); } @Override protected void onStop() { super.onStop(); mGoogleApiClient.disconnect(); } 

    Se stai usando questo codice all'interno di Fragment , diciamo che hai un HomeFragment che estende android.support.v4.app.Fragment , quindi all'interno della tua class HomeFragment dovresti avere:

     HomeFragment homeFragmentContext; enableAutoManage(getActivity, GOOGLE_API_CLIENT_ID, homeFragmentContext) .addConnectionCallbacks(homeFragmentContext).build(); 

    Se il tuo frammento è in esecuzione in un FragmentActivity o AppCompatActivity puoi fare qualcosa di simile:

      mGoogleApiClient = new GoogleApiClient.Builder(getActivity()) .enableAutoManage((FragmentActivity) getActivity() /* FragmentActivity */, new GoogleApiClient.OnConnectionFailedListener() { @Override public void onConnectionFailed(@NonNull ConnectionResult connectionResult) { // your code here } }) .addApi(Auth.GOOGLE_SIGN_IN_API, gso) .build(); 
    L'Android è un fan Android di Google, tutto su telefoni Android, Android Wear, Android Dev e applicazioni Android Games e così via.