除非您更新Google Play服务错误,否则此应用无法运行

Flo*_* Gz 26 android google-maps android-emulator google-play google-play-services

我现在有点迷失了.我正在使用Google地图实现Android应用程序.

为了使它工作,我遵循了一些非常有效的教程.但是我坚持这个":

在此输入图像描述

要修复,这个问题我在这里这里找到了一些技巧,告诉你要解决这个问题,你必须为模拟器采取特殊配置,这是我的:

在此输入图像描述

并在模拟器上安装一些.apk.

在此输入图像描述

并且应该完成魔法并且应该出现地图,这不是我的情况.

我检查了我的附加功能是否安装得很好:

在此输入图像描述

这是我的AndroidManifest:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
          package="mypack"
          android:versionCode="1"
          android:versionName="1.0">

    <uses-sdk android:minSdkVersion="16"/>

    <permission android:name="mypack.permission.MAPS_RECEIVE"
                android:protectionLevel="signature"/>
    <uses-permission android:name="mypack.permission.MAPS_receive"/>

    <!-- Permission pour utiliser la connexion internet -->
    <uses-permission android:name="android.permission.INTERNET" />
    <!-- Permission permettant de vérifier l'état de la connexion -->
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <!-- Permission pour stocker des données en cache de la map -->
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" />
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

    <uses-feature
            android:glEsVersion="0x00020000"
            android:required="true" />

    <application android:label="@string/app_name" android:icon="@drawable/ic_launcher">
        <meta-data
                android:name="com.google.android.maps.v2.API_KEY"
                android:value="MYKEY" />

        <meta-data android:name="com.google.android.gms.version"
                   android:value="@integer/google_play_services_version" />

        <activity android:name="Home"
                  android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.action.MAIN"/>
                <category android:name="android.intent.category.LAUNCHER"/>
            </intent-filter>
        </activity>
    </application>

</manifest>
Run Code Online (Sandbox Code Playgroud)

这是我的MainActivity

import android.app.Activity;
import android.os.Bundle;
import com.google.android.gms.maps.GoogleMap;
import com.google.android.gms.maps.MapFragment;

public class Home extends Activity {
    /**
     * Called when the activity is first created.
     */
    private GoogleMap map;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        map = ((MapFragment) getFragmentManager().findFragmentById(R.id.map)).getMap();
    }
}
Run Code Online (Sandbox Code Playgroud)

和相应的布局:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
              android:orientation="vertical"
              android:layout_width="fill_parent"
              android:layout_height="fill_parent"
        >
    <fragment xmlns:android="http://schemas.android.com/apk/res/android"
              android:id="@+id/map"
              android:name="com.google.android.gms.maps.MapFragment"
              android:layout_width="match_parent"
              android:layout_height="match_parent" />
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

希望找到一些修复或我错过的地方,提前谢谢你.

Bla*_*der 18

在Android SDK Manager中,您必须在"Android 4.4.2(API 19)"下安装"Google API(x86系统映像)".退出Eclipse并重新启动它.

然后在AVD管理器中创建一个新的Android虚拟设备,并选择"Google API x86(Google Inc.) - API Level 19"作为目标.选中"使用主机GPU"以确保加速绘制地图.

就是这样,这个新的模拟器将预先安装Play服务,并且它将运行得更快,因为它是x86图像.


dvr*_*vrm 15

使用android studio,唯一帮助我的是将gradle文件中的google play服务版本从上一个版本减少到:

compile 'com.google.android.gms:play-services:4.2.+'
Run Code Online (Sandbox Code Playgroud)

(当然,这是一个临时的"旁路",让你继续运行)


jam*_*246 9

我遇到这个错误的问题并且点击"更新"按钮什么也没做,它被卡在一个循环上,有效的是以下(在Android Studio中):

  • 转到工具> Android> SDK管理器
  • 选中"显示包详细信息"选项
  • 在您想要的Android版本(现在为我7.1.1)下,查看Google Play Intel x86 Atom System Image 谷歌播放英特尔原子系统图像
  • 点击Apply/OK,然后安装映像
  • 现在转到工具> Android> AVD管理器
  • 创建虚拟设备
  • 选择其中一个带有Google Play徽标的设备: 带有Google Play徽标的设备
  • 在新的模拟器中运行您的应用程序.现在,您可以在收到错误时点击"更新",通过设备上的Play商店更新Google Play服务,并安全地测试您的应用.