2

最近、FB forAndroid2.0から3.0に移行しました。

使用する代わりに

<meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/app_id"/>

AndroidManifest.xmlで、プログラムでアプリケーションIDをセッションに設定したいと思いました。

セッションオブジェクトの作成時にSession.Builder.setApplicationId()を使用できることを知っています。ただし、UiLifecycleHelper.javaを使用すると、session.Builderを使用せずにセッションが作成されます。コンストラクターのみを使用します(session = new Session(activity))。マニフェストファイルでアプリIDのメタデータをすでに定義していることを前提としているようです。ただし、UiLifecycleHelper.javaで、Session.Builderを使用し、プログラムでアプリケーションIDをonCreate()に適用してセッションを作成する必要があります。

どうすればいいですか?私はそれをグーグルで検索しましたが、まだ解決策を見つけていません。メタデータを使用してマニフェストファイルにFBアプリケーションIDを設定するのは一般的な方法ですか?アプリIDをxmlファイルに入れて公開したくありません。助けてください!

4

2 に答える 2

1

アプリケーションIDはシークレットとは見なされません(個人のプロファイルIDがシークレットではないのと同じように)。

ただし、本当にxmlメソッドを使用したくない場合は、UiLifecycleHelperをコピーまたはサブクラス化し、適切なメソッドを変更して、セッションを作成する独自の方法を使用できます。

于 2013-02-11T18:06:52.387 に答える
1

コードで設定する場合は、メソッドgetMetadataApplicationId()Utility.Javaから変更し、コードを追加して、アプリケーション ID を好きなように設定できます。

于 2013-05-20T06:15:56.570 に答える