2

Google Play Services をライブラリ プロジェクトとして 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 Services を再インストールし、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 に答える