【问题标题】:I'm attempting to make an app that displays current location but the app won't display the map我正在尝试制作一个显示当前位置的应用程序,但该应用程序不会显示地图
【发布时间】:2015-05-30 11:57:02
【问题描述】:

我是编码新手,尤其是 android 开发新手。我刚开始制作了一个简单的计算器应用程序,它工作正常,我的应用程序根本不显示地图。我已经为此工作了两天现在但仍然无法弄清楚问题。请告诉我我站在哪里以及问题出在哪里。 请参考截图。 清单:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="inovationlabs.location" >

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

    <activity
        android:name=".MapsActivity"
        android:label="@string/title_activity_maps" >
        <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.gms.version"
        android:value="@integer/google_play_services_version" />

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

   </application>
   <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" />
    <!--
     The ACCESS_COARSE/FINE_LOCATION permissions are not required to use
     Google Maps Android API v2, but are recommended.
    -->
     <uses-feature
    android:glEsVersion="0x00020000"
    android:required="true"/>

<uses-permission   android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission   android:name="android.permission.ACCESS_FINE_LOCATION"    />
</manifest>

我遇到了 activity_maps.xml 文件的渲染问题,请告诉我为什么? 活动地图:

<fragment 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:id="@+id/map"
tools:context=".MapsActivity"
android:name="com.google.android.gms.maps.SupportMapFragment"
tools:layout="@layout/activity_maps" />

【问题讨论】:

  • i.stack.imgur.com/K8Goy.png [SCREENSHOT] 这是我的应用程序显示的内容。
  • 您是否已创建 API 密钥并将其添加到您的 AndroidManifest 中,并具有类似这样的额外权限?
  • 发布您的 manifest.xml 代码
  • 截图显示你的代码必须没问题,否则应用程序会崩溃。问题可能是关键。我猜是密钥不正确,或者地图加载需要时间。
  • 很确定地图没有花时间,因为我已经等了这么多时间。关键是正确的。我有同样的疑问并交叉检查它。

标签: android dictionary render


【解决方案1】:

您应该遵循本指南:

Getting Started with Google Maps api

【讨论】:

  • 我已经按照该指南进行操作,但仍有困难。
  • 您应该检查 de api Key,您需要一个用于使用自定义密钥库中的 SHA1 创建的签名 apk 的密钥,以及另一个用于使用 de sha1 从您的 debug.keystore 创建的调试测试的密钥。来自 Google 地图的 LogCat 打印错误消息检查此以获取更多信息。清理项目,删除设备上的应用程序并再次调试
  • 我安装了调试apk。还是不行。而且我的activity_maps.xml总是出现渲染错误。请看一下。
  • 请在logcat中找到google maps api启动的错误信息并粘贴到这里。消息应该说明发生了什么
  • 我在您的清单中看不到关于地图的 标签。如果您得到一个膨胀异常,请尝试将您的片段包装在 RelativeLayout 或 FrameLayout 中。这就是我一直使用地图片段的方式,也许就是这样。
猜你喜欢
  • 2021-12-22
  • 1970-01-01
  • 1970-01-01
  • 2021-04-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-09-21
相关资源
最近更新 更多