1

我试图在我的 android 手机上显示地图。我检查了一些代码。即使我得到了错误。这是我遇到的错误。

07-06 15:22:13.359: E/AndroidRuntime(10309):    at com.google.android.gms.maps.SupportMapFragment.onInflate(Unknown Source)

这是我的活动

@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }

this is my layout

<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"
    tools:context=".MainActivity" >

    <fragment xmlns:android="http://schemas.android.com/apk/res/android"
          android:id="@+id/map"
          android:layout_width="match_parent"
          android:layout_height="match_parent"
          class="com.google.android.gms.maps.SupportMapFragment"/>
</RelativeLayout>

这是我的清单文件

    <permission
      android:name="com.android.softroniics.gmaps.permission.MAPS_RECEIVE"
      android:protectionLevel="signature"/>

<uses-permission android:name="com.android.softroniics.gmaps.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"/>


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

    
    <meta-data
        android:name="com.google.android.maps.v2.API_KEY"
        android:value="AIzaSyApK21PhTXjmLuAQkigWWfXf1E1VS4ECIU"/>        

请给我一个显示简单地图的解决方案,尝试了一堆教程来显示 amap v2。提前致谢'

4

2 回答 2

1

为了让地图工作,您需要遵循几个简单的步骤。我将尝试在这里总结它们:

- 添加谷歌播放服务

这只是添加库项目并确保正确导出库项目的问题。

ADT 22 存在一个问题,它有时会“忘记”将库导出到您的 APK。您可以通过进入构建设置并确保Android Private Libraries已选中来验证这一点。这将确保存储在您的项目libs文件夹中的任何内容都将正确导出到您的 APK 中。

- 确定您的最低 SDK 级别。

为了在旧设备上使用新的 Google Maps V2 API,我们需要做两件事

  • 在布局中使用 SupportMapFragment 而不是 MapFragment
  • 使用 FragmentActivity 而不是 Activity
  • 在 FragmentActivity 中使用 SupportFragmentManager 而不是 FragmentManager

- 正确设置您的地图键

使用以下概述查看所有设置是否正确:

概览图片

- 解释 LogCat 中的堆栈跟踪

这将告诉您是否正在处理库问题(不包括 Google Play 服务)或地图 API 密钥问题(授权问题)

- 查看本指南 + 示例项目

我写了一篇关于如何设置骨架项目的帖子。你可以在这里找到它:http: //ddewaele.github.io/GoogleMapsV2WithActionBarSherlock/part1

我还使用地图创建了 2 个骨架项目。您应该能够克隆它们,更改 API 密钥并继续前进。我有一个用于较旧的 android 版本(使用支持库)和较新的 android 版本(使用本机片段)

https://github.com/ddewaele/GoogleMapsV2WithActionBarSherlock

于 2013-07-06T11:14:10.070 回答
0
I had made sample code for map . hope this will help [Github Link](https://github.com/shujat89/myAndroidPractices.git)
于 2013-07-06T10:38:19.880 回答