![](/img/trans.png)
[英]Run Time Error : java.lang.NoClassDefFoundError: com.google.android.gms.R$styleable
[英]Android Google Maps v2: java.lang.NoClassDefFoundError: com.google.android.gms.R$styleable
我在Android应用中使用Maps v2 API。 地图过去可以正常工作,但显然项目设置中的某些内容已更改,现在每次使用地图启动视图时都会遇到以下错误:
java.lang.NoClassDefFoundError: com.google.android.gms.R$styleable
at com.google.android.gms.maps.GoogleMapOptions.createFromAttributes(Unknown Source)
at com.google.android.gms.maps.SupportMapFragment.onInflate(Unknown Source)
at android.support.v4.app.FragmentActivity.onCreateView(FragmentActivity.java:269)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:685)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:755)
at android.view.LayoutInflater.inflate(LayoutInflater.java:492)
at android.view.LayoutInflater.inflate(LayoutInflater.java:397)
我正在使用Android Studio,并且按照本指南设置了库。 http://forum.xda-developers.com/showthread.php?t=2328738
我想念什么?
您的设置看起来像是错误的,因此您会遇到该异常,因为在运行时无法检索属于Google Play服务库的资源。 基本上是因为该指南没有更新,您在实际上可以避免使用时设置了很多东西。
我的建议是:
在build.gradle文件中,将依赖项添加到Google Play服务库和支持库(仅在需要时使用此库,这不是必需的)。 例:
buildscript {仓库{mavenCentral()}依赖项{classpath'com.android.tools.build:gradle:0.6.1'}} Apply插件:'android'
存储库{mavenCentral()}
android {compileSdkVersion 17 buildToolsVersion“ 18.0.1”
defaultConfig { minSdkVersion 10 targetSdkVersion 17 }
}
依赖项{编译'com.android.support:support-v4:18.0.0'编译'com.google.android.gms:play-services:3.1。+'}
遵循官方指南设置适用于Android的Google Maps v2: https : //developers.google.com/maps/documentation/android/start#getting_the_google_maps_android_api_v2
检查新的Location API以获取您的位置: https : //developer.android.com/google/play-services/location.html
我也遇到了同样的问题,显然,如果您只是导入google play服务.jar文件,Android Studio将无法找到所需的资源文件。 鉴于此,我通过导入GooglePlayService项目模块和.jar文件来解决该问题:
转到项目结构->导入模块“ / extras / google / google_play_services / libproject / google-play-services_lib”到您的项目。
添加导入到主项目的模块的模块依赖性
将库“ google-play-services”(在导入模块后显示)添加到您的主项目
重建,它将正常工作
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.