17

我真的被困在这里了。所以,我按照这个教程进行操作:但它仍然不起作用。

我已经完成了教程中的所有步骤,并找出模块中没有的新模块(GooglePlayServices),如果我没有看到打开run->edit的配置general->moduleGooglePlayServices,我想这是问题所在,但我找不到我必须做的事情修理它。

早一天我尝试了同样的方法,但在这种情况下(我实际上不记得我做了什么)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'

主.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"/>
4

3 回答 3

28

尽量避免包含整个 google play 服务,由于包的大小,它会强制你启用 multidex。相反,将它们单独包括在内,例如:

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

如果您希望包括其他服务,请参阅此处:

https://developers.google.com/android/guides/setup(向下滚动)

于 2015-12-15T13:05:29.773 回答
16

我已经尝试过很多关于这方面的教程但都失败了,但最终找到了一个似乎可行的简单解决方案。

我刚刚在我的 Mac 上安装了 Android Studio 0.2.3,这些是让我在全新的 hello world 项目模板上查看地图片段的步骤:

1) 点击 Android Studio 工具栏中的 SDK 管理器按钮。

2) 在“Extras”下找到“Google play services”并下载。

3)在您的 src 目录中的 build.gradle 文件中,将此行添加到依赖项:

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) 你现在应该可以在你的设备上运行你的项目了。

于 2013-08-07T21:22:43.027 回答
1

在 SDK 管理器中从 Extras 安装这些:

  • Android 支持存储库
  • 谷歌存储库
  • 谷歌播放服务

然后 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

于 2013-09-10T17:59:54.237 回答