#android
Вопрос:
привет, я столкнулся с серьезными проблемами, я хочу использовать код для добавления элемента метаданных манифеста. прежде чем я добавлю метаданные в манифест. но теперь я хочу использовать для этого java-код, потому что значение должно отличаться от ОС Android.
lt;meta-data android:name="io.flutter.embedding.android.OldGenHeapSize" android:value="1024" /gt;
а ниже приведен мой java-код
public static void putMetaData(Context context,String key,int value) { if (context == null || MFCommonUtils.isEmpty(key)) { Log.e("lhj","context == null || MFCommonUtils.isEmpty(key)"); return; } PackageManager pm = context.getPackageManager(); if (pm == null) { Log.e("lhj","pm == null"); return; } ApplicationInfo applicationInfo; try { applicationInfo = pm.getApplicationInfo(context.getPackageName(), PackageManager.GET_META_DATA); if (applicationInfo.metaData == null) { Log.e("lhj","applicationInfo == null || applicationInfo.metaData == null"); return; } applicationInfo.metaData.putInt(key,value); Log.e("lhj","set value"); } catch (PackageManager.NameNotFoundException e) { e.printStackTrace(); Log.e("lhj",e.getMessage()); } }
я получаю метаданные в MainActivity. событие, которое я называю putMetaData
onCreate в приложении, похоже, не работает. но если я отлажу приложение. это работает.