1

(理論的には)ライブラリに変換して外部アプリケーションにドロップできるAndroidアプリがあります。外部アプリは、自分のアプリを含むタブを作成できます。ライブラリ アプリは、コードが libs フォルダーの jar ファイルに格納されている google-play-services ライブラリと同様の方法でセットアップされます。

私が最初に経験した問題は、

Unable to execute dex: Multiple dex files define Lcom/MyLibraryApp/R$anim

エミュレータで外部アプリケーションを実行しようとしたとき。多くのグーグル検索と行き止まりの後、ビルド パス メニューの [注文とエクスポート] セクションで [Android プライベート ライブラリ] のチェックを外すことで、外部アプリを実行することができました。しかし、ライブラリ アプリを呼び出すタブに移動すると、

java.lang.NoClassDefFoundError: com.MyLibraryApp.SplashScreen 

ここで確認した後、これに対する解決策は「Android Private Libraries」を再確認することです。Androidプライベートライブラリをチェックして複数のDexファイルの問題を取得するか、チェックを外してNoClassDefFoundErrorを取得するため、私は行き詰まっています。

誰もこの種の問題に遭遇したことがありますか?

4

1 に答える 1

2

問題は、ライブラリ アプリ用に作成した jar に、元のアプリケーションの R.class ファイルと Manifest.class ファイルが含まれていたことです。次に、Eclipse/ADT はこれらの 2 つ目のコピーを gen フォルダーに作成しました。この質問は、瓶の中を見るように私をひっくり返したものです.

于 2013-11-15T15:52:41.853 に答える