web-dev-qa-db-ja.com

Androidプロジェクトへのサポートライブラリの追加

なぜAndroid開発の波に乗るのに苦労しているのですか?私は長年にわたってさまざまな言語で開発してきましたが、何らかの理由で、Androidでその「jeez-i-still-feel-a-total-noob」段階を超えることはできないようです。

そのため、Android 2.3.3プロジェクトにアクションバーを追加しようとしています。問題ありませんよね? Android開発者のWebサイトには、その実行方法を正確に説明するわかりやすい記事があります。もちろん、appcompat v7サポートライブラリを追加する必要があります。問題ありません。これも このページ で段階的に文書化されています。しかし、Androidでのほぼすべてのこのようなエクササイズと同様に、ページで指示されているとおりに正確に実行できることがわかりました。

したがって、上記のリンクの「リソースを使用したライブラリーの追加」セクションの「Eclipseの使用」の手順に従いました。私が受け取る最初のエラーは、ターゲット「Android-16」を解決できません。問題ありませんが、これは自分で理解できますが、興味があります。私がフォローしているドキュメントには、Android 4.1.2(API16)が必要であると示唆するものがありますかインストールされていますか?私はちょうどそれを読んだだけですか、私がやろうとしていることを行うにはAPI16が必要であることを自分で知っている必要がありましたか?

気にしないでください、少なくとも私はそれを修正できますが、新しい問題が発生します。 Android-support-v7-compatライブラリをプロジェクトに追加して[OK]ボタンをクリックすると、コンソール出力がエラーで点灯します。最初のエラーは次のとおりです。

C:...\Android-support-v7-appcompat\res\values-v14\styles_base.xml:24:エラー:アイテムの親の取得エラー:指定された名前 'Android:Widget.Holo.ActionBarに一致するリソースが見つかりません'。

他の60個の奇妙なエラーは似ていますが、名前が異なっています。

誰かが私を助けてくれたら本当にありがたいです。明らかに、この特定の問題を解決する方法を知りたいのですが、この新しい開発環境を学習するこの非常にイライラする段階を乗り越える方法について誰かが私にいくつかのヒントを与えてくれたら、私はとても感謝しています。 Android Developers Webサイトの手順を順を追って実行する以外に、この種のエラーが発生しないように別の方法ですべきだったことは何ですか?

24

OK、最終的に自分の問題を解決することができたので、回答を投稿する必要があると思います。

Android 2.3.3-のために特別に開発しているという事実に関係なく、ビルドターゲットAndroid 4.2.2を使用する必要があります。つまり、サポートライブラリを使用しているのはこのためです。他の低いターゲット(ただし2.3.3より高いターゲット)でも動作する可能性があると思います。インストールした最高のターゲットを使用しただけで問題が解決しました。 。

Android Developersウェブサイトのステップバイステップの指示に従うことでこれを知るはずだった方法は私には謎です。targetSdkVersionを変更しようと決めた理由は、 質問で参照されているページ のセクション。「既存のアプリケーションの以前のバージョンとの後方互換性をAndroid API with Supportライブラリ、アプリケーションのマニフェストを更新してください。」現在、既存のアプリケーションの後方互換性を向上させていません。2.3.3をターゲットとする既存のアプリケーションを変更して、アクションバーを含めることができるようにします。前方互換性」)。targekSdkVersionをアップグレードしようとしましたが、アイデアがなかったので、目を見張るものでしたが、うまくいきました。

22

それがあなたに役立つかどうかはわかりませんが、私は数時間同様の問題に苦労しており、最終的にそれを解決することができました。私の場合、自分のプロジェクトのstyles.xmlファイル内で、親属性で間違った方法でAppCompatスタイルを参照していました。

私が使用していた:

<style name="AppBaseTheme" parent="Android:Theme.AppCompat">

私が使うべき場所:

<style name="AppBaseTheme" parent="@style/Theme.AppCompat">

私の間違いは、テーマへの言及にありました。

3
Matej

ライブラリプロジェクトAndroid-support-v7-appcompatのAndroidターゲットを2.3.3に設定すると、この問題が解決することがわかりました。プロジェクトのターゲットを高く設定する必要はありませんが、ライブラリのより低いターゲット。

1
Jacek Kopecky

V7を追加するときに、「ターゲット 'Android-16'を解決できません」というエラーを回避する方法を次に示します。

まず、Eclipseでリソースを使用してサポートライブラリを追加する手順に従いました。ステップ4に続いて、[完了]をクリックしました。エラーメッセージが表示されたとき、Android-support-v7-appcompat]ターゲット 'Android-16'を解決できません。

第二に、私はこの投稿を読みました。また、ダウンロードマネージャーを開きましたが、更新する必要はありませんでした。できるだけ正確に手順を実行したことを確認するために、Android-support-v7-appcompatプロジェクトを削除し、最初からやり直しました。

この2回目は、結局別のボックスをチェックしませんでした。しかし、ステップ4でもエラーは発生しませんでした。

ありがとう、デワルド、あなたはこの質問で私と同じ欲求不満を表明しました。経験が唯一の方法ですか?

0
Harry

すべての重要なドキュメントと関連セクション「リソースを使用したライブラリの追加」を特定しました。

http://developer.Android.com/tools/support-library/setup.html

このエラーは、プロジェクトがこれらのリソースを見つけることができないことを示しています。以下を再確認してください。

  1. ライブラリプロジェクトで「ライブラリである」をオンにしました

  2. そのセクションで説明されているように、ライブラリプロジェクトのjarをエクスポートしました。

  3. ライブラリプロジェクトをアプリプロジェクトへの参照として追加しました

  4. アプリプロジェクトのlibsフォルダーにAndroid-support-v4.jarを追加しました

これが完全に正しい場合は、Eclipseでエラーメッセージを確認してください。それは、ライブラリプロジェクトなのでしょうか、それとも有名なクリスマスツリーのように点灯するアプリプロジェクトなのでしょうか。

0
IanB

まず、 developers site で説明されているすべての説明された手順を実行したかどうかを確認します。次に、エラーについて:

ターゲット「Android-16」を解決できません

API16をインストールしたことを確認してください。API16のSDKがインストールされていないときにマニフェストでtargetsdkを16に指定した場合、このエラーが発生します。 APIをインストールするか、プロジェクトのtargetApiを最低限必要なバージョンに編集することができます。使用しているサポートライブラリでは、API 11が最低限必要なAndroidバージョン.

Android:Widget.Holo.ActionBar

また、プロジェクトでtargetsdkが修正されたら、このエラーも修正する必要があります。 Holo.ActionBarを使用するためには、サポートされている最小限のAPIレベルにプロジェクトをターゲットする必要があります。 11以上。

0
lil'ms

[プロジェクト]に移動-> [自動的にビルド]のチェックを外します

[プロジェクト]-> [クリーン...]に移動し、ライブラリプロジェクトとアプリプロジェクトの両方をクリーンします。

自動的にビルドが無効なまま、アプリを署名済みAPKとしてエクスポートします

0

同様の問題に遭遇しました。 API 18、ADTを使用します。

「ターゲット「Android-16」の問題を解決できない」を解決するために、インポートライブラリプロジェクトを削除し、チュートリアルの説明を繰り返します。

その後、プロジェクトにライブラリを実際に「追加」できないことがわかりました。 ([ライブラリ]ペインで[追加]をクリックします。 there はそれほど詳細ではありません。1.プロジェクト->プロパティ-> Java build path->ライブラリ->ライブラリを追加...-> Android Classpath Container-> libプロジェクトを選択2.プロジェクトで->プロパティ-> Android->追加...->ライブラリを選択->適用

乾杯

0
vancexu

一部のリソースxmlファイルでそれぞれのAppCompat参照が見つからない場合は、プロジェクトプロパティにサポートライブラリも追加してください。これを行うには:

1.)プロジェクト内のプロジェクトを右クリック

2.)プロパティを選択します。 (メニューの下部)

3.)新しいポップアップウィンドウの左側のメニューで[Android]をクリックします

4.)ライブラリセクションで、[追加]ボタンをクリックします

5.)それぞれのライブラリを選択します。 (表示されない場合は、ポップアップメニューの[ライブラリ]ウィンドウに既に表示されているかどうかを確認します。目的のライブラリに赤いxがある場合は、まずその問題を解決してください。)

6.)目的のライブラリの横に緑色のチェックマークが表示されたら、ライブラリセクションの[ライブラリである]オプションIS NOTが選択されていないことを確認します。

7.)適用をクリックします。

8.)ポップアップメニューを閉じます。

これでうまくいかない場合はお知らせください。お手伝いさせていただきます。私はこの問題に3時間を費やしたので、セットアップで問題が発生する可能性のあることをほとんどすべて知っています。

0
Adam Ruhl