每当我在我的模拟器中运行我的应用程序时,它使用谷歌地图API,我得到错误"除非你更新谷歌播放服务,否则应用程序不会运行"。我已经在SO上挖掘了一些关于相同主题的其他问题,因为有很多,但我还没有找到解决方案。那么,如何让谷歌地图API在我的模拟器上工作呢?
当我查看模拟器上安装的应用程序时,我没有在列表中看到Google Play服务。所以我猜这就是问题所在?如果有,我如何在我的设备上安装它?或者在模拟器上根本不可能使用Google Play服务?
我正在使用启用了Google API的模拟器。
这是我的Gradle构建文件:
apply plugin: 'com.android.application'
android {
compileSdkVersion 23
buildToolsVersion "23.0.1"
defaultConfig {
applicationId "com.example.thomas.app"
minSdkVersion 15
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
repositories {
mavenCentral()
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:23.0.1'
compile 'com.facebook.android:facebook-android-sdk:4.6.0'
compile 'com.android.support:support-v4:23.0.1'
compile 'com.google.android.gms:play-services:8.1.0'
compile 'com.android.support:design:23.0.1'
}
我也遇到过同样的问题。我打开模拟器,进入设置->应用程序-> Google Play服务,并注意到版本(在我的情况下,8.1.65)。然后我打开我的build.gradle
,看到com.google.android.gms:play-services
的版本是8.3.0。我把它改成了8.1.0,它在模拟器上工作了。
如果用户安装了Google play服务,你可能需要在代码中进行检查。如果他们没有,提示他们从游戏商店下载。
所以没有办法让Google play服务运行SDK附带的默认Android模拟器。所以我开始寻找其他模拟器,并找到了xamarin android player。我很快就得到了Google play store和Google play services的支持。所以如果有人也有这个问题,使用这个模拟器代替。唯一的缺点是您不能在其中调试。
我通过使用三星的设备测试实验室- http://developer.samsung.com/remotetestlab绕过了Android模拟器的这个限制。你可以从众多设备上启动游戏,这些设备都有Play服务。