0

扩展 MapActivity 时无法启动活动 (ShowPos)。如果我更改为扩展 Activity,它会启动。

在我将项目的 java 代码复制/粘贴到新工作区中的新项目之前,它确实工作得更早,突然 Eclipse 莫名其妙地无法再找到任何 Android API,并且没有一个可以重新导入。类似的事情以前也发生过几次,Eclipse 似乎很普通。但是复制/粘贴以前一直有效,至少有一段时间。现在它警告没有这样的错误。

我确实有一个 API 密钥,它以前可以使用。maps.jar 现在位于项目资源管理器中的项目下的 Google API 2.2 下。编辑注意到项目中的任何文件中都没有错误。启动时,LogCat 以:


 - D dalvikm Calling exit(1)
 - W dalvikm Unable to resolve superclass of Lintrax/three/ShowPos; (35)
 - W dalvikm Link of class 'Lintrax/three/ShowPos;' failed
 - D AndroidRuntime Shutting down VM
 - W dalvikm threadid=1: thread exiting with uncaught exception
   (groupnr)
 - E AndroidRuntime FATAL EXCEPTION: main

我的项目名称现在是“intrax.three”。为什么要加一个“L”呢?清单确实包含:


    uses-library android:name="com.google.android.maps"
    uses-permission android:name="android.permission.INTERNET"

(无法在此处粘贴清单文件)

感谢您提供有关如何帮助 Eclipse 查找内容的任何帮助!

4

3 回答 3

2

转到 Project -> Preferences -> Android -> Project Build Target 并确保您创建了一个使用 Google APIs 的项目

于 2012-02-14T18:11:03.717 回答
0

如果您已经定义了 Internet 权限和使用库

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

还要确保项目目标设置为 google APi。

第三件事是您的包级别需要更正并再次构建项目,而无需明确提供任何 map.jar 库。仅使用 google APi内置maps.jar并创建扩展 MapActivity 的新活动(也在清单中声明)。

于 2012-02-14T18:37:25.947 回答
0

我已经按照MapView 教程进行操作,它工作得很好,没有任何错误。

link error有问题的错误Dalvik VM是无法找到您的班级。这意味着这里给出的所有建议(uses-library互联网许可、将 Google API 设置为构建目标)甚至还没有出现。链接错误意味着 Android 操作系统无法找到您的班级。因此,我建议您尝试创建一个干净的项目,Class从中创建新项目,Eclipse然后粘贴代码片段而不是粘贴文件。

顺便说一句,L用于标识Object. 参考:Java 标识符

快乐编码!

于 2012-02-14T18:51:25.290 回答