2

我已将 Google Play 服务作为库项目添加到 Intelli-J 中的 Android 项目中,但似乎 IDE 仍未识别这些资源。当应用程序尝试为地图充气时,我收到以下错误:

ERROR/AndroidRuntime(16002): FATAL EXCEPTION: main
    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)

这是布局 XML 中片段的代码。

    <fragment
        xmlns:map="http://schemas.android.com/apk/res-auto"
        android:id="@+id/map"
        android:layout_width="match_parent"
        android:layout_height="200dp"
        class="com.google.android.gms.maps.SupportMapFragment"
        map:cameraZoom="13"
        map:mapType="normal"
        map:uiCompass="false"
        map:uiRotateGestures="true"
        map:uiScrollGestures="false"
        map:uiTiltGestures="true"
        map:uiZoomGestures="true" />

maps_attrs.xmlGoogle Play 项目中,<declare-styleable name="MapAttrs">“MapAttrs”以红色突出显示。

在 Eclipse 中编译时,代码可以正常运行。

有谁知道如何让 IDEA 识别资源?

4

1 回答 1

0

我可以通过从 Android 重新安装 Google Play 服务,在 Eclipse 中编译,然后将其重新附加到我的 IDEA 项目并将 google-play-services-lib 的 R.java 输出重定向到一个虚拟目录(将 google-play-services 模块 Android 界面的编译器选项卡下的 R.java 输出目录从“.../gen”更改为“.../_gen”)。我仍然不确定是什么原因造成的。

看起来 JetBrains 将在 12.1 中改变这种行为:http: //youtrack.jetbrains.com/issue/IDEA-99045

于 2013-02-14T21:49:01.967 回答