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