如何动态添加元数据(不在清单中但在代码内)?

时间:2013-08-28 22:07:21

标签: android android-manifest

我想使用代码设置应用元数据。在Android中有可能吗? 试图将Facebook应用程序ID设置为不在清单内的代码。

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

请帮帮我。

4 个答案:

答案 0 :(得分:6)

  

我想使用代码设置应用元数据。这可能在android?

不,这是不可能的。清单get在编译时解析 - >您无法在运行时添加元数据。

答案 1 :(得分:3)

此链接显示如何为Facebook添加应用ID:ADD DYNAMICALLY Facebook APP ID

答案 2 :(得分:0)

大家好,我知道上面的答案适合较旧的sdk版本,但在

facebook sdk 4+

没有会话类

您只需使用以下单行代码即可:

FacebookSdk.setApplicationId(APP_ID);

谢谢!

答案 3 :(得分:0)

要动态添加任何元数据,您可以使用以下代码:

try {
            ApplicationInfo applicationInfo = getPackageManager().getApplicationInfo(getPackageName(), PackageManager.GET_META_DATA);
            applicationInfo.metaData.putString("Your Key", "Your Value");
        } catch (PackageManager.NameNotFoundException e) {
            e.printStackTrace();
        }