【发布时间】:2014-01-15 23:55:34
【问题描述】:
我想在我的应用程序中实现谷歌地图,所以我尝试了这个 Google Maps v2
但是当我使用这段代码时:
<meta-data
android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version" />
我收到此错误:
错误:错误:找不到与给定名称匹配的资源(在“值”处,值为“@integer/” google_play_services_version')。
我有
- 导入了 google-play-services.jar
- 更新了 SDK 管理器中的所有内容
毕竟还是不行,我将 libproject\google-play-services_lib\res\values\version.xml 导入到我的项目中
这个错误消失了,但是如果我在我的设备上运行项目,logcat 会显示这个错误消息
12-28 17:22:29.850:E/AndroidRuntime(28040):致命异常:主要 12-28 17:22:29.850: E/AndroidRuntime(28040): java.lang.RuntimeException: 无法启动活动 ComponentInfo{#############.MainActivity}: android.view.InflateException : 二进制 XML 文件第 2 行:膨胀类片段时出错 12-28 17:22:29.850: E/AndroidRuntime(28040): 在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1968) 12-28 17:22:29.850: E/AndroidRuntime(28040): 在 android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1993) 12-28 17:22:29.850: E/AndroidRuntime(28040): 在 android.app.ActivityThread.access$600(ActivityThread.java:127) 12-28 17:22:29.850: E/AndroidRuntime(28040): 在 android.app.ActivityThread$H.handleMessage(ActivityThread.java:1151) 12-28 17:22:29.850: E/AndroidRuntime(28040): 在 android.os.Handler.dispatchMessage(Handler.java:99) 12-28 17:22:29.850: E/AndroidRuntime(28040): 在 android.os.Looper.loop(Looper.java:137) 12-28 17:22:29.850: E/AndroidRuntime(28040): 在 android.app.ActivityThread.main(ActivityThread.java:4499) 12-28 17:22:29.850: E/AndroidRuntime(28040): 在 java.lang.reflect.Method.invokeNative(Native Method) 12-28 17:22:29.850: E/AndroidRuntime(28040): 在 java.lang.reflect.Method.invoke(Method.java:511) 12-28 17:22:29.850: E/AndroidRuntime(28040): 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:788) 12-28 17:22:29.850: E/AndroidRuntime(28040): 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:555) 12-28 17:22:29.850: E/AndroidRuntime(28040): at dalvik.system.NativeStart.main(Native Method) 12-28 17:22:29.850:E/AndroidRuntime(28040):原因:android.view.InflateException:二进制 XML 文件第 2 行:膨胀类片段时出错 12-28 17:22:29.850: E/AndroidRuntime(28040): 在 android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:697) 12-28 17:22:29.850: E/AndroidRuntime(28040): 在 android.view.LayoutInflater.inflate(LayoutInflater.java:466) 12-28 17:22:29.850: E/AndroidRuntime(28040): 在 android.view.LayoutInflater.inflate(LayoutInflater.java:396) 12-28 17:22:29.850: E/AndroidRuntime(28040): 在 android.view.LayoutInflater.inflate(LayoutInflater.java:352) 12-28 17:22:29.850: E/AndroidRuntime(28040): 在 com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:267) 12-28 17:22:29.850: E/AndroidRuntime(28040): 在 android.app.Activity.setContentView(Activity.java:2007) 12-28 17:22:29.850: E/AndroidRuntime(28040): 在#########.MainActivity.onCreate(MainActivity.java:11) 12-28 17:22:29.850: E/AndroidRuntime(28040): 在 android.app.Activity.performCreate(Activity.java:4637) 12-28 17:22:29.850: E/AndroidRuntime(28040): 在 android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1051) 12-28 17:22:29.850: E/AndroidRuntime(28040): 在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1932) 12-28 17:22:29.850: E/AndroidRuntime(28040): ... 11 更多 12-28 17:22:29.850:E/AndroidRuntime(28040):原因:android.app.Fragment$InstantiationException:无法实例化片段 com.google.android.gms.maps.MapFragment:确保类名存在,是公开的,并且有一个公开的空构造函数 12-28 17:22:29.850: E/AndroidRuntime(28040): 在 android.app.Fragment.instantiate(Fragment.java:581) 12-28 17:22:29.850: E/AndroidRuntime(28040): 在 android.app.Fragment.instantiate(Fragment.java:549) 12-28 17:22:29.850: E/AndroidRuntime(28040): 在 android.app.Activity.onCreateView(Activity.java:4407) 12-28 17:22:29.850: E/AndroidRuntime(28040): 在 android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:673) 12-28 17:22:29.850: E/AndroidRuntime(28040): ... 20 更多 12-28 17:22:29.850: E/AndroidRuntime(28040): 由: java.lang.ClassNotFoundException: com.google.android.gms.maps.MapFragment 12-28 17:22:29.850: E/AndroidRuntime(28040): 在 dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:61) 12-28 17:22:29.850: E/AndroidRuntime(28040): 在 java.lang.ClassLoader.loadClass(ClassLoader.java:501) 12-28 17:22:29.850: E/AndroidRuntime(28040): 在 java.lang.ClassLoader.loadClass(ClassLoader.java:461) 12-28 17:22:29.850: E/AndroidRuntime(28040): 在 android.app.Fragment.instantiate(Fragment.java:571) 12-28 17:22:29.850: E/AndroidRuntime(28040): ... 23 更多
我有自己的 API 密钥,并且包的名称是正确的。 也许我的 eclipse 或 android sdk 有问题!?
【问题讨论】:
-
告诉我你在右击项目、属性并转到 android 后看到了什么。在第二帧(是库)中,是否有绿色的右标记或红色的 x 标记? - 当然假设您已经添加了 google-play-services 库
标签: java android eclipse google-maps android-fragments