【问题标题】:ClassNotFoundException: Didn't find class "com.google.android.gms.maps.SupportMapFragment" on pathClassNotFoundException:在路径上找不到类“com.google.android.gms.maps.SupportMapFragment”
【发布时间】:2014-08-17 08:40:38
【问题描述】:

直到今天,该应用程序一直运行良好。我刚刚将手机更新到 4.4.4 (Cyanogenmod)。我还将 Eclipse 的 ADT 插件和 android SDK 更新到了最新版本。

com.google.android.gms.maps.SupportMapFragment 肯定在“Android Private Libraries”下(截图如下)。

我尝试过的: 反复清理 google-play-services_lib 和我的项目 关闭并重新打开 Eclipse

这是我的清单:

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

    <permission
        android:name="com.example.app.permission.MAPS_RECEIVE"
        android:protectionLevel="signature" />

    <uses-permission android:name="com.example.app.permission.MAPS_RECEIVE" />
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <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.WAKE_LOCK"/>-->

    <!--
     The following two permissions are not required to use
     Google Maps Android API v2, but are recommended.
    -->
    <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" />

    <uses-sdk
        android:minSdkVersion="10"
        android:targetSdkVersion="17" />

    <application
        android:name="com.fuzzybee7.application.MyApplication"
        android:allowBackup="true"

        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name="com.example.app.MainActivity"
            android:label="@string/app_name"
            android:configChanges="keyboardHidden|orientation" >

            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

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

        <activity android:name="com.example.app.AboutActivity" >
        </activity>

    </application>

</manifest>

还有显示课程的屏幕截图:

是的,我确实添加了 Google Play 服务库项目以防您想知道:

【问题讨论】:

  • 检查你的构建路径
  • 嗨@Rod_Algonquin,一切似乎都很正常。有什么特别值得我深入挖掘的吗?
  • 这个问题你解决了吗?
  • 在那之后再也没有使用过eclipse所以不知道:(

标签: android google-maps google-maps-android-api-2


【解决方案1】:

检查您是否为 gradle 启用了离线工作: 转到文件 > 设置 > Gradle

取消选择离线工作。

然后确认您是否在项目级 build.gradle 中作为依赖项提到了最新版本的 google 服务:
classpath 'com.google.gms:google-services:2.1.0'

您可以在这里找到最新版本: https://jcenter.bintray.com/com/android/tools/build/gradle/

在 gradle 同步完成后清理并构建项目。

这些步骤解决了我在使用 Google 地图时遇到的类似问题,它记录了相同的 ClassNotFoundException: Didn't find class “com.google.android.gms.maps.SupportMapFragment”

【讨论】:

    猜你喜欢
    • 2015-07-01
    • 2014-01-22
    • 1970-01-01
    • 2017-10-21
    • 2018-11-20
    • 1970-01-01
    相关资源
    最近更新 更多