Eclipse のライブラリ プロジェクトに変換した作業中のアプリがあります。ライブラリを空のアプリ (ライブラリから継承するもの以外の機能はありません) に「プロジェクト参照」として含めようとすると、ビルドに失敗します。メッセージが表示されますUnable to execute dex: Multiple dex files define Lcom/facebook/android/R$attr;
。
これを回避するために、Android 依存関係を完全に削除しようとしました。しかし、ライブラリ内のクラスに対して「クラスが見つからないという例外」が発生します。
アプリ ライブラリの依存関係を削除せずに、Facebook の依存関係を削除することは可能ですか? facebooksdk.jar ファイルを削除しようとしましたが、すべてのボタンがグレー表示されているため削除できませんでした。(以下のスクリーン キャプチャを参照)
また、「注文とエクスポート」の「Android 依存関係」のチェックを外してみました。それは問題に影響を与えませんでした。
あなたの提案は大歓迎です。
参考までに、私のプロジェクトには 3 つの主要コンポーネントがあります。3 つすべてが同じ Eclipse プロジェクト フォルダーに含まれています (スクリーン キャプチャを参照)。
- アプリケーション「App_A」
- Library_L (「A」のプロジェクト リファレンスとして含まれています) 非ライブラリ プロジェクトとして実行すると、Library_L が完全に実行されることは注目に値します。
- Facebook SDK 3.0.2 (Library_L の Project Reference として含まれています (スクリーン キャプチャを参照)