Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Android Studio with gradle and Google Maps v2

I'm really stuck here. So, I follow this tutorial step by step: but it still doesn't work.

I've done all steps from tutorial and find out what new module(GooglePlayServices) not in modules, if open run->edit configurations in general->module i don't see GooglePlayServices, I suppose this is the problem, but I can't find what I have to do to fix it.

Day early I tried same, but in this case (I actually don't remember what I did) GooglePlayServices in modules and I don't have anymore problem with cannot resolve symbol 'maps', but it still doesn't work, fires error Error inflating class fragment

my activity extends 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 both case build.gradle just like 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
    }
}

and 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"/>
like image 411
Naitro Avatar asked Jun 16 '13 15:06

Naitro


People also ask

How do I enable Google Maps API v2?

Click on the “APIs & auth” menu on the left, and from the submenu select APIs. From the list of APIs that appear, scroll down and ensure that Google Maps Android API v2 is set to “On”.

Is Google Maps SDK Android free?

The Maps SDK for Android uses a pay-as-you-go pricing model.

What is MapFragment?

public class MapFragment extends Fragment. A Map component in an app. This fragment is the simplest way to place a map in an application. It's a wrapper around a view of a map to automatically handle the necessary life cycle needs.


2 Answers

try to avoid including entire google play services, it will force you to enable multidex due to the package size. instead, include them individually, eg:

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

if you wish to include other services, please refer here:

https://developers.google.com/android/guides/setup (scroll down)

like image 154
James Tan Avatar answered Sep 21 '22 21:09

James Tan


I have tried and failed many a tutorial on this, but finally find a simple solution that seem to work.

I just installed Android Studio 0.2.3 on my mac, and these are the steps that made me view a maps fragment on a fresh hello world project template:

1) Click the SDK manager button in the toolbar in Android Studio.

2) Under 'Extras' locate 'Google play services' and download it.

3) in your build.gradle file in your src directory, add this line to dependencies:

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

4) order and install your API-key following this tutorial: https://developers.google.com/maps/documentation/android/start#the_google_maps_api_key

5) add the fragment to your layout 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) you should now be able to run your project on your device.

like image 44
monopoint Avatar answered Sep 23 '22 21:09

monopoint