3

現在、Facebook SDK を使用して Facebook ユーザーに関する情報を取得する Android Studio で取り組んでいるプロジェクトがあります。それはかなりうまくいきます。

AddThis も実装する必要がありますが、両方の SDK を参照してこのプロジェクトをコンパイルしようとすると、次のエラーが発生します。

Android Dex: [<removed>] com.android.dx.util.DexException: Multiple dex files define Lcom/facebook/android/AsyncFacebookRunner$1;

AddThis .jar 内には、予想どおり、com.facebook.android.AsyncFacebookRunner が存在します。明らかに、Facebook SDK モジュールにも存在します。Facebook には存在しない AddThis に必要な機能があり、その逆もあります。

この種の状況を処理する方法を知っている人はいますか?

4

1 に答える 1

3

この問題を解決できました:

Facebook SDK は jar ではなくモジュールであるため、Facebook SDK モジュールから AddThis0.8.8.jar を参照し、それへの参照をプロジェクトから直接削除しました。

その後、Facebook SDK の com.facebook.android.* と AddThis jar の複製 ( com.facebook.android.* ) の間にまだ競合がありました。だから、私は com.facebook.android パッケージをそのコンテンツと共に削除しました - Facebook SDK から- そして com.addthis を ( クラスパスに含めたと思いますか? Android Studio は、コードに「ATButton」と入力したときにそれを含めることを提案しました。 「ええ、JetBrainsに感謝します!」と言った)。

AddThis と Facebook SDK を競合することなく使用できるようになりました。

このプロセスが何らかの形で誰かを助けることができることを願っています.

[編集]

これにはまだ問題がありました。Facebook SDK を元に戻し、AddThis jar から Facebook のものを削除しました。まだ 100% は機能していませんが、すべての Facebook の機能を Facebook モジュールに保持することをお勧めします。より良い解決策がある場合は、回答を投稿してください。

于 2013-08-15T23:03:47.247 に答える