React Native отключает понижающую дискретизацию изображения Fresco - PullRequest
0 голосов
/ 10 октября 2019

Мне нужно отключить Fresco понижающую выборку для компонента <Image/>, и я прочитал, что Fresco необходимо инициализировать внутри android/app/src/main/java/com/<project>/MainApplication.java.

Fresco> Изменение размера / уменьшение частоты дискретизации
Fresco> Настройка конвейера изображения
Отчет о проблеме RN

Я нашел два способа сделать это, но ни одинтемы работал и не мог иметь Fresco отключение понижающей дискретизации изображения:

1-е переопределение onCreate и инициализацию Fresco следующим образом:

@Override
public void onCreate() {
  super.onCreate();

  Context context = getApplicationContext();
  ImagePipelineConfig config = ImagePipelineConfig.newBuilder(context)
    .setDownsampleEnabled(false)
    .build();
  Fresco.initialize(context, config);

  SoLoader.init(this, /* native exopackage */ false);
}

2-ая инициализация фрески, используя MainReactPackage внутри getPackages:

protected List<ReactPackage> getPackages() {
  Context context = getApplicationContext();
  ImagePipelineConfig frescoConfig = ImagePipelineConfig.newBuilder(context)
    .setDownsampleEnabled(false)
    .build();

  MainPackageConfig appConfig = new MainPackageConfig
    .Builder()
    .setFrescoConfig(frescoConfig)
    .build();

  return new ArrayList<>(Arrays.<ReactPackage>asList(
    new MainReactPackage(appConfig),
    new ReactNativeFirebaseAppPackage(),
    new FastImageViewPackage()
  ));
}

Я в данный момент на RN 0.60.5 и расширяю MainApplication с com.reactnativenavigation.NavigationApplication, потому чтоЯ использую response-native-navigation .

У меня вопрос, как отключить Fresco понижающую выборку изображений.

...