Androidプロジェクトでは、Android.support.v4.widget.DrawerLayout
を使用しようとしました。
その前にlibs
ライブラリーに追加しました(cp MySdkForder/extras/Android/support/v4/Android-support-v4.jar MyProjectFolder/libs
)
その後、次のようにclasspath
に追加しました:
main.xml
ファイルにこのようなコードがあります
<Android.support.v4.widget.DrawerLayout
xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:id="@+id/drawer_layout"
Android:layout_width="match_parent"
Android:layout_height="match_parent">
<FrameLayout
Android:id="@+id/content_frame"
Android:layout_width="match_parent"
Android:layout_height="match_parent" />
<ListView Android:id="@+id/left_drawer"
Android:layout_width="240dp"
Android:layout_height="match_parent"
Android:layout_gravity="start"
Android:choiceMode="singleChoice"
Android:divider="@Android:color/transparent"
Android:dividerHeight="0dp"
Android:background="#111" />
</Android.support.v4.widget.DrawerLayout>
これはdeveloper.Android.com
のどこかで撮ったものです
アイデアはこのコードを完全にレンダリングします
起動しようとすると問題が始まります。 run
を押すと、adb
から次のエラーが発生します。
Cannot reload AVD list: cvc-enumeration-valid: Value '280dpi' is not facet-valid with respect to enumeration '[ldpi, mdpi, tvdpi, hdpi, xhdpi, 400dpi, xxhdpi, 560dpi, xxxhdpi]'. It must be a value from the enumeration.
Error parsing /usr/lib/Android/android-sdk-linux/system-images/Android-22/Android-wear/armeabi-v7a/devices.xml
cvc-enumeration-valid: Value '280dpi' is not facet-valid with respect to enumeration '[ldpi, mdpi, tvdpi, hdpi, xhdpi, 400dpi, xxhdpi, 560dpi, xxxhdpi]'. It must be a value from the enumeration.
Error parsing /usr/lib/Android/android-sdk-linux/system-images/Android-22/Android-wear/x86/devices.xml
cvc-enumeration-valid: Value '280dpi' is not facet-valid with respect to enumeration '[ldpi, mdpi, tvdpi, hdpi, xhdpi, 400dpi, xxhdpi, 560dpi, xxxhdpi]'. It must be a value from the enumeration.
Error parsing /usr/lib/Android/android-sdk-linux/system-images/Android-22/Android-wear/armeabi-v7a/devices.xml
cvc-enumeration-valid: Value '280dpi' is not facet-valid with respect to enumeration '[ldpi, mdpi, tvdpi, hdpi, xhdpi, 400dpi, xxhdpi, 560dpi, xxxhdpi]'. It must be a value from the enumeration.
Error parsing /usr/lib/Android/android-sdk-linux/system-images/Android-22/Android-wear/x86/devices.xm
こんな感じ
おかしいのは、それを閉じることすらできないことです(何度も表示されます)。しかし、それは私の質問ではありません。問題は、このAndroid.support.v4
を機能させる方法ですか?必要なことはすべてやり終えたと思うので(このライブラリをlibs
に追加し、依存関係を作成しました)、adb
はまだ動作しません(動作しない場合は完全に動作します) Android.support.v4
、標準機能のみを使用してください)
Genymotionを使用していますが、Android画像を着用する必要はありません。
SDKマネージャーを使用してアンインストール:
a)Android 5.1.1(API 22)-> Android Wear ARM EABI v7a System Image
b)Android 5.1.1(API 22)-> Android Intel x86を着用Atomシステムイメージ
AVDマネージャーを使用してすべてのデバイスを削除し、新しいデバイスを作成します。
私のために働く。
私はちょうどこの問題をここに持っていました:usr/lib/Android/android-sdk-linux/system-images/Android-22
そして、Android wearフォルダーを削除します。
Android Studioの場合。SDKマネージャーを開く
delete Android Wear ARM EABI v7a System Image and and Android Wear Intel x86 Atomシステムイメージパケット:@goshaにtrue.worksが通知されます。
Android SDK Managerを使用して、これら2つのパッケージを削除します。
詳細については、こちらの画像リンクをご覧ください。 http://i.stack.imgur.com/wq2tK.png
テキストエディターを使用してAndroid\android-sdk\system-images\Android-22\Android-wear\armeabi-v7a\devices.xml検索280dpiを開きます
それをhdpiに変更します
Android\android-sdk\system-images\Android-22\Android-wear\x86\devices.xmlについても同じことを行います
Eclipseを閉じます。 Eclipseを再起動します。エラーが消えます。
Windowsで作業している場合、ファイルはC:\ Program Files(x86)\ Android\android-sdk\system-images\Android-22\Android-wear\armeabi-v7a\devices.xml C:\ Programにあります。ファイル(x86)\ Android\android-sdk\system-images\Android-22\Android-wear\x86\devices.xml
エラーの原因は、plugins/Android/lib/
の下にインストールされているAndroidプラグインでアイデアによって使用されているAndroidのバージョンです。
プラグインでIDEAの新しいバージョンを使用するため、Android 15でこれに対処する必要があることがわかります。そのバージョンには、sdk-tools.jarにパッケージ化されているdevices-2.xsdに280dpi
のエントリがあります。
現在のdevices-2.xsdにエントリをハックしようとしましたが、それによりプラグインが後で完全に失敗します。 だからやってはいけない!
ウェア開発を行っていない場合、プラットフォームイメージからそれらのディレクトリを削除するという回答は有効です。
また、迷惑なエラーダイアログを配置することで、問題があるliveをクリックして、クリックしようとしている要素の上にokボタンがあるようにすることもできますChoose Deviceダイアログ次にダブルクリックします。退屈ですが、あなたはそこに着きます。
エラーが表示されます。情報を取得できます。このエラーはsdk/system-iamges/Android-22/Android-wear iamgeに関するものです。
したがって、sdk/system-iamges/Android-22/Android-wearディレクトリを削除できます。わたしにはできる!
エラーメッセージを見ると、問題はプロジェクトにあるものではなく、Android Virtual Deviceのセットアップにあると思われます。
プロジェクトを実際のAndroidサポートライブラリを含むデバイスで実行しようとしましたか?それが機能する場合、プロジェクトのセットアップに問題はありません。
推測されるように、問題がAVDである場合、AVDマネージャーにアクセスして、デバイスのセットアップがどのように見えるかを調べる必要があります。私はVDをあまり使いませんが、潜在的な問題の1つは、セットアップでGoogle APIが欠落している可能性があることです。
編集:
IntelliJの使用に関する説明を書き留めました。 AVDのプロジェクト/ IDEセットアップに問題があるようです。おそらく、作業中のAndroid Studioプロジェクトでdiffを実行することにより、何が間違っているのかを見つけ出すことが可能ですが、インストールするだけで時間と労力を大幅に節約できますそして、Android Studio。これはそれほど違いはありませんが、StudioにはAndroid固有の機能が十分にあるため、2つ以上のIDEがインストールされている場合でも価値があると思います。