Как динамически добавлять метаданные (не в манифесте, а внутри кода)?
Я хочу установить метаданные приложения, используя код. Возможно ли это в Android? Попытка установить идентификатор приложения Facebook в код, не входящий в манифест.
meta-data android:name="com.facebook.sdk.ApplicationId"android:value="@string/applicationId"
Пожалуйста, помогите мне.
3 ответа
Эта ссылка показывает, как добавить идентификатор приложения для Facebook: ДОБАВИТЬ ДИНАМИЧНО ID приложения Facebook
Я хочу установить метаданные приложения с помощью кода. Возможно ли это в Android?
Нет, это невозможно. Манифест get анализируется во время компиляции -> вы не можете добавлять метаданные во время выполнения.
Для динамического добавления любых метаданных вы можете использовать этот код:
try {
ApplicationInfo applicationInfo = getPackageManager().getApplicationInfo(getPackageName(), PackageManager.GET_META_DATA);
applicationInfo.metaData.putString("Your Key", "Your Value");
} catch (PackageManager.NameNotFoundException e) {
e.printStackTrace();
}
Привет всем, что я знаю выше, ответ подходит для старой версии SDK, но в
facebook sdk 4+
нет сессионного класса
Вы можете просто сделать это, используя этот однострочный код:
FacebookSdk.setApplicationId(APP_ID);
Спасибо!