安卓MapActivity不能扩展
我按照这些web站点的所有步骤:安卓MapActivity不能扩展
https://developers.google.com/maps/documentation/android/v1/hello-mapview
而且我也下载了播放服务-SDK。
不过,我仍然得到一个错误信息:
The import com.google.android.maps cannot be resolved
而且我也不能扩展MapActivity:
这里是我的manifest.xml:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.sale"
android:versionCode="1"
android:versionName="1.0" >
<uses-feature
android:glEsVersion="0x00020000"
android:required="true"/>
<uses-sdk
android:minSdkVersion="11"
android:targetSdkVersion="10" />
<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="android.permission.CAMERA"/>
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES"/>
<!-- 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"/>
<permission
android:name="com.example.mapdemo.permission.MAPS_RECEIVE"
android:protectionLevel="signature"/>
<uses-permission android:name="com.example.sale.permission.MAPS_RECEIVE"/>
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<uses-library android:name="com.google.android.maps" />
<activity
android:name="com.example.sale.MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<!-- Entry for RegisterActivity.class -->
<activity android:name=".RegisterActivity"
android:label="Register New Account"></activity>
<meta-data android:value="@string/app_id" android:name="com.facebook.sdk.ApplicationId"/>
<activity android:label="@string/app_name" android:name="com.facebook.LoginActivity"></activity>
<activity android:name=".ProfileActivity" android:label="Profile page"></activity>
<meta-data
android:name="com.google.android.maps.v2.API_KEY"
android:value="AIzaSyDTVRXMTmfe3jZyAlt-87kRgqM8y4TzIto"/>
</application>
</manifest>
这里是我开始创建MapActivity(但它不承认MapActivity):
package com.example.sale;
import com.google.android.maps.GeoPoint;
import com.google.android.maps.MapView;
import com.google.android.maps.MapActivity;
public class SaleMapActivity extends MapActivity {
}
问题是什么?我遵循所有步骤,并在谷歌阅读了很多,但没有回答。如何解决它?
你混合了这两种API的有在你的代码的一部分是从谷歌地图API V1:
<uses-library android:name="com.google.android.maps" />
多。
以及API v2的某些部分,您想使用哪个API v2? 我建议你使用谷歌地图API V2坚持,我写了一篇关于如何实现你的应用谷歌地图API V2一篇博客文章中,您可以点击此处查看:
嗨,我遵循你的博客中的所有步骤(并且我发现我的代码没有改变)..我错在哪里?为了扩展MapActivity,我需要实现哪些变化? – 2013-03-06 15:34:21
MapActivity是Google API V1对象,不能在V2中使用。你的活动应该扩展FragmentActivity,你应该使用SupportMapFragment来显示地图而不是MapView。此API中的坐标对象是LatLng而不是GeoPoint。 – 2013-03-06 15:41:45
谢谢,我该输入什么项目? – 2013-03-06 15:50:53
这是prety多简单,你不需要下载任何东西 只有当你创建一个新的项目改变它时,你需要的是将“编译时”选项改为“googleAPIs”。
重复的问题http://stackoverflow.com/questions/2282553/mapactivity-class-in-android – fonZ 2013-03-06 14:23:55
有两个映射API:地图V1和地图V2。你混淆了两者。由于Maps V1现在已被弃用,请使用Maps V2。地图V2在这里有记录:https://developers.google.com/maps/documentation/android/如果你访问路径中有'v1 /'的URL,你就错了。 – CommonsWare 2013-03-06 14:24:25
您好我使用了Maps v2版本,因为您可以从我的manieft中看到..我不明白,那么我需要写入什么导入?它不承认我的进口? – 2013-03-06 14:32:49