Google Maps Android API v2 - 简单的地图应用程序崩溃

Posted

技术标签:

【中文标题】Google Maps Android API v2 - 简单的地图应用程序崩溃【英文标题】:Google Maps Android API v2 - simple map app crashes 【发布时间】:2013-03-07 10:46:38 【问题描述】:

我是安卓开发新手 :)

我正在尝试创建一个简单的应用程序:一个带有地图的活动。 我将 HTC 1x 连接到计算机,当我尝试运行应用程序(通过 intellij IDEA)时,它崩溃了。

我已经在网络(和 ***)上搜索了线索,但找不到任何线索。例如: - Google Maps v2 - Error - google map - runtimeexception - error inflating class fragment

你能告诉我为什么吗?

谢谢,

奥马尔

技术细节:

HTC 1x 运行安卓 4.1.1 项目外部库: - android 4.0 Google API 的 - Android-Support-V4.jar - 谷歌播放服务.jar

主Activity.xml:

线性布局>

主Activity.Java

包 com.example.mapTest; 导入android.os.Bundle; 导入android.support.v4.app.FragmentActivity; 公共类 MainActivity 扩展 FragmentActivity /** * 在第一次创建活动时调用。 */ @覆盖 公共无效 onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState); setContentView(R.layout.mainActivity);

清单.xml

活动> 应用> 清单>

例外:

03-19 00:09:30.325: 错误/NotificationService(434): 忽略图标通知==0: 通知(pri=0 contentView=null vibrate=null sound=nullnull defaults=0x0 flags=0x62 kind=[null]) 03-19 00:09:41.430: 错误/MediaScannerService(13421): 异常扫描文件 android.os.DeadObjectException 在 android.os.BinderProxy.transact(本机方法) 在 android.media.IMediaScannerListener$Stub$Proxy.scanCompleted(IMediaScannerListener.java:100) 在 com.android.providers.media.MediaScannerService$ServiceHandler.handleMessage(MediaScannerService.java:1007) 在 android.os.Handler.dispatchMessage(Handler.java:99) 在 android.os.Looper.loop(Looper.java:155) 在 com.android.providers.media.MediaScannerService.run(MediaScannerService.java:713) 在 java.lang.Thread.run(Thread.java:864) 03-19 00:09:48.655: 错误/ExternalAccountType(31657): 不支持的属性只读 03-19 00:09:48.900: 错误/ExternalAccountType(31657): 不支持的属性只读 03-19 00:09:51.965: 错误/EmbeddedLogger(434): 应用程序崩溃了!进程:com.example.mapTest 03-19 00:09:51.965: 错误/EmbeddedLogger(434): 应用程序崩溃了!包:com.example.mapTest v1 (1.0) 03-19 00:09:51.965:错误/嵌入式记录器(434):应用程序标签:mapTest 03-19 00:09:51.965:错误/AndroidRuntime(22403):致命异常:主要 java.lang.NoClassDefFoundError: com.google.android.gms.R$styleable 在 com.google.android.gms.maps.GoogleMapOptions.createFromAttributes(未知来源) 在 com.google.android.gms.maps.SupportMapFragment.onInflate(未知来源) 在 android.support.v4.app.FragmentActivity.onCreateView(FragmentActivity.java:279) 在 android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:676) 在 android.view.LayoutInflater.rInflate(LayoutInflater.java:746) 在 android.view.LayoutInflater.inflate(LayoutInflater.java:489) 在 android.view.LayoutInflater.inflate(LayoutInflater.java:396) 在 android.view.LayoutInflater.inflate(LayoutInflater.java:352) 在 com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:365) 在 android.app.Activity.setContentView(Activity.java:1912) 在 com.example.mapTest.MainActivity.onCreate(MainActivity.java:13) 在 android.app.Activity.performCreate(Activity.java:5066) 在 android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1101) 在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2307) 在 android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2387) 在 android.app.ActivityThread.access$600(ActivityThread.java:151) 在 android.app.ActivityThread$H.handleMessage(ActivityThread.java:1331) 在 android.os.Handler.dispatchMessage(Handler.java:99) 在 android.os.Looper.loop(Looper.java:155) 在 android.app.ActivityThread.main(ActivityThread.java:5485) 在 java.lang.reflect.Method.invokeNative(Native Method) 在 java.lang.reflect.Method.invoke(Method.java:511) 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1028) 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:795) 在 dalvik.system.NativeStart.main(本机方法) 03-19 00:09:53.785: 错误/MediaScannerService(13421): 异常扫描文件 android.os.DeadObjectException 在 android.os.BinderProxy.transact(本机方法) 在 android.media.IMediaScannerListener$Stub$Proxy.scanCompleted(IMediaScannerListener.java:100) 在 com.android.providers.media.MediaScannerService$ServiceHandler.handleMessage(MediaScannerService.java:1007) 在 android.os.Handler.dispatchMessage(Handler.java:99) 在 android.os.Looper.loop(Looper.java:155) 在 com.android.providers.media.MediaScannerService.run(MediaScannerService.java:713) 在 java.lang.Thread.run(Thread.java:864) 03-19 00:09:54.365: 错误/NotificationService(434): 忽略通知图标==0: 通知(pri=0 contentView=null vibrate=null sound=nullnull defaults=0x0 flags=0x62 kind=[null]) 03-19 00:10:03.075: 错误/ExternalAccountType(31657): 不支持的属性只读 03-19 00:10:03.380: 错误/NotificationService(434): 忽略通知图标==0: 通知(pri=0 contentView=null vibrate=null sound=nullnull defaults=0x0 flags=0x62 kind=[null]) 03-19 00:10:03.960: 错误/ExternalAccountType(31657): 不支持的属性只读 03-19 00:10:08.200: 错误/MediaScannerService(13421): 异常扫描文件 android.os.DeadObjectException 在 android.os.BinderProxy.transact(本机方法) 在 android.media.IMediaScannerListener$Stub$Proxy.scanCompleted(IMediaScannerListener.java:100) 在 com.android.providers.media.MediaScannerService$ServiceHandler.handleMessage(MediaScannerService.java:1007) 在 android.os.Handler.dispatchMessage(Handler.java:99) 在 android.os.Looper.loop(Looper.java:155) 在 com.android.providers.media.MediaScannerService.run(MediaScannerService.java:713) 在 java.lang.Thread.run(Thread.java:864) 03-19 00:10:10.270:错误/AndroidRuntime(23231):致命异常:主要 java.lang.NoClassDefFoundError: com.google.android.gms.R$styleable 在 com.google.android.gms.maps.GoogleMapOptions.createFromAttributes(未知来源) 在 com.google.android.gms.maps.SupportMapFragment.onInflate(未知来源) 在 android.support.v4.app.FragmentActivity.onCreateView(FragmentActivity.java:279) 在 android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:676) 在 android.view.LayoutInflater.rInflate(LayoutInflater.java:746) 在 android.view.LayoutInflater.inflate(LayoutInflater.java:489) 在 android.view.LayoutInflater.inflate(LayoutInflater.java:396) 在 android.view.LayoutInflater.inflate(LayoutInflater.java:352) 在 com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:365) 在 android.app.Activity.setContentView(Activity.java:1912) 在 com.example.mapTest.MainActivity.onCreate(MainActivity.java:13) 在 android.app.Activity.performCreate(Activity.java:5066) 在 android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1101) 在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2307) 在 android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2387) 在 android.app.ActivityThread.access$600(ActivityThread.java:151) 在 android.app.ActivityThread$H.handleMessage(ActivityThread.java:1331) 在 android.os.Handler.dispatchMessage(Handler.java:99) 在 android.os.Looper.loop(Looper.java:155) 在 android.app.ActivityThread.main(ActivityThread.java:5485) 在 java.lang.reflect.Method.invokeNative(Native Method) 在 java.lang.reflect.Method.invoke(Method.java:511) 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1028) 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:795) 在 dalvik.system.NativeStart.main(本机方法) 03-19 00:10:10.285:错误/EmbeddedLogger(434):应用程序崩溃!进程:com.example.mapTest 03-19 00:10:10.285:错误/EmbeddedLogger(434):应用程序崩溃!包:com.example.mapTest v1 (1.0) 03-19 00:10:10.285:错误/嵌入式记录器(434):应用程序标签:mapTest

【问题讨论】:

试试***.com/questions/15301607/… -- 特别注意,你不想要google-play-services.jar,而是整个Android库项目。 我不明白我做错了什么!有没有人有兴趣和我一起进行 teamviewer 会议? 【参考方案1】:

您是否在项目中包含了 Google Play 服务库?没有它,关键资源将不可用。请参阅问题:java.lang.noclassdeffounderror: com.google.android.gms.R$styleable 了解更多详情。

【讨论】:

我不明白我做错了什么!你有兴趣和我一起进行 teamviewer 会议吗?

以上是关于Google Maps Android API v2 - 简单的地图应用程序崩溃的主要内容,如果未能解决你的问题,请参考以下文章

Maps SDK for Android v.3.0.0 BETA "是否可以在没有Google Play服务的设备上运行?

Google Maps API v.3.31更新会破坏StageWebView和StageWebViewBridge

Google Maps Android API V2 检查 Google Maps 应用程序是不是被禁用

无法运行 Google Maps Android API Utility Demo

Google Geolocation API 和 Google Maps Android SDK

Android:使用 Google API 获取实时方向,还是与 Google Maps 通信?