0

昨日、facebook unity プラグインをバージョン 4.2.4 から 4.3.3 にアップグレードしました。

古いバージョンの場合、jar ファイルを project/plugin/Android に追加し、それを使用する特定のコードを追加するだけです。

新しいバージョンに関しては、Facebook の Android プロジェクト全体が提供されるだけですが、どうすればよいですか?

  1. それをjarにコンパイルして、以前のように使用しますか?

  2. 私のプロジェクトをエクスポートし、FB プロジェクトを使用して Eclipse にパッケージ化しますか?(これは毎回非常に時間の無駄です)

実際、私は両方を試しました:

1. これは機能しなくなり、リソース ID エラーが発生します。

2. パッケージを作成しましたが、以前の 4.2.4 のようにログインできません。

私と同じように誰かが同じ問題を抱えていますか?

実行中のプロジェクトとして、追加するSDKが多すぎて、毎回各プラグインを処理するのに多くの時間を費やす必要がないため、SDKはプロジェクト全体を提供するべきではないと本当に思います。フェイスブックのような大企業は物事をより簡単にするべきです.

ところで: Facebook ページの説明は古いため、有益な情報を得ることができませんでした。

4

1 に答える 1

0

新しい 4.3.3 バージョンで「ビルドして実行」できるはずです (パッケージをインポートして構造をそのままにしておく場合。これをインポートする前に古い Facebook SDK を必ずクリアしてください)。Unity は自動的にプロジェクトでコンパイルします。

なぜこれを行ったのかという質問に答えるには:

  1. jar から切り替えられた理由は、それが jar にコンパイルされたときの古いバージョンでは、R クラスがコンパイル時に (jar の) リソース ID をハードコーディングしていたことを意味していたためです。残念ながら、他のプラグインがプロジェクトに導入された場合、リソース ID は並べ替えられますが、jar 内の R クラスは調整されません。これにより統合が壊れ、Facebook と他の Android プラグインの統合が役に立たなくなります。

  2. 何人かの開発者が必要に応じてコードを編集するためのより多くの方法を要求したため、Android ファイルのソースはそれと一緒にパッケージ化されました。Unity 用の Android プラグインがいくつかあります。Unity SDK が適切に機能するように最善を尽くしていますが、開発者がそれらをマージする方法をさらに制御したい場合があります。

そうは言っても、プロジェクトを 4.2.4 から 4.3.3 にアップグレードしたので、https ://developers.facebook.com/unity/change-log-4.x/#131013 の変更ログに従いましたか?

基本的に、パッケージをインポートしても古いファイルを削除できないため、jar メソッドを使用したプロジェクトをクリーンアップする方法がありませんでした。プロジェクトに両方を保持すると、Android ビルドが壊れます。これは 1 回限りの移行であり、再度行う必要があります。

于 2013-10-24T18:15:19.737 に答える