我正在尝试为Android设置谷歌地图。我看到两个缩放按钮,但没有显示地图。我在过去的6-7个小时里一直在苦苦挣扎。早些时候显示错误(没有打开)&现在它没有显示地图。
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.counz.app"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="16" />
<permission
android:name="com.example.mapdemo.permission.MAPS_RECEIVE"
android:protectionLevel="signature" />
<uses-feature
android:glEsVersion="0x00020000"
android:required="true" />
<uses-permission android:name="com.example.mapdemo.permission.MAPS_RECEIVE" />
<uses-permission android:name="android.permission.INTERNET" />
<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" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="com.counz.app.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>
<meta-data
android:name="com.google.android.maps.v2.API_KEY"
android:value="(mykey)" />
</application>
编辑:这是LogCat错误
03-09 23:15:47.210: W/KeyCharacterMap(14440): Using default keymap: /system/usr/keychars/qwerty.kcm.bin
03-09 23:16:24.740: W/dalvikvm(14545): VFY: unable to resolve instance field 23
03-09 23:16:25.540: W/dalvikvm(14545): Unable to resolve superclass of Lmaps/p/s; (427)
03-09 23:16:25.540: W/dalvikvm(14545): Link of class 'Lmaps/p/s;' failed
03-09 23:16:25.540: W/dalvikvm(14545): Unable to resolve superclass of Lmaps/y/bo; (3820)
03-09 23:16:25.540: W/dalvikvm(14545): Link of class 'Lmaps/y/bo;' failed
03-09 23:16:25.540: W/dalvikvm(14545): Unable to resolve superclass of Lmaps/i/k; (4208)
03-09 23:16:25.540: W/dalvikvm(14545): Link of class 'Lmaps/i/k;' failed
03-09 23:16:25.540: E/dalvikvm(14545): Could not find class 'maps.i.k', referenced from method maps.z.ag.a
03-09 23:16:25.540: W/dalvikvm(14545): VFY: unable to resolve new-instance 3540 (Lmaps/i/k;) in Lmaps/z/ag;
03-09 23:16:29.020: I/ActivityThread(14545): queueIdle
03-09 23:16:29.060: V/ActivityThread(14545): Reporting idle of ActivityRecord{4a4a9288 token=android.os.BinderProxy@4a4a8df8 {com.counz.app/com.counz.app.MainActivity}} finished=false
03-09 23:16:29.060: W/ActivityNative(14545): send ACTIVITY_IDLE_TRANSACTION
03-09 23:16:29.750: E/Google Maps Android API(14545): Authorization failure.
03-09 23:16:58.600: I/ActivityThread(14545): queueIdle
03-09 23:16:58.600: V/ActivityThread(14545): Reporting idle of ActivityRecord{4a4a9288 token=android.os.BinderProxy@4a4a8df8 {com.counz.app/com.counz.app.MainActivity}} finished=false
03-09 23:16:58.600: W/ActivityNative(14545): send ACTIVITY_IDLE_TRANSACTION
感谢。 :)
答案 0 :(得分:2)
您正在以错误的方式进行引用,请查看我在您的应用程序中为获取Google地图而编写的这个简短的8步指南,请严格按照步骤操作,最后您将获得Google地图。< / p>
我在撰写本指南时创建了Google地图应用程序,您可以在最后看到最终结果。
答案 1 :(得分:1)
Acrivity
必须扩展FragmentActivity
以进行正确的片段膨胀。请检查MainActivity
是否延伸FragmentActivity
。请记住,如果您为较旧版本的Android编写应用程序,则必须使用支持库v4和SupportMapFragment
而不是MapFragment
。
顺便说一下。在eclipse中引用android库不会改变AndroidManifest.xml
,只会改变project.properties
。您必须手动添加这样的行
<activity android:name="com.example.android.tictactoe.library.GameActivity" />
仅当您使用库中的某些Activity
时。如果是谷歌地图v2,您只需要MapFragment
,所以您不必这样做。