Action Bar SherlockからAction Bar compatに移行しています。 ABSを削除し、その中にsupport-v4-googleマップがあり、エラーが発生しました。 v4をプロジェクトに直接追加して、解決するかどうかを確認しますが、知りたいのは次のとおりです。
ライブラリが冗長または補完的なものである場合、ドキュメントから本当に理解できませんか?
アドバイス、ポインタなどをありがとう.
編集:これはv4を「外部jar ...」で追加したエラーです。それを解決します。
The type Android.support.v4.app.TaskStackBuilder$SupportParentable cannot be resolved.
It is indirectly referenced from required .class files
しかし、すでにv7を持っている場合、v4を追加すべきではないと言う場合、どのようにEclipseに説明しますか?
関連する投稿、ソリューションはここにv4を追加することでした。 ActionBarActivityを拡張する場合、タイプアクティビティの階層は一貫していません
編集2:これらの手順をポイントごとに実行した場合、v4 jarはv7ライブラリプロジェクトに含まれます。 http://developer.Android.com/tools/support-library/setup.html#add-library 私のセットアップは:
v7にはv4サポートライブラリが含まれているため、v4サポートライブラリを再度使用する必要はありません。
v7サポートライブラリのlibs
フォルダを見ると、v4 jarがライブラリで既に参照されていることがわかります。
V7はAndroidサポートライブラリの新しいバージョンであり、V4サポートライブラリのV7に実装された新しいものです。したがって、v4のすべてのメソッドとクラスはv7内で使用できます。
したがって、v7ライブラリを追加する場合、v4ライブラリを追加する必要はありません。
Android Studioを使用している場合、v7サポートライブラリが含まれるデフォルトの方法は、build.gradleファイルで定義されたmaven依存関係です。
dependencies {
compile 'com.Android.support:appcompat-v7:18.0.0'
}
Appcompat-v7 .aarファイルにはv4クラスが含まれていません。これは、build/exploded-bundles/ComAndroidSupportAppcompatV71800.aarフォルダーで確認できます。私が見つけたのは、新しいプロジェクトを作成すると、SDKフォルダーのv4の.jarファイルも含まれることです。
私の場合(Eclipse)では、プロジェクトにインポートするv4およびv7 jarに依存します。
私の提案は、このフォルダーにある両方のファイルjarを使用することです:C:\ adt-bundle-windows-x86_64-aaaammgg\sdk\extras\Android\support\v7\appcompat\libs
私の場合、Eclipseでpublic class MainActivity extends AppCompatActivity
を使用したとき、「Android-support-v7-appcompat.jar」だけでは不十分でした。 Android-support-v4.jar
(ビルドパス->ライブラリ-> JARの追加)も追加する必要がありました。そのときだけAppCompatActivity
が受け入れられました。