Android Studio с gradle и Google Maps v2 - программирование
Подтвердить что ты не робот

Android Studio с gradle и Google Maps v2

Я действительно застрял здесь. Итак, я следую этому учебнику шаг за шагом: но он все равно не работает.

Я сделал все шаги из учебника и узнал, что новый модуль (GooglePlayServices) не в модулях, если открытые конфигурации run->edit в general->module я не вижу GooglePlayServices, я полагаю, это проблема, но я не могу найти, что мне нужно сделать, чтобы исправить это.

В начале дня я пробовал то же самое, но в этом случае (на самом деле не помню, что я сделал) GooglePlayServices в модулях, и у меня больше нет проблемы с cannot resolve symbol 'maps', но он все равно не работает, ошибка огня Error inflating class fragment

моя деятельность расширяет 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);
    }

}

в обоих случаях build.gradle, как в учебнике:

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
    }
}

и 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"/>
4b9b3361

Ответ 1

старайтесь не включать в себя все сервисы Google Play, это заставит вас включить multidex из-за размера пакета. вместо этого включите их индивидуально, например:

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

если вы хотите включить другие службы, см. здесь:

https://developers.google.com/android/guides/setup (прокрутите вниз)

Ответ 2

Я пробовал и проваливал много учебников по этому вопросу, но, наконец, нашел простое решение, которое, похоже, работает.

Я только что установил Android Studio 0.2.3 на свой Mac, и это шаги, которые заставили меня просмотреть фрагмент карты на новом шаблоне проекта hello world:

1) Нажмите кнопку менеджера SDK на панели инструментов в Android Studio.

2) В разделе "Дополнительно" найдите "Службы Google Play" и загрузите его.

3) в файле build.gradle в каталоге src, добавьте эту строку в зависимости:

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

4) закажите и установите ваш API-ключ в соответствии с этим руководством: https://developers.google.com/maps/documentation/android/start#the_google_maps_api_key

5) добавьте фрагмент в ваш макет 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) теперь вы можете запустить проект на своем устройстве.

Ответ 3

В диспетчере SDK установите их из дополнительных функций:

  • Репозиторий поддержки Android
  • Хранилище Google
  • Службы Google Play

Затем build.gradle должен выглядеть следующим образом:

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
    }
}

Мне также пришлось прокомментировать эту строку в файле build.gradle:

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

Подробнее об этом: https://plus.google.com/+AndroidDevelopers/posts/4Yhpn6p9icf