React Native fetch API не работает на Android - PullRequest
0 голосов
/ 03 декабря 2018

Я новичок в разработке React Native.Я разработал свое первое приложение React Native и запустил его в версиях для Android и iOS.

В приложении я использую API выборки для связи с сервером.Приложение работает нормально и получает ответ от API получения в версии для iOS.И это также хорошо работает в версии Android, если устройство подключено к высокоскоростному сетевому соединению (например, WiFi, 4G ..).

Но если устройство подключено к низкому сетевому соединению, API выборки не возвращает никаких значений(получая ошибку «Ошибка сетевого подключения») в версии приложения для Android.Но в том же соединении работают другие приложения, которые установлены на том же устройстве.

Я использую

react-native-cli: version 2.0.1
react-native: version 0.55.4
babel-preset-react-native: version 4.0.0,
Android compileSdkVersion 26
buildToolsVersion 23.0.1

Вот мой код API выборки

getStudentList() {
var UrlDetails = URLDetails.getURLDetails();
return fetch(UrlDetails.SERVER_NAME + UrlDetails.GET_STUDENT_DETAILS_LIST_URL + 'student_id=1')
  .then((response) => response.json())
  .then((responseJson) => {
    let ds = new ListView.DataSource({ rowHasChanged: (r1, r2) => r1 !== r2 });
    let isAllSet = responseJson.error;
    if (!isAllSet) {
      this.setState({
        isLoading: false,
        dataSource: ds.cloneWithRows(responseJson.student),
        isAllSetToShow: isAllSet,
      }, function () {
        activity_log = "received student details";
        this.updateDeviceLog();
      });
    } else {
      this.setState({
        isLoading: false,
        isAllSetToShow: isAllSet,
      }, function () {
        activity_log = "received response no student details";
        this.updateDeviceLog();
      });
    }
  })
  .catch((error) => {
    console.error(error);
    activity_log = JSON.stringify(error);
    Alert.alert('Alert',"Please check your internet connection!");
    this.updateDeviceLog();
  });

}

Любое предложение приветствуется.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...