2

我最近从 FB for Android 2.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 并以编程方式在其 onCreate() 中应用我的应用程序 ID 来创建会话。

我该怎么做?我谷歌它,但还没有找到任何解决方案。使用元数据在清单文件中设置 FB 应用程序 ID 是一种常见的做法吗?我真的不想通过将其放在 xml 文件中来显示我的应用程序 ID。请帮忙!

4

2 回答 2

1

Your Application ID is NOT considered a secret (just like how a person's profile ID is not a secret).

但是如果你真的不想使用xml方法,你可以复制或子类化UiLifecycleHelper并更改相应的方法以使用你自己的方式创建一个Session。

于 2013-02-11T18:06:52.387 回答
1

如果您想在代码中设置它,您可以getMetadataApplicationId()Utility.Java更改方法并添加代码以将应用程序 ID 设置为您喜欢的任何内容。

于 2013-05-20T06:15:56.570 回答