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 для андройда , понятно. Осталось понять будет ли это работать в реальности...
Nick
Pavel
А хз, подумал что они нужны тут
Pavel
А как иначе понять что я прибыл к компоту ? Как выстроить путь к нему ?)
Pavel
Самому ? Это имеется виду не используя РН? А что тогда используют обычно?
Nick
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?
Я бы не пытался здесь аналогий проводить, проще будет
в целом аналог. Стили берутся от родителя и можно еще свои дописать
Jack
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
Egor
Всем привет. Собираю фидбэк про РН. Напишите +- этой технологии и какие у вас были трудности при реализации конкретных задач
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
Alexander
Gena
Gena
Пока что, по крайней мере
Berik
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 });
});
}
D
Jack
Nikolai
После просмотра react conf, сложилось впечатление, что на react native делают очень маленький упор и развитие по большому идёт засчёт комьюнити. Это так или же я заблуждаюсь?
D
Есть в нейтиве что-то типа алертов, которые появляются и пропадают сами собой через некоторе время? не уведомления для телефона а просто внутри приложения?
Иван
Jack
Можно модалку на таймер
Jack
Или компонент, с абсолютом
Jack
Кстати, а можно модалку в модалке вызвать?)))
D
D
Иван
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
AlexNovi
Pavel
писал не в xCode, не на маке
Pavel
ага, в этом сложность
Pavel
винда стоит
Pavel
етить колотить...