【问题标题】:Using the Google map API in Android, using a proxy在 Android 中使用 Google 地图 API,使用代理
【发布时间】:2011-02-24 18:55:08
【问题描述】:

我在一个非常基本的应用程序中使用谷歌地图 API。但问题是,在运行应用程序时,我只看到网格和地图控件……地图甚至没有加载到虚拟设备中。
我的设备中正在运行互联网...浏览器似乎加载得很好,所以这不是互联网问题。
此外,我在注册地图 API 后确实获得了一个 API 密钥,并将其包含在我的 main.xml 文件中……但它仍然没有显示地图……只是网格。使用互联网的权限也在清单文件。
我使用的是 Google API 8 级。知道如何解决这个问题吗?
thx.
编辑 1:任何人都可以帮我解决这个问题...真的需要帮助 :(

EDIT 2:嗯,我在我的 LogCat 中发现了以下错误:
Sending checkin request
Checkin failed: @987654321@ (request #0)
org.apache.http.conn.ConnectTimeOutException: Connect to /209.85.231.100:44 timed out

所以基本上我的连接超时...我不太确定为什么...有人可以为此提供一些修复吗?(但是 AVD 的浏览器能够完美运行,没有超时问题..正确加载)
此外,预装的地图应用程序显示以下错误:
**Network Failure** Wrong remote strings version.GMM Server must be hosting:/strings_remote_533149424.dat
如果您知道我可以解决此问题的任何方法,那将非常有帮助...
谢谢。

【问题讨论】:

    标签: android google-maps


    【解决方案1】:

    显然,如果您使用的是代理,并且已在您的 APN 中设置了该代理,那么您的 AVD 将无法加载任何使用地图的应用程序,无论是预安装的应用程序,还是您创建的任何应用程序。
    参考:http://code.google.com/p/android/issues/detail?id=3764#makechanges
    不幸的是(目前)还没有解决方案。
    感谢所有帮助过的人:)
    PS:如果 any1 找到了使用代理的解决方案...或任何其他方式来解决此问题...请在此处发布..

    【讨论】:

      【解决方案2】:

      您不应在模拟器或设备中进行网络(代理)设置。只需在 PC 中打开网络设置。然后去属性。您将在您的连接中找到项目列表。转到 IPV4 并设置您的默认网关和 DNS 服务器。

      我遇到了同样的错误

      **Network Failure** Wrong remote strings version.GMM Server must be hosting:/strings_remote_533149424.dat
      

      然后我按照上述步骤操作。我得到了输出.....只需检查并回复....

      【讨论】:

      • PC 上的网络设置以及 Internet 选项中的代理设置都已到位,但即使在此之后问题仍然存在。事实上,在模拟器上,浏览器只有在你在模拟器上设置了代理设置的情况下才能工作(不管你的电脑上是否也设置了设置)。
      【解决方案3】:

      确保这些权限在您的清单文件中,在结束应用程序标记之外:

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

      【讨论】:

      • 是的...互联网权限也被授予...仍然不起作用
      • 还值得注意的是,使用权限/库必须位于 AndroidManifest.xml 中的某个位置,如我的答案中的链接中所述
      【解决方案4】:

      您的模拟器是否已连接到互联网?有时模拟器在启动时无法连接到互联网,您应该会在通知栏上看到 3g 标志。

      【讨论】:

      • 是的..我可以使用浏览器访问互联网...我在这里使用互联网代理..所以我不得不把它放进去..但是互联网工作正常。此外,虚拟设备中预装的地图应用程序也不工作,它也只显示网格。
      • 好吧,那么问题出在其他地方。如果您在地图应用程序中看不到它,我怀疑您是否可以在自己的应用程序中使用它。
      【解决方案5】:

      多次看到这个问题,并写了一个真正的easy tutorial,它帮助了像previous question on SO这样的人

      它通常是三个问题之一:

      1. API 密钥不正确
      2. 您使用的是标准 Android 模拟器,而不是 Google API。
      3. 您扩展了 Activity 而不是 MapActivity

      希望这会有所帮助。

      【讨论】:

      • 我已经检查并重新检查了我的 API 密钥。这确实是正确的。我正在使用 API 级别 8 的 Google API 模拟器。我已经扩展了正确的 Activity... :( 仍然无法正常工作。
      【解决方案6】:

      这很可能是由于 API 密钥错误。确保您使用的是正确的 API 密钥。 (对于您的调试证书(密钥库)和您在将 APK 发布到 Android Market 之前用于签署 APK 的证书,密钥会有所不同)。

      要生成调试证书的 MD5 指纹,首先找到调试密钥库。默认情况下,构建工具会在活动 AVD 目录中创建调试密钥库。 AVD 目录的位置因平台而异:

      Windows Vista:C:\Users\.android\debug.keystore

      Windows XP:C:\Documents and Settings\.android\debug.keystore

      OS X 和 Linux:~/.android/debug.keystore

      更多详情请见http://code.google.com/android/add-ons/google-apis/mapkey.html

      【讨论】:

      • 我确定我的 API 密钥是正确的,但即使它是错误的,也没有理由让预装的地图应用程序无法工作... :(
      • 是的,我没有注意到您对另一个关于使用代理的答案的评论,并且预装的地图应用程序也不起作用。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多