2013-06-16 7 views
14

Ich bin wirklich hier fest. Also folge ich Schritt für Schritt dieser tutorial: aber es funktioniert immer noch nicht.Android Studio mit Gradle und Google Maps v2

ich alle Schritte von der Tutorial getan haben und herausfinden, was neues Modul (GooglePlayServices) nicht in Module, wenn offene run->edit Konfigurationen in general->module i, nicht GooglePlayServices sehe ich nehme an, das ist das Problem, aber ich kann nicht finde, was ich tun muss, um es zu reparieren.

Tag früh versuchte ich gleich, aber in diesem Fall (ich erinnere mich wirklich nicht, was ich tue) GooglePlayServices in Module und ich habe nicht mehr Problem mit cannot resolve symbol 'maps', aber es immer noch nicht funktioniert, löst Fehler Error inflating class fragment

meine Tätigkeit erstreckt FragmentActivity

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

public class MainActivity extends FragmentActivity { 

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

} 

in beiden Fällen build.gradle wie in Tutorial:

buildscript { 
    repositories { 
     mavenCentral() 
    } 
    dependencies { 
     classpath 'com.android.tools.build:gradle:0.4' 
    } 
} 
apply plugin: 'android' 

dependencies { 
    compile files('libs/android-support-v4.jar') 
    compile project(':GooglePlayServices') 
} 

android { 
    compileSdkVersion 17 
    buildToolsVersion "17.0.0" 

    defaultConfig { 
     minSdkVersion 9 
     targetSdkVersion 17 
    } 
} 

und settings.gradle:

include ':Roadatus', ':GooglePlayServices' 

main.xml:

<?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" 
      android:name="com.google.android.gms.maps.SupportMapFragment"/> 
+0

Was ist Ihr main.xml? –

+0

In main.xml habe ich Fragment von Google-Dokumentation, aber SupportMapFragment anstelle von MapFragment. Fügen Sie Code zum Posten hinzu. – Naitro

Antwort

16

ich versucht habe, und viele ein Tutorial über das nicht gelang, aber schließlich eine einfache Lösung, die zu funktionieren scheint zu finden.

ich nur Android Studio 0.2.3 auf meinem Mac installiert ist, und das sind die Schritte, die mir ein Karten-Fragment auf einer frische Hallo Welt Projektvorlage ansehen gemacht: in der Symbolleiste

1) Klicken Sie auf die SDK-Manager Taste in Android Studio.

2) Suchen Sie unter "Extras" nach "Google Play Services" und laden Sie es herunter.

3) in Ihrer build.gradle Datei in Ihrem src Verzeichnis, fügen Sie diese Zeile zu Abhängigkeiten:

compile 'com.google.android.gms:play-services:3.1.36' 

4) um und installieren Sie Ihren API-Schlüssel, der nach diesem Tutorial: https://developers.google.com/maps/documentation/android/start#the_google_maps_api_key

5) fügen Sie das Fragment zu Ihrem Layout hinzu xml:

<fragment xmlns:android="http://schemas.android.com/apk/res/android" 
      android:id="@+id/map" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:name="com.google.android.gms.maps.MapFragment"/> 

6) Sie sollten nun in der Lage sein, Ihr Projekt auf Ihrem Gerät auszuführen.

+2

Beachten Sie, dass das Fragment "com.google.android.gms.maps.SupportMapFragment" sein muss, wenn Sie ältere Versionen unterstützen. – JJD

+0

Danke..dies half – aashima

1

In SDK-Manager diese von Extras installieren:

  • Android Support-Repository
  • Google Repository
  • Google Play-Dienste

Dann sollten build.gradle wie folgt aussehen:

buildscript { 
    repositories { 
     mavenCentral() 
    } 
    dependencies { 
     classpath 'com.android.tools.build:gradle:0.5.0' 
    } 
} 
apply plugin: 'android' 

dependencies { 
    //compile files('libs/android-support-v4.jar') 
    compile 'com.google.android.gms:play-services:3.1.36' 

} 

android { 
    compileSdkVersion 17 
    buildToolsVersion "17.0.0" 

    defaultConfig { 
     minSdkVersion 14 
     targetSdkVersion 14 
    } 
} 

Ich musste diese Zeile auch in Build kommentieren.gradle:

//compile files('libs/android-support-v4.jar') 

Mehr dazu: https://plus.google.com/+AndroidDevelopers/posts/4Yhpn6p9icf

21

try gesamte Google-Play-Dienste zu vermeiden, einschließlich, es wird Sie zwingen multidex zu ermöglichen, aufgrund der Paketgröße. stattdessen sind sie einzeln, zB:

compile 'com.google.android.gms:play-services-maps:8.3.0' 

wenn Sie möchten andere Dienstleistungen enthalten, lesen Sie bitte hier:

https://developers.google.com/android/guides/setup (nach unten scrollen)

+0

Wenn Sie gezwungen wurden, multidex zu verwenden, hier ist ein Artikel zur Beschleunigung der multidex Entwicklung http://stackoverflow.com/questions/30177495/gradle-android-studio-build-too-slow- Multidex-Anwendung –

Verwandte Themen