6

Recentemente ho migrato al nuovo Studio Android IDE sulla base di IntelliJerrore di compilazione in Android Studio Quando si effettua un progetto semplice API v2 mappe di Google Android

Le Guide ho seguito sono stati:

  1. https://developers.google.com/maps/documentation/android/start (per basi)

  2. How can I create an Android application in Android Studio that uses the Google Maps Api v2? (per l'importazione di Google Play Services necessari e di supporto librerie in Android monolocale)

Tutte le librerie sono stati correttamente rilevati da Android Studio e non ho avuto 'errori biblioteca Non trovato' alcuna. Il progetto è stato mostrato privo di errori. Quindi quando ho provato a compilarlo ho ricevuto questo errore.

Gradle: 
FAILURE: Build failed with an exception. 

* What went wrong: 
Execution failed for task ':AID-AmritaInfoDesk:compileDebug'. 
> Compilation failed; see the compiler error output for details. 

* Try: 
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. 


Could not execute build using Gradle distribution 'http://services.gradle.org/distributions/gradle-1.6-bin.zip'. 

Questa era la mia explorer.java file di

package com.aid.explorer; 

import com.google.android.gms.maps.GoogleMap; 
import com.google.android.gms.maps.SupportMapFragment; 
import com.google.android.gms.maps.model.LatLng; 
import com.google.android.gms.maps.model.MarkerOptions; 

import android.os.Bundle; 
import android.support.v4.app.FragmentActivity; 


public class explorer extends FragmentActivity { 

    private GoogleMap mMap; 

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

    @Override 
    protected void onResume() { 
     super.onResume(); 
     setUpMapIfNeeded(); 
    } 


    private void setUpMapIfNeeded() { 
     // Do a null check to confirm that we have not already instantiated the map. 
     if (mMap == null) { 
      // Try to obtain the map from the SupportMapFragment. 
      mMap = ((SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map)) 
        .getMap(); 
      // Check if we were successful in obtaining the map. 
      if (mMap != null) { 
       setUpMap(); 
      } 
     } 
    } 


    private void setUpMap() { 
     mMap.addMarker(new MarkerOptions().position(new LatLng(0, 0)).title("Marker")); 
    } 
} 

E questo è stato il mio explorer.xml file di

<?xml version="1.0" encoding="utf-8"?> 
<fragment xmlns:android="http://schemas.android.com/apk/res/android" 
      android:id="@+id/map" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      class="com.google.android.gms.maps.SupportMapFragment"/> 

Mi piacerebbe sapere cosa è andato storto. qualsiasi aiuto sarebbe notevolmente apprezzato

+0

Poi finalmente mi sono stufo di questo e ** commutata al Eclipse IDE ** (Juno) .. L'errore appena scomparso e le mappe ora funziona correttamente ... ma non sto chiudendo questa domanda ancora come ho bisogno di sapere che cosa sta causando un tale errore in Gradle-Studio Android ... – niranjan94

risposta

3

Stavo seguendo le stesse istruzioni, tranne che stavo creando un nuovo progetto. Sotto la struttura del progetto ho rimosso il facet Android-Gradle e sono riuscito a creare con successo. Opzionalmente è possibile aggiornare i file di build gradle e aggiungere il facet Android-Gradle alla libreria di servizi di gioco.

NOTA: ho cambiato il nome della directory di Google Play Services.

build.gradle per la raccolta di Google Play Services.

apply plugin: 'android-library' 

buildscript { 
    repositories { 
     mavenCentral() 
    } 

    dependencies { 
     classpath 'com.android.tools.build:gradle:0.4' 
    } 
} 

dependencies { 
    compile files('libs/android-support-v4.jar') 
    compile files('google-play-services.jar') 
} 

android { 
    compileSdkVersion 17 
    buildToolsVersion '17.0.0' 

    sourceSets { 
     main { 
      manifest.srcFile 'AndroidManifest.xml' 
      java.srcDirs = ['src'] 
      resources.srcDirs = ['src'] 
      aild.srcDirs = ['src'] 
      renderscript.srcDirs = ['src'] 
      res.srcDirs = ['res'] 
      assets.srcDirs = ['assets'] 
     } 
    } 
} 

build.gradle per app di prova.

buildscript { 
    repositories { 
     maven { url 'http://repo1.maven.org/maven2' } 
    } 
    dependencies { 
     classpath 'com.android.tools.build:gradle:0.4' 
    } 
} 
apply plugin: 'android' 

dependencies { 
    compile files('libs/android-support-v4.jar') 
    compile project(':lib-google-play-services') 
    compile files('../lib-google-play-services/libs/google-play-services.jar') 
} 

android { 
    compileSdkVersion 17 
    buildToolsVersion "17.0.0" 

    defaultConfig { 
     minSdkVersion 11 
     targetSdkVersion 16 
    } 
} 
+0

Questo ha funzionato per me, anche se dovevo aggiungerlo a 'settings.gradle' : 'include ': google-play-services_lib'' – lepoetemaudit

+0

E per coloro che vogliono ottenere' '' google-play-services_lib''' importato come progetto Gradle in Android Studio: http://stackoverflow.com/questions/ 16977739/how-to-add-Gradle-supporto-per-esistente-progetto – opyate

0

Per prima cosa è necessario fornire ulteriori informazioni sull'errore. Invece di usare il compilatore esterno devi provare ad usare il compilatore interno (cambiando le impostazioni del compilatore)

+0

FYI. ** Gradle ** è il compilatore interno per Android Studio ... – niranjan94

+0

Ok ma con l'opzione del compilatore esterno disattivata ottieni maggiori informazioni sugli errori – androidtester