0

我遇到了空白屏幕和缩放按钮问题,并且我认为所有权限和我的密钥代码都输入正确,该项目已在 Google 的 API 控制台站点注册,并且已检查 Google Maps Android API v2 服务

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

    <uses-sdk
        android:minSdkVersion="9"
        android:targetSdkVersion="10" />
    <permission android:name="com.myProject.permission.MAPS_RECEIVE"
        android:protectionLevel="signature"/>
 <uses-feature android:glEsVersion="0x00020000" android:required="true"/> 
 <uses-permission android:name="com.myProject.permission.MAPS_RECEIVE" /> 
 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
 <uses-permission android:name="android.permission.INTERNET" />
 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
 <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.myProject.ScreenMap"
            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>

</manifest>

所以我在看那个 jar 的路径,它的大小只有 1kb,所以我很好奇 jar 是否损坏,因为 google-play-services 的 jar 的大小约为 578kb

4

1 回答 1

1

只是为了澄清 1kb JAR 现象:

Google Play 服务库项目本身不包含任何(真正的)java 代码。它包含一个虚拟的 UnusedStub.java,仅仅是因为 Android 工具/构建系统需要至少 1 个 java 类,否则它被视为无效项目。

adt-bundle-windows-x86_64-20130514\sdk\extras\google\google_play_services\libproject\google-play-services_lib\src\android

这实际上是您可能看到的 1kb JAR。

实际的 Google Play 服务代码位于 Google Play 服务库项目的 libs 文件夹中。

adt-bundle-windows-x86_64-20130514\sdk\extras\google\google_play_services\libproject\google-play-services_lib\libs\google-play-services

那是包含com.google.maps.gms包和类的 578kb JAR(实际的 Google Maps V2 代码。

如果您没有弄乱库项目,只是将其添加为对项目的引用,您应该在项目bin/dexedlibs文件夹中看到 2 个 JAR 文件

  • google-play-services_lib-85cb1c92715dbebbf9272cc8771ff1ee(1kb - 图书馆项目)
  • google-play-services-802bdd645fa52832629ef9a428b8df7e(库项目的libs文件夹中的JAR文件)

我假设您已正确导入库项目,否则您的项目将无法解析从com.google.maps.gms包中导入的任何类。

您需要检查 ADB 日志以了解在显示地图时发生了什么。很可能是身份验证问题。仔细检查您的 API 密钥和 API 控制台,确保您正确输入了所有内容:

在此处输入图像描述

于 2013-06-21T20:08:58.583 回答