Почему React Native Webview не загружает изображение с URL-адреса

У меня есть веб-сайт, который загружает изображения из Интернета, я подумал, что могу легко создать приложение React, которое просто отображает веб-страницу в виде веб-представления.

Веб-страница загружается отлично, и я добавил журнал, который показывает, что URL-адрес изображения загружается правильно.

Но изображения не отображаются в приложении для Android. Я не знаю, как правильно отлаживать приложения React Native

На веб-странице изображение отображается через свойство CSS 'background-image: url (image url)' И я обновляю это свойство, возможно, это источник проблемы.

Это веб-сайт, он действительно создан для мобильных устройств и до сих пор остается незавершенным.

https://praw.herokuapp.com/

Что я пробовал: Я использовал Android Studio для отладки APK, и LogCat показывает 1 ошибку каждый раз, когда я пытаюсь изменить изображение.

E/StudioTransport: JVMTI error: 103(JVMTI_ERROR_ILLEGAL_ARGUMENT)

Выполнение некоторого поиска в Интернете JVMTI_ERROR_ILLEGAL_ARGUMENT - это ошибка, вызванная тем, что «предоставленный буфер памяти слишком мал».

That makes me think, React allocated memory for my app, but once I loaded a new image it didn't have enough memory to display it? What do you think?

Это вся информация, которую я смог найти об ошибке ... Android Studio не предоставила мне другой полезной информации.

Возможно, это ошибка React Native WebView? Следует ли мне поднять вопрос о GitHub?

Могу ли я поделиться какой-либо другой информацией, которая может помочь?

Весь мой собственный код React ?

import React, { Component } from 'react';
import { WebView } from 'react-native-webview';

class App extends Component {
  render() {
    return (
      <WebView source = {{ uri: 'https://praw.herokuapp.com/' }}/>
    );
  }
}

export default App;
1
0
30
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Попробуйте с помощью View

<View style = {{flex: 1, flexDirection: 'row'}}>
          <WebView style = {{flex:1}} source = {{ uri: 'https://praw.herokuapp.com/'}}  />
    </View>

или попробуйте добавить <application android:largeHeap = "true"> в манифест Android

извините, спасибо вам большое, я пробовал, но все равно не повезло. Android Studio LogCat также показывает новую ошибку E/ResolverController: No valid NAT64 prefix

George Feros 02.04.2021 23:53

Я собираюсь попробовать начать новый проект React N и посмотреть, поможет ли это, я думаю, что, возможно, я испортил файл конфигурации, возможно

George Feros 02.04.2021 23:54

создать проект, к сожалению, не помогло, все еще нет изображения и эта новая ошибка

George Feros 03.04.2021 00:34

Какая у вас версия веб-просмотра?

Usama Altaf 03.04.2021 13:20

последняя версия угрюмо, но теперь проблема решена, я думаю, что есть опция / настройка для веб-представления, которое мне нужно переключить, чтобы разрешить HTTP-запросы, но я не знаю, что это такое

George Feros 04.04.2021 14:49
Ответ принят как подходящий

Исправлено, оказалось, что http-запросы не подходят ... Я, наверное, не должен делать то, что делал, но я изменил URL-адреса изображений с http на https ...

Вам нужны защищенные URL-адреса, иначе изображение не будет отображаться

Ошибки в LogCat бесполезны и не имеют ничего общего с ошибкой. Я догадался, что это проблема, прочитав исходный код Java в Web Views. Пройдя через это, я получил несколько подсказок, и это сработало ... да, я думаю

Другие вопросы по теме