
Dr
21.08.2018
09:03:57
Привет. Кто-нибудь может подсказать как решить такую проблему more than one library with package name 'com.reactlibrary'?

Gena
21.08.2018
09:04:49

Dr
21.08.2018
09:06:14
блин, просто проект вроде рабочий. У всех пашет, я думаю все библиотеки должны остаться на месте)

Vlad
21.08.2018
09:07:21
так рабочий или есть проблема?

Google

Vlad
21.08.2018
09:07:56
обычно такие проблемы не совместимы с нормальным билдом. ругается

Stas
21.08.2018
09:08:57

Dr
21.08.2018
09:09:23
но у людей как-то запускается и никто не видел такую ошибку

Stas
21.08.2018
09:09:31
с sdk от них же. Я не юзал, но может быть это будет стабильнее поделок умельцев rn-firebase.
https://aws-amplify.github.io/amplify-js/media/push_notifications_setup.html
https://github.com/aws-amplify/amplify-js/issues/1245 нет, все сыро)

Gena
21.08.2018
09:31:43
есть еше кроссплатфомренные пуши от amazon
Ага... я просто пытаюсь сказать, что т.к. все эти внешние сервисы не бесплатные, то выбор конкретного не зависит только от разработчика... это бизнес-решение. И хотя, удобство SDK на него может влиять, в целом обычно как раз с сервисом определяются, а потом библиотеку ищут.
К примеру мы firebase выбрали по совокупности таких соображений:
1. по деньгам нормально
2. на Android всё равно её юзать
3. ios поддерживает
4. мы её ещё и для креш-репортов и аналитики собирались юзать
5. и только последним пунктом проверяли наличие интеграции под RN

Denis
21.08.2018
10:42:43

Andrei
21.08.2018
11:25:54

morda
21.08.2018
11:26:40
в самом верху
<Provider store={store}>
<App />
</Provider>
где App = connect(...)

Google

morda
21.08.2018
11:27:52
короч все подключенное должно в детях провайдера быть)

John
21.08.2018
12:10:07
Скоро планирую внедрять пуш уведомления и admob.
Посоветуйте какие готовые либы лучше использовать в RN?

Stas
21.08.2018
12:12:55

morda
21.08.2018
12:14:25
особое внимание там обращать на версии гуглоплейсервисов в build.gradle приложения

?
21.08.2018
12:19:26

morda
21.08.2018
12:30:37
ну потому что у них всё это работает на довольно большой выборке

Play
21.08.2018
12:35:40
У FlatList есть метод onEndReachedThreshold который вызывает onEndReached
https://facebook.github.io/react-native/docs/flatlist#onendreachedthreshold
Число это (in units of visible length of the list)
В чем это измеряется?

Max
21.08.2018
12:40:10

John
21.08.2018
12:50:21

G
21.08.2018
13:02:34
react-native-fcm и react-native-firebase , какую лучше юзать?

Gena
21.08.2018
13:20:56

Play
21.08.2018
13:34:26

Gena
21.08.2018
13:35:58
0.75 это 75% экрана?
Это 75% видимой части списка. Внешнего элемента FlatList. Окна списка. Не знаю, какой ещё синоним применить )))

Play
21.08.2018
13:36:40

Gena
21.08.2018
13:38:28
0.1 будет раньше вызываться чем 0.5?
Нет, позже. когда пустое место (конец контента) подъедет совсем близко к границе видимой области... чтоб раньше грузить, надо большие значения ставить.

Play
21.08.2018
13:39:11
понял, поставлю 0.8 =)

Gena
21.08.2018
13:39:16
Но это... то что у них так написано в доках... не значит, что оно так работает... вот это вот описание, не соотвествует тому, что я в реальности наблюдал год назад... в последнее время не проверял, мы кажется с дефолтными значениями нормально живем...

Google

Gena
21.08.2018
13:41:10
Не в том смысле, что оно как-то инвертировалось или ещё что... кажется в какой-то момент у меня возникало ощущение, что оно не "окнами" меряется, а всей высотой контента, я ещё думал - "что за дурацкая метрика, нестабильная"... надо будет проверить ещё раз...
понял, поставлю 0.8 =)
0.5 от 0.8 не сильно отличаться должно... обычно видимый размер списков почти равен высоте экрана... а при прокрутке, пользователи крутят быстро... где-то 0.2-2 экрана в секунду порядки... так вот, если вы пытаетесь решить проблему, что список часто застревает на загрузке новой страницы, то лучше сделать 2 вещи:
1. вот это значение выставить в 2-3
2. увеличить размер страницы (если это не перегружает сервер и js в клиенте)

John
21.08.2018
13:48:31

Play
21.08.2018
13:57:29

Gena
21.08.2018
14:00:00
2-3 - это 0.2 и 0.3 ?
Нет, это именно 2 и 3, т.е. «Загружать следующую страницу за два окна до того, как она покажется»

Play
21.08.2018
14:00:18

GrafMine
21.08.2018
14:39:22
Привет всем, есть интересный кейс ошибки:
http://prntscr.com/kl9cou
ошибка сама в том что он пытаеться по рефу визвать метод show() ну этот компонен обвернут в конект тоже, если убрать конект все будет работать
но факт в том что такие ошибки не отлавил дидкатч
кто в курсе как таких «зайцев» тогда ловить?)

Ivan
21.08.2018
14:48:17
walletModal.show && walletModal.show(); ?

GrafMine
21.08.2018
14:49:19
дело не в фиксе
а как заставить чтоб такое шло в обработку componentDidCatch

Alexander
21.08.2018
15:28:13
господа, что может быть? релизная версия андроида жутко тормозит. в дебаг версии всё ок

Anastasia
21.08.2018
15:31:42
привет всем, может кто-нибудь видел классный гайд по интеграции встроенных покупок на ios (типа такого https://www.raywenderlich.com/5456-in-app-purchase-tutorial-getting-started, только для rn)? или любые вменяемые гайды

Alexander
21.08.2018
15:40:31

morda
21.08.2018
15:41:12
в консоль не пишет?

Alexander
21.08.2018
15:42:08
дак релиз версия

Google

Alexander
21.08.2018
15:42:15
в дебаге - всё летает

Admin
ERROR: S client not available

morda
21.08.2018
16:04:08
ну потому что дебаг на комповом проце а релиз на андроедном))
в сеть там ниче не стучит? oneSignal например сливал инфу домой терабайтами, так что телефон висел минуты две
гуглоаналитика если переусердствовать тоже может тормозить приложение

Dr
21.08.2018
16:09:21
Еще раз привет. Я опять с той же проблемой more than one library with package name 'com.reactlibrary'. Если нашел библиотеку из-за которой конфликтует. Что бы пофиксить достаточно ли поменять package в манифесте? или придется поменять везде внутри java/com где упоминается 'com.reactlibrary'?

Vladimir
21.08.2018
16:12:02

Sergey
21.08.2018
16:50:41
Всем привет!
Гайс, вопрос такой возник.
кто-то крутил когда-нибудь к react native трансляцию? Ну, чтобы снимать как медиарекордером чанки с камеры с интервалом в 2 секунды и слать их в апи в base64?
Буду очень благодарен за консультацию ?

Alexander
21.08.2018
17:03:31
Что лучше для алиасов в импортах использовать? babel-plugin-module-resolver работает, только если запускать yarn start —reset-cache Перед запуском проекта на платформу. Есть что получше?

Gena
21.08.2018
17:07:47
Не совсем алиасинг конечно... но кое-что

Alexander
21.08.2018
17:08:20

Denis
21.08.2018
17:08:42

Gena
21.08.2018
17:09:17
Мы используем с ts... но не алиасим в полном смысле... у нас всё приложение - один пакет верхнего уровня... ща конфиг выложу.

Nikolay
21.08.2018
17:11:23

Sergey
21.08.2018
17:11:46
получил поток в base64 на андройде, но пока что я не могу его остановить
запускается запись и блокируется ui

Nikolay
21.08.2018
17:12:27
а где запускаешь? пробуй в worker'e
тогда не будет блокироваться ui
если суть конкретно в этом
но опять же вопрос, что конкретно блокирует ui

Sergey
21.08.2018
17:14:25
Суть вот в чем. Сейчас вся серверная архитектура завязана на цепную конвертацию webm-чанков, которые прилетают с mediarecorder. Я руковожу пилением этого всего на JS+node. Там все уже работает заебцом. А вот мобила буксует уже вторую неделю

Google

Nikolay
21.08.2018
17:15:17
Буксует по причине? Что именно буксует то
Когда идёт отправка данных на серв, ui тормозится или что?


Gena
21.08.2018
17:15:48
Код в папке App, весь кроме двух файлов, они в корне: index.js и config.js. index.js:
import './config'
import { main } from 'App'
main()
Модули файлы внутри приложения почти везде импортятся по абсолютному пути, к примеру: import theme from 'App/theme'
Для этого:
1. package.json внутри папки App с содержимым: { "name": "App" } (Это для metro и RN)
2. В tsconfig.json: "baseUrl": "." (это для ts)
Всё... мне казалось ещё что-то для jest надо, но ни в rn-cli.config.js, ни в jest.config.js не вижу сейчас )
а как заставить чтоб такое шло в обработку componentDidCatch
> Error boundaries catch errors during rendering, in lifecycle methods, and in constructors of the whole tree below them.
Если я правильно понял, то здесь не перечислен случай, когда поток выполнения рождается "извне", как например хендлер нажатия на кнопку или то, что setInterval дернет... т.е. оно относится только к синхронному коду...
Поэтому ответ - никак, или "руками" ставить в нужных местах try ... catch и дергать его...
Но в js внутренностях именно React я плохо разбираюсь и могу ошибиться (вот этот функционал, мы к примеру вообще не используем)


Play
21.08.2018
17:39:01
Как получить событие нажатия на оранжевое поле?

Gena
21.08.2018
17:40:08

Alexander
21.08.2018
17:40:12
а белый фон и hello world - это что? просто view и text?
вот, я тоже думаю в сторону touchable
TouchableWithoutFeedback