0

我正在尝试使用 Mapview 查找两个城市之间的路径。

问题是 Mapview 无法工作,仅在设备中获取灰色网格和块而不是地图,但在模拟器中工作正常。

这是我的清单

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

<uses-sdk android:minSdkVersion="8" />

<application
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name" >

       <uses-library android:name="com.google.android.maps" />

    <activity
        android:label="@string/app_name"
        android:name=".MapDirectionActivity" >
        <intent-filter >
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>


</application>

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

</manifest> 

这是我的布局:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >

<com.google.android.maps.MapView
    android:id="@+id/mapview"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:clickable="true"
    android:apiKey="xxxxxxxxxxxxxxxxxxxxxx"
/>

 </LinearLayout>
4

2 回答 2

1

仅在设备中获取灰色网格和块而不是地图,但在模拟器中可以正常工作。

任何一个:

  1. 你在你的布局中没有权限apiKey,对应于你用来签署你的应用程序的签名密钥,或者

  2. 您的设备无法访问互联网或无法访问 Google 的地图图块服务器

(第三种可能性是缺少INTERNET权限,但看起来你有这个权限)

于 2012-04-12T13:54:28.773 回答
0

好的...“调试”的 API 密钥仅适用于模拟器。如果您使用 Eclise 以“调试模式”将软件加载到手机中,您将得到图块,而不是地图。如果您使用“release”API 密钥更新 mapview,然后使用 Eclipse“EXPORT”创建一个 apk 文件,将其复制到手机上的 sd 卡,然后使用安装程序应用程序(从 Google Play 免费下载)安装它在电话上它工作!

于 2013-02-06T12:00:41.947 回答