Pavel
Вижу что AR продёрживается только iOS последних поколений, правильно понимаю ?
Pavel
Никаких андройдов и тп
Eugene
Is there an Android / ARCore version? Not yet, but there has been a proof-of-concept: https://github.com/HippoAR/react-native-arkit/issues/14. We are looking for contributors to help backporting this proof-of-conept to react-native-arkit. 🤔
Pavel
Arkit - для айоса, Arcore для андройда , понятно. Осталось понять будет ли это работать в реальности...
Pavel
А хз, подумал что они нужны тут
Pavel
А как иначе понять что я прибыл к компоту ? Как выстроить путь к нему ?)
Nick
Это типа AR технология , дополненная реальность
Судя по статьям там и в нативке не все так просто, не думаю что в rn это вообще нормально заведётся. Если и делать, то самому
Pavel
Самому ? Это имеется виду не используя РН? А что тогда используют обычно?
Nick
А как иначе понять что я прибыл к компоту ? Как выстроить путь к нему ?)
Ну хз, возможно какие-то ble метки, хотя там точность тоже не фонтан
Nick
Самому ? Это имеется виду не используя РН? А что тогда используют обычно?
Ну мне кажется, что реалтайм расчеты и перегон инфы по бриджу туда-обратно будет не шибко быстро. Почему не заресерчить arkit/arcore/vuforia?
Pavel
Ээ, переведёшь пож ? Не программист я
Pavel
Последнее - это Фреймворк я так понял
Pavel
Для ar
Pavel
Проблема в том, что итоговое приложение будет вбирать в себя много пользовательского функционала и информации стандартной, обычное приложение магазина . Ar участок составит примерно 10% от всего приложения , и только с целью привести пользователя к нужному товару. Реакт для этого идеально подходит. Вот только пока не понимаю получится ли соорудить работоспособный функционал дополненной реальности внутри RN по итогу
Pavel
Может кто-то сталкивался вдруг с таким
Pavel
Но ты уже второй , кто говорит, что это сомнительно
Pavel
В этом чате
Никита
я могу стать третьим, это что-то изменит? хотя можно сделать чисто нативные активности (activity/view controller) и конкретно этот функционал сделать без рн, но потребуется знание нативки
Pavel
Имеешь ввиду swift ?
Никита
objective/swift на ios и java на андроид
Pavel
Спасибо, вроде картинка теперь сложилась воедино :)
Nikolai
Ребят, что бы сделать часть текста жирнмы, его надо обернуть в <Text>?
Nikolai
то есть это аналог span?
Никита
то есть это аналог span?
Я бы не пытался здесь аналогий проводить, проще будет в целом аналог. Стили берутся от родителя и можно еще свои дописать
Nikolai
Спасибо
D
Есть урл картинки, пытаюсь сохранить ее в галлерею... Нашел решение на stackoverflow. В решении использовался модуль react-native-fetch-blob (оч популярный). Все отрабатывает, идет запрос, приходит ответ (не пустой), получается директория галлереи и записывается файл в формате jpeg (там его можно менять). Все отрабатывает, ошибок никаких нет, но и в галлерее ничего нет.... проверил как на эмуляторе так и на своем телефоне... Разрешение на пользование хранилища телефона я получаю... Вот код (повырезал всякие логи и тд): _saveWallpaper = (url, filename, mimetype) => { this.setState({ savingWallpaper: true }); const PictureDir = RNFetchBlob.fs.dirs.PictureDir; // Fetch attachment RNFetchBlob.fetch('GET', url) .then((response) => { let base64Str = response.data; let imageLocation = PictureDir + '/' + filename; //Save image RNFetchBlob.fs.writeFile(imageLocation, base64Str, 'base64'); RNFetchBlob.fs.scanFile([ { path : imageLocation, mime : mimetype } ]) .then(() => {}) .catch((err) => {}) }).catch((error) => {}); } scanFile используется (как говорилось) для того, чтобы обновить галлерею телефона, чтобы пикчура была видна сразу. Но собственно проблема не в в scanFile...
D
То есть по сути все работает ок до RNFetchBlob.fs.writeFile(imageLocation, base64Str, 'base64');
Alexey
То есть по сути все работает ок до RNFetchBlob.fs.writeFile(imageLocation, base64Str, 'base64');
Этот вызов разве не асинхронный? А если синхронный - то какой код возврата?
Egor
Всем привет. Собираю фидбэк про РН. Напишите +- этой технологии и какие у вас были трудности при реализации конкретных задач
D
Этот вызов разве не асинхронный? А если синхронный - то какой код возврата?
судя по всему синхронный, а возвращает мне некий объект, каждый раз с разными полями типа _40, _65, _75, _22. Только что проверил что в base64Str... там не base64 картинка а строка '/data/user/0/com.samplereac.../files/RNFetchBlobTmp_3125..' (на эмуляторе)
D
кстати.файл то записывался как оказалось..> просто получалась не картинка и поэтому галлерея его и не видела... попробовал сохранить в downloads и он туда записался..правда вес всего 60 байт.. ну судя по содержанию base64Str это не удивительно
George
Я, в свое время, воспользовался Экспо, как советовала документация. Все было нормально, какие-то более менее стандартные фичи делались без проблем, иногда только билд Экспо шел долго. Тот же сканер qr кодов без проблем сделал. Но потом приложению понадобился трекинг позиции, пока оно свёрнуто. А Экспо в это не может. Фича эта обсуждается уже около года, вроде бы уже даже реализована, но в 31 сдк не попала. Библиотеки, которые предоставляют более менее нормальный трекинг только две. Одна платная, другая бесплатная. И чтобы ее поставить необходимо делать eject аппы... И тут начались свистопляски. На 26сдк после эджекта аппа в симуляторах заводиться вообще не хотела. Для меня, как для чистого фронтендера, без знаний в разработке приложений на мобилки начался довольно таки сильный ад. Решаешь одну проблему, получаешь другую. В итоге я пришел к тому, что просто переключал сдк и потом запускал eject. На 30-версии завелось, настало время подключать библиотеку😂 На Андроиде все завелись без проблем. На ios полезла ошибка, связанная с дубликацией каких-то символов. Гугл не помог, потратив весь день, пошел писать баг репорт автору библиотеки. Оказалось что в одном из релизов СДК Экспо добавили в сборку пакет, который использовался этой библиотекой и теперь они конфликтовали друг с другом. Кое как завел аппу на айос. Сейчас я нахожусь тут)) Если бы я писал с нуля это приложения, я бы лучше сразу делал на чистом RN. Экспо прячет от тебя множество деталей и если тебе придется делать eject, то скорее всего в итоге ты потратишь ещё кучу времени на то чтобы разобраться что и как там на самом деле, так же Экспо за тебя генерирует всякие сертификаты для app store. Я не знаю насколько это сложно, но сейчас, после eject, мне нужно ещё потратить время на это. К тому же попробовав поработать с чистым рн вы более быстро, как мне кажется, поймёте нужно оно вам или лучше уж нормальные нативные аппы под каждую платформу разрабатывать. С Экспо вы можете потратить кучу времени на разработку, прежде чем понять, что проще было бы писать нативные аппы) Оно даёт ложное чувство, что все ок и теперь тебе не нужно вдаваться в детали каждой платформы) Я не говорю про библиотеки для рн. Там тоже норм так проблем, куча багов. Для карт я использовал библиотеку от AirBnB и там вроде тоже в течение года уже есть баг, что на Андроиде не показывается кнопка "Переместить карту на себя" и для того чтобы она показалась, надо после рендеринга карты поменять стили динамически, например изменить отступ) С учётом того что AirBnB отказались от RN в своем проекте, этот баг может и не пофиксят вовсе) В общем, на мой взгляд, все довольно плохо с Экспо и РН в целом. Для мвп пойдет. Для веб аппы в нативной оболочке, тоже может пойдет. Но не больше.
Так в том то и фишка, что время на все это все равно пришлось бы потратить, только в процессе, и еще кучу всего, а сначала можно просто программировать. Да, надо всегда быть готовым сделать eject, если нужно. И я бы все равно использовал сборку RN от Expo, у меня впечатление что FB вообще положить на пользователей, они просто выкладывают исходники фреймворка который сами используют. Я наборот начал с чистого RN, потом понял что ну как бы «а что я получаю делая этот весь головняк»? Ну и еще - все таки безболезненный апгрейд RN на более новые версии - тоже хорошая штука.
George
Всем привет. Собираю фидбэк про РН. Напишите +- этой технологии и какие у вас были трудности при реализации конкретных задач
+ После web react можно достаточно быстро начать + React + Redux дают все таки какое-то направление архитектуры, меньше шансов сделать спагетти проект + hot reload, JS, большое количество библиотек - очень высокая скорость разработки по сравнени с native + все таки работает под две платформы А теперь минусы - Сырой и баговый - Многое все равно нужно на native уровне, и native библиотеки разного уровня стабильности - Вместо того, чтобы сделать максимальный проброс компонентов каждой платформы в JS многие вещи приведены к общему знаменателю. В результате многие контролы, которых ожидаешь от native приложения попросту недоступны - Нужно быть готовым оптимизироваьт по скорости и вообще понимать что происходит, где пробросы между JS и native уровнем - Тормозные анимации (reanimated правда не пробовал, может быть получше) Я бы суммировал так - для проектов где цель - это выполнение какой-то бизнес функции RN хорош Для проектов где впечатления от взаимодействия - ключевая ценность - RN лучше не брать
Gena
Если кому интересно: https://github.com/facebook/react-native/issues/19737#issuecomment-439683552 (там ссылка на демку со свежим JSC на Android, работает или нет сам не проверял, но судя по чендж-логу должно)
Egor
+ После web react можно достаточно быстро начать + React + Redux дают все таки какое-то направление архитектуры, меньше шансов сделать спагетти проект + hot reload, JS, большое количество библиотек - очень высокая скорость разработки по сравнени с native + все таки работает под две платформы А теперь минусы - Сырой и баговый - Многое все равно нужно на native уровне, и native библиотеки разного уровня стабильности - Вместо того, чтобы сделать максимальный проброс компонентов каждой платформы в JS многие вещи приведены к общему знаменателю. В результате многие контролы, которых ожидаешь от native приложения попросту недоступны - Нужно быть готовым оптимизироваьт по скорости и вообще понимать что происходит, где пробросы между JS и native уровнем - Тормозные анимации (reanimated правда не пробовал, может быть получше) Я бы суммировал так - для проектов где цель - это выполнение какой-то бизнес функции RN хорош Для проектов где впечатления от взаимодействия - ключевая ценность - RN лучше не брать
Спасибо !
Gena
Пока что, по крайней мере
D
Этот вызов разве не асинхронный? А если синхронный - то какой код возврата?
асинхронный все же) ггг.. ну по сути это и логично было) в любом случае все работает... _saveWallpaper = (url, filename) => { this.setState({ savingWallpaper: true }); const DownloadDir = RNFetchBlob.fs.dirs.DownloadDir; RNFetchBlob.fetch('GET', url) .then((response) => { let imageLocation = DownloadDir + '/' + filename; //Save image RNFetchBlob.fs.writeFile(imageLocation, response.data, 'base64').then(res => { this.setState({ savingWallpaper: false }); }).catch(error => { this.setState({ savingWallpaper: false }); }); }).catch((error) => { // error handling this.setState({ savingWallpaper: false }); }); }
Nikolai
После просмотра react conf, сложилось впечатление, что на react native делают очень маленький упор и развитие по большому идёт засчёт комьюнити. Это так или же я заблуждаюсь?
D
Есть в нейтиве что-то типа алертов, которые появляются и пропадают сами собой через некоторе время? не уведомления для телефона а просто внутри приложения?
Jack
Можно модалку на таймер
Jack
Или компонент, с абсолютом
Jack
Кстати, а можно модалку в модалке вызвать?)))
D
компонет Alert есть, но сам он не исчезает вроде https://facebook.github.io/react-native/docs/alert
так я про это и говорю) что-то типа Alert, только чтобы само исчезало))
D
Можно модалку на таймер
ну это как-то не вау)
Jack
ну это как-то не вау)
Но это просто как вариант)
D
Но это просто как вариант)
мне как раз это и нужно было)
Pavel
всем привет, Есть экран 1 , на нем кнопка перехода на второй экран. Второй экран - ролик, на 10 секунд. ПОсле окончания ролика открывается третий экран автоматически. Почему-то на этапе перехода с 1-го на второй экран - видос отваливается иногда
Pavel
а иногда нормально работает
Pavel
че за фигня, никто не сталкивался с таким ?
Pavel
при переходе на второй экран ролик автоматически запускается и проигрывается
Pavel
в 2-х случаях из 5 - просто белый экран, он куда-то отваливается
Pavel
Может в Expo дело ?
Pavel
решил вопрос, спасибо
Андрей
Почему может в IOS сворачиваться приложение до сплэш экрана, когда мы тянем за хедер вниз? Причём в андроиде это не происходит И так же это не происходит на экранах, где нет хедера, просто за верх не тянется
Anonymous
подскажите как в firebase можно сделать такой запрос? Есть коллекция с документами.. В документ юзера я добавляю в массив айдишники этой коллекции. Так вот я хочу из этой коллекции взять те документы которых нет в этом массиве.. Не подскажите как это можно сделать?
Anton
Заканчиваем неделю холиваров ещё одной темой: кто писал на NativeScript? Интересует как оно в сравнении с RN - скорость работы, удобство написания, модули для работы с нейтивом и т.п.
Pavel
кто-то программировал nfc метки ? они с айфонами взаимодействуют ?
Pavel
если внутри приложения на реакте заложить вызов модалки при контакте с NFC - будет работать ?
Pavel
Ребят, кто знает как можно приолжение записать на телефон не скачивая его с appstore? Дело такое - подготовил пилотную версию приложения, но в appstore - клиент запрещает его вывешивать. А в нем есть нативные фичи, которые в EXPO не пашут. Как развернуть приложение на девайсе iOS ?
Pavel
у меня винда
Pavel
поэтому xCode не могу запустить
Pavel
выходит - приложуха написана, а продемонстрировать ее некак
Pavel
в expo весь функционал не продемонстрируешь
AlexNovi
Сделать экспорт AdHoc из xCode, добавить устройство клиента в список устройств для данного сертификата в connect
AlexNovi
Тогда можно будет просто передать ipa, клиент его установит через iTunes
Pavel
писал не в xCode, не на маке
Pavel
ага, в этом сложность
Pavel
винда стоит
Pavel
етить колотить...