Vadim
У кого-нибудь в этом чате получилось настроить push-нотификации? Чтобы они работали на андроиде в бэкраунде и при закрытом приложении?
Andrii
хееей, всем привет) кто то делал goBack в саге с react-navigation 3?
Andrii
спасибо)
Evgeniy
кто использовал withNavigationFocus из react navigation? может кто нибудь сможет подсказать, у меня проблема с тем, что isFocused работает только при первом заходе в экран, после того как я выйду из экрана один раз он больше не вызывается при последующих заходах. в чем может быть дело?
Gena
Круто, было бы интересно поглядеть! (потому что gradle/groovy/android-plugin, это очень уязвимое место во всей инфраструктуре android - документации нет, исходники обширны и не прозрачны, поддержки со стороны официальной IDE нет, средств отладки и тестирования нет)
Ivan
Кто-нибудь использует rn-webview? У меня на андроиде вьюшка не рендерит контент, хотя сама вьюшка во весь экран(меняю цвет фона для проверки)
Vadim
Да, получилось
А какую библиотеку использовали?
Ivan
А какую библиотеку использовали?
Для iOS из коробки, для Android rn-firebase
Ivan
Вы контент грузите с JSON?
Нет, открываю ссылку на оплату через банк/яндекс.деньги
Ivan
на iOS всё ок
Vadim
Для iOS из коробки, для Android rn-firebase
прием в бэкграунде вот здесь описывается? https://rnfirebase.io/docs/v5.x.x/messaging/receiving-messages#4)-(Optional)(Android-only)-Listen-for-FCM-messages-in-the-background
Ivan
То что вы прислали это cloud message - как пуш, но без notification и body полей, только data
Ivan
оно никак не показывается на устройстве, только программно вы получаете данные
Evgeniy
как проверяете пропс isFocused ?
в componentDidUpdate, он даже не вызывается
Evgeniy
ну, то есть он вызывается и флаг меняется только при первом запуске на этом экране, если уйти с него в предыдущий (выкинуть данный экран из стека навигации), то в следующий заход уже не работает
Andrey
const { navigation } = this.props; this.willFocusSubscription = navigation.addListener('willFocus', () => this.setState({ focusedScreen: true }) ); this.willBlurSubscription = navigation.addListener('willBlur', () => { this.setState({ focusedScreen: false }); });
Andrey
у меня проблем нет
Evgeniy
эти лисенеры так же отрабатывают только один раз, вообще сейчас понять не могу почему )
Vadim
оно никак не показывается на устройстве, только программно вы получаете данные
Смотрите. Я получаю токен девайса и могу слать пуши. При отправке пуша я могу задать огрниченное кол-во инфы. Вибрацию не могу задать, например. Это значит, что я должен словить пуш с сервера и сделать уже локальный пуш с нужными мне настройками. Я пока правильно рассуждаю? )
Andrey
в конструкторе задаю стейт с focusedScreen: true
Vitalij
Народ самый глупый вопрос, но что то на оф сайте не нашёл нормального а главного Актуального видео либо же статьи по жизненому циклу react
Ivan
Смотрите. Я получаю токен девайса и могу слать пуши. При отправке пуша я могу задать огрниченное кол-во инфы. Вибрацию не могу задать, например. Это значит, что я должен словить пуш с сервера и сделать уже локальный пуш с нужными мне настройками. Я пока правильно рассуждаю? )
если вы реализуете всё с помощью Firebase Notifications, а не Cloud Messaging то всё должно работать как следует, а на программном уровне вы сможете по событиям открытия/получения пуша брать из него данные и уже решать что с ними делать
Evgeniy
код в студию
в том и проблема, что если сделать пустой пример, в котором просто два экрана и проверяются флаги, то всё работает, а у меня в конкретном случае не пашет, думал что может кто то сталкивался с какими то подобными проблемами
Vitalij
hooks
Я понимаю) а ссылок уна статью или видео есть, а то либо устаревшие хуки либо не информативно рассказываеттся
Vitalij
Ссылку уже не найдёте?
Andrey
@dark_flashes так если ты анмаунтишь экран выкидывая его из стека навигации что тебе должен показать willBlur или willFocus?
Evgeniy
@dark_flashes так если ты анмаунтишь экран выкидывая его из стека навигации что тебе должен показать willBlur или willFocus?
да, они приходят, но при следующем входе в экран они уже не работают , ни didFocus не срабатывает, ни isFocused не обновляется, пробую найти что может этому мешать... думаю, может ли быть проблема из за того что использую connect редакса
Andrey
withNavigation(connect(mapStateToProps... вот так у меня
Evgeniy
withNavigation(connect(mapStateToProps... вот так у меня
да, так же пробую, чисто теоретически должно работать
Ivan
Если приложение будет закрыто, то я смогу получать в нем данные?
Закрыто - нет, только если оно свёрнуто или открыто
Andrey
@dark_flashes листенеры же убираешь?
Ivan
Вопрос мой убежал Кто-нибудь использует rn-webview? У меня на андроиде вьюшка не рендерит контент, тупо пустая, хотя сама вьюшка во весь экран(меняю цвет фона для проверки)
Evgeniy
Если приложение будет закрыто, то я смогу получать в нем данные?
в андроид вроде можно сервис поставить, чтоб он в асинк стор закидывал пуши
Evgeniy
@dark_flashes листенеры же убираешь?
для работы флага isFocused нужно ставить-убить лисенер?
Vadim
в андроид вроде можно сервис поставить, чтоб он в асинк стор закидывал пуши
Так мне не писать куда-то надо. Мне надо, чтобы человек его увидел нормально ) Если просто слать пуши, то нельзя задать вибрацию, интерактив и т.д.
Evgeniy
Так мне не писать куда-то надо. Мне надо, чтобы человек его увидел нормально ) Если просто слать пуши, то нельзя задать вибрацию, интерактив и т.д.
дак сами пуши отображаться будут конечно, а вот дата-онли только в сервисе обрабатывать , при старте приложения доставать
Evgeniy
либо есть ивенты на тап по пушу, там тоже можно обрабатывать данные при нажатии
Andrey
@dark_flashes хм. я не использую isFocused, не подскажу
Evgeniy
@dark_flashes хм. я не использую isFocused, не подскажу
ну на didFocus и willBlur вроде корректно всё ставлю и убираю, в прошлом проекте работали )
Andrey
Andrey
вроде все ок
Andrey
несколько раз зашел в стэк, вышел, прошел дальше в стэке, вернулся.
Andrey
какая версия react navigation у тебя?
Evgeniy
хм, версия 2.16 , значит на этом проекте еще не обновлял библиотеки. но всё равно, прошлый проект был тоже на 2 версии, оно работало и я понять не могу что поменялось =D
Andrey
"react-navigation": "^2.11.2" 😀
Andrey
у меня проект такой что не вижу смысла что-то обновлять)
Evgeniy
я уже закостылил решение конечно, но ощущения какие то нехорошие, вроде бы должно было работать
Andrey
Гайс, куда копать?
Сергій
в андроид натив )
Eugene
🤔
Gena
Гайс, куда копать?
В лог выше для идентификации того, что вызвало попытку сериализации 2Мб через binder, если сами не догадываетесь.
Gena
там нет ссылок на мой код
Есть, всё, что относится к процессу с pid 3892 - это ваш код )
Andrey
Есть, всё, что относится к процессу с pid 3892 - это ваш код )
ни одной ссылки на мои файлы, мб не туда смотрю, хз
Сергій
у тебя что циклическая зависимость в моделях?
Сергій
данных
Gena
Скорее попытка слить 2Mb данных в нативный модуль или из него... судя по вот этому: https://stackoverflow.com/q/49216063/2266462
Andrey
данных
та нет у меня этот эксепшн вообще вылетает после отработки моих действий ну либо при связи с БТ устройством, но там вообще ничего не отсылается, кроме пачки байт небольшой
Gena
А вообще google:mqt_native_modules выдет достаточно инфы, чтоб понять куда копать.
Andrey
А не может быть так, что вы заблокировали UI thread или JS thread на пару секунд?
нет, ничего такого самое забавное, что недавно все было ок, и непонятно, это БТ устройство мешает жить
Andrey
или что то с либами
Gena
или что то с либами
Я вот так "вслепую" и без кода могу диагностировать это пока только так: У вас заблокировался какой-то тред, который участвует в обмене сообщениями через бридж, за время пока он был заблокирован в очередь напихалось данных для него больше чем лимит сериализации и оно упало
Gena
прив) а что там по архитектурам? вы же вроде договаривались куда-нить закрепить)
Как будут оба приложения готовы, выложим обязательно. Подождите несколько дней плиз... )
ana 🪢
Как будут оба приложения готовы, выложим обязательно. Подождите несколько дней плиз... )
да я без какого-либо давления, просто думала, что пропустила) круто, пинганите обязательно)
Rinat
ребят привет. кто юзает bitrise, при загрузке в стор, в конце кидает ошибку