android MapView v2 throws:无法找到com.google.android.gsf.gservices的提供者信息

时间:2013-11-19 08:46:56

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

我已经在stackoverflow和谷歌研究找到解决方案,但没有找到......

我有一个片段(支持)和一个MapView。它会引发这个错误。
SupportsMapFragment正常工作。这意味着谷歌api控制台没有问题。

我已经将onResume,onPause等方法添加到片段的适当方法中。但没有任何改变。

这是我的清单:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="[my package name]"
    android:versionCode="1"
    android:versionName="1.0" >

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

    <permission
        android:name="[my package name].MAPS_RECEIVE"
        android:protectionLevel="signature" />

    <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.ACCESS_COARSE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

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

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        ...

        <meta-data
            android:name="com.google.android.maps.v2.API_KEY"
            android:value="[my key]" />
    </application>

</manifest>

这是我的xml:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#345"
    tools:context=".LandingFragment" >

    <com.google.android.gms.maps.MapView
        android:id="@+id/map_view"
        android:layout_width="match_parent"
        android:layout_height="150dp" />

    ...

有人可以解释什么是错的吗?

1 个答案:

答案 0 :(得分:0)

您应该使用片段在XML上表示您的地图:

<fragment
    android:id="@+id/map"
    android:name="com.google.android.gms.maps.SupportMapFragment"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
/>

与本教程类似:http://www.vogella.com/articles/AndroidGoogleMaps/article.html