Фоновая выборка, проблемы с тестированием

У меня есть реактивное приложение, которое включает react-native-background-task который использует react-native-background-fetch. Я настроил задание для console.log простого сообщения при запуске. Я понимаю, что фоновая выборка не работает на симуляторе, но вы можете проверить это, зайдя в Debug -> Simulate background fetch. Когда я нажимаю это, приложение переходит в фоновый режим. Я не получил никакого вывода. Я включил фоновую выборку в Info.plis, а также код возвращает статус.Доступен, когда я проверяю функцию библиотеки. Как вы на самом деле проверяете это?

Xcode 8.3.3
react-native 0.44.0
react-native-background-fetch 2.0.8 
react-native-background-task 0.2.1



class App extends Component {
componentWillMount() {
  BackgroundTaks.define(() => {
    console.log('==================FETCH==================');
    console.log('task running');
    console.log('====================================');

    BackgroundTaks.finish();
  });
}

componentDidMount() {
  BackgroundTaks.schedule();
}

render() {
  return (
    <Router />
  );
}}

экспортировать приложение по умолчанию;

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

libsystem_kernel.dylib`mach_msg_trap:
    0x186e9721c <+0>: mov    x16, #-0x1f
    0x186e97220 <+4>: svc    #0x80
->  0x186e97224 <+8>: ret 

person parohy    schedule 22.09.2017    source источник
comment
Меню Xcode › Отладка › Имитировать фоновую выборку   -  person Desdenova    schedule 22.09.2017
comment
@Desdenova Вот что я делаю, ты читал?   -  person parohy    schedule 22.09.2017
comment
Видимо нет :) Извините   -  person Desdenova    schedule 22.09.2017
comment
Пожалуйста, добавьте минимальный воспроизводимый пример   -  person bennygenel    schedule 22.09.2017


Ответы (2)


Решено. В конце я понял, что флажок фоновой выборки не был установлен в настройках проекта. После проверки работает.

person parohy    schedule 13.10.2017

Поскольку вы упомянули, что вы также пытались записать в хранилище, что не работает, мой обновленный ответ будет таким: пока вы выполняете фоновую выборку, вы можете одновременно попасть на сервер, на котором вы можете видеть журналы. Таким образом, вы можете сказать, успешно ли работает фоновая загрузка.

Я создал взломанный localTestingServer, который вы можете разветвить и сразу приступить к работе.

person prabodhprakash    schedule 22.09.2017
comment
Я редактирую вопрос. Я также пытался использовать хранилище, но после имитации фоновой выборки результата не было. Я даже установил его на устройство и дал ему поработать некоторое время, но хранилище не обновилось. - person parohy; 22.09.2017
comment
Как это приводит к сужению возможной проблемы, когда все, что я делаю, это запускаю фоновую задачу, чтобы установить фиктивную строку для хранения или распечатать вывод? Он вообще не запускает задачу и выдает исключение, которое я добавил к вопросу. - person parohy; 22.09.2017
comment
Потому что теперь вы можете отправлять логи на какой-то сервер на месте. Зависит от вашего воображения, чтобы решить проблему - person prabodhprakash; 22.09.2017