1

我有以下代码将本机谷歌地图应用程序加载到我的项目中:

final Intent intent = new Intent(Intent.ACTION_VIEW, Uri
                    .parse("http://maps.google.com/maps?"
                            + "saddr=43.0054446,-87.9678884"
                            + "&daddr=42.9257104,-88.0508355"));

            intent.setClassName("com.google.android.apps.maps",
                    "com.google.android.maps.MapsActivity");

            startActivity(intent);

我应该知道是否有任何限制或先决条件。
因为它可以在我的笔记本电脑模拟器上工作,但不能在 PC 模拟器上工作。
我只加载本机谷歌地图应用程序,它应该可以在任何模拟器上运行。
我在这里想念什么吗?

我得到空白黑屏和logcat 错误是:

04-16 16:20:06.051: D/PhoneWindow(841): 无法保存哪个视图有焦点,因为焦点视图 com.android.internal.policy.impl.PhoneWindow$DecorView@450274e8 没有 id。

4

2 回答 2

1

您的模拟器之一是否设置为构建目标“Google APIs (Google Inc.) – API Level XY”和一个设置为“Android AB – API Level XY”?对于 Google Maps API,您应该使用第一个。

于 2012-04-15T11:45:16.820 回答
0
intent.setClassName("com.google.android.apps.maps","com.google.android.maps.MapsActivity");

首先,不需要上述行,因为您正在加载本机地图。并且一旦检查您是否能够在您的 PC 模拟器中启动地图应用程序,因为这些也可能是您的 PC 代理的问题。

于 2012-04-15T11:04:05.263 回答