Итак, я использую RN уже 5 месяцев и недавно узнал, что у RN нет реального способа обработки фоновых задач, потому что как только приложение переходит в фоновый режим, js bridge закрывается.
Для приложения на основе Geolocation
это хорошо, потому что мы можем просто повторно загружать свежие данные каждый раз, когда приложение возвращается на передний план, используя AppState
слушатель в качестве триггера события.Так что это не проблема для моего текущего проекта.
Но только для справки в будущем, если это действительно пока невозможно для RN, как тогда push notification
работает для приложений, созданных с использованием RN?В частности, если есть основанный на таймере local push notification
?
, я заметил, что даже в самой документации RN команда RN должна сначала написать свой API push-уведомлений на native, а затем связать его с js.Это делает проекты, построенные на предположениях expo о чистом JS-кодировании, немного глупыми.Я имею в виду, что для стандартного приложения бизнес-уровня нам, конечно, всегда нужна небольшая степень нативного.Даже если мы используем только чужую библиотеку, нам все равно нужно будет использовать react-native link
.
В любом случае, я думаю, что один из способов обойти подобные проблемы - написать любые фоновые задачи на нативном и связать модули с RN, используя их функциональность Native Modules
.Другой - подождать, пока кто-то более опытный в Native столкнется с той же проблемой, что и вы, и создать библиотеку, из которой вы можете извлечь пиковую информацию (это то, чем я занимался в основном)
Учитывая мой единственный опыт работы на одном уровнес нативным, это кажется немного сложным, если мне когда-либо придется писать натив на свой страх и риск.Есть ли какие-то другие (надеюсь, более простые) решения, которые я упустил здесь упомянуть?
Я довольно новичок в этих вещах, поэтому любые рекомендации будут с благодарностью приняты: D