RTX4090Ti
Ребята, кто делал логин через гугл на проде? Вот это подходит? https://github.com/react-native-community/react-native-google-signin/issues
Oleg
А в чем проблема с подписью?
Я думал дело в подписи. Все же нет. Т.е. получается, что обязательно нужно вручную делать bundle, чтобы апк сформировался который смог бы работать автономно?
Vladimir
нет
Vladimir
когда вы собираете релизную сборку, react-native создает бандл и пакует вместе с апк
Vladimir
для дебага этого не происходит, и бандл(js код + ресурсы) тянется с сервера(локалхоста)
Oleg
А если я не релизную, а дебажную собираю? Я вызываю react-native run-android допустим даже из консоли. Приложение запускается. Беру апк полученный и вот он уже не работает если его установить
Oleg
А т.е. все настроено таким образом, что для релиза бандл собирается, а для дебага по умолчанию нет, верно?
Konstantin
В консоле вижу это Error: Invariant Violation: Invariant Violation: 432,RCTView,1,[object Object] is not usable as a native method argument
Konstantin
В консоле вижу это Error: Invariant Violation: Invariant Violation: 432,RCTView,1,[object Object] is not usable as a native method argument
а получаю такую ошибку тыкая на элемент у которого onPress={() => this.props.navigation.navigate('ScheduleSpeakerItem', { speaker: item, })}
Władimir (Zae)
консольлогни item
Władimir (Zae)
подозреваю что это объект который пытается в строку себя преобразовать
Konstantin
консольлогни item
даже если сделать так onPress={() => this.props.navigation.navigate('ScheduleSpeakerItem', { })} то такая же ошибка
Władimir (Zae)
сек
Władimir (Zae)
у тебя react-navigation?
Władimir (Zae)
версия?
Konstantin
версия?
npm ls react-navigation Events@0.0.1 /home/underquak3r/react/Events └── react-navigation@2.0.4
Władimir (Zae)
а item это что?
Konstantin
сек
причем если подсунуть другой screen, который тоже может скушать объект, то нормально переходит, единственное что другой screen лежит в другом stackNavigator и кнопка назад ведет не туда куда ожидается, но суть что открывается же, и item переданный разбирается и значенит встают
Konstantin
а item это что?
<FlatList data={this.state.data.moderators && this._getModeratorsBySection(this.props.navigation.state.params.section.id)} renderItem={({ item }) => ( <ListItem.... примерно так
Władimir (Zae)
@underquak3r https://github.com/react-navigation/react-navigation/issues/4058
Konstantin
@underquak3r https://github.com/react-navigation/react-navigation/issues/4058
ну у меня на том скрине на котороый я пытаюсь перейти и получаю ошибку в опциях вот что static navigationOptions = ({ navigation }) => ({ headerStyle: { backgroundColor: 'red', }, headerTintColor: '#fff', headerRight: ( <TouchableOpacity onPress={() => navigation.openDrawer()}> <Image source={require('./images/burger.png')} /> </TouchableOpacity> ), });
Władimir (Zae)
предлагаю убрать headerRight и проверить заведется ли без него
Władimir (Zae)
если да то проблема в нем
Władimir (Zae)
Konstantin
а тьфу ты, нет
Oleg
И самый частый ответ - какая-то непонятная для меня дичь: mkdir android/app/src/main/assets react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res react-native run-android
Ура, удалось собрать apk со встроенным бандлом. Эти скрипты позволяют это сделать. Фишка еще в том, что на stackovfl часто вместо index.js предлагаю скрипты index.android.js, а это видимо старая точка входа
Władimir (Zae)
Konstantin
то же самое
Władimir (Zae)
можешь залить код твоего навигатора и компонента с флатлистом на гист?
Władimir (Zae)
не обещаю что оперативно посмотрю но посмотрю
Konstantin
попробую
Konstantin
можешь залить код твоего навигатора и компонента с флатлистом на гист?
вот скинул и навигатор и скрин с которого пробую перейти, и тот на который пытаюсь перейти https://gist.github.com/underquak3r/17de8f00d50713f0b8a72c691881f357 что б вывалилась ошибка нужно тыкнуть в файле SectionScreen.js на onPress={() => this.props.navigation.navigate('ScheduleSpeakerItem', {...
RTX4090Ti
Там старое апи
RTX4090Ti
делай по докам лучше
Konstantin
делай по докам лучше
дык уже почти все сделал, но столкнулся с ошибкой, следующий проект буду делать по доке
Konstantin
предлагаю убрать headerRight и проверить заведется ли без него
слушай, убрал в обоих местах, там где onPress и там куда делается navigate и помогло
Konstantin
теперь надо думать как header оформить
Władimir (Zae)
теперь надо думать как header оформить
попробуй navigationoptions не в классе объявлять а в навигаторе
Konstantin
попробуй navigationoptions не в классе объявлять а в навигаторе
вот тут? export const ScheduleStack = createStackNavigator({ ScheduleList: { screen: ScheduleList }, ScheduleItem: { screen: ScheduleItem }, SectionScreen: { screen: SectionScreen }, ScheduleSpeakerItem: { screen: MemberItem }, }, { initialRouteName: 'ScheduleList', })
Władimir (Zae)
да
Konstantin
да
хорошо попробую, спасибо
Konstantin
да
немного понаглею, наверное а можно ссылку с примером? на оф доке, пишут в класс все https://reactnavigation.org/docs/en/headers.html
Władimir (Zae)
пока не могу пример дать
Konstantin
пока не могу пример дать
примерно как тут? https://gist.github.com/spencercarli/65f50c2a7a9369b2d8910f800760ba42#file-router-js
Władimir (Zae)
да
Władimir (Zae)
Konstantin
да
отлично, спасибо
Dana
всем привет! есть кто и как делал in app purchase?
Dana
делали в нативе
не надо использовать какую нибудь либу?
Dana
примерно сколько времени; по часам займет?
Vladimir
в андроиде юзали checkout, но скорей всего для РН есть уже либа
Vladimir
https://github.com/dooboolab/react-native-iap выглядит ничего так
Vladimir
ну и статья в догонку
Vladimir
https://medium.com/@dooboolab/react-native-in-app-purchase-121622d26b67
Vladimir
там дольше продукты настраивать в itunes connect и google play
Konstantin
Подскажите правильный способ получения, и дальнейшее хранение картинок? Сейчас картинки прилетают в json в виде base64 хочется сделать правильно, но не сложно Я так понимаю что нужно в json класть ссылки на картинки, а далее уже качать их с помощью приложения Всем ответившим спасибо
Galymzhan
Подскажите правильный способ получения, и дальнейшее хранение картинок? Сейчас картинки прилетают в json в виде base64 хочется сделать правильно, но не сложно Я так понимаю что нужно в json класть ссылки на картинки, а далее уже качать их с помощью приложения Всем ответившим спасибо
Правильней, конечно, получать абсолютный URL на картинку, т.к. base64 грузит не только клиента, но и сервер. Более того, base64 раздувает картинку чуть ли не в половину. Есть отличные компоненты, которые кэшируют картинки по URL на стороне клиента Можете прочитать в этой статье — https://hackernoon.com/5-things-to-know-about-images-react-native-69be41d2a9ee
Ololo
fastImage
Konstantin
fastImage
спасибо, гляну
Alexander
прочитал, но кроме как react-native-fetch-blob там ничего не предлогается... p.s. проект у меня react-native init
Можешь посмотреть вот этот модуль. https://github.com/wcandillon/react-native-img-cache
Artem
Ну, коль у вас не возникают, вы пишете под Android недостаточно долго) или недостаточно давно
Vladimir
там тоже не все просто и не идеально
Vladimir
и сделали их как раз потому что lifecycle management это большая боль
Vladimir
Главное что это проблема, субъективное мнение автора что большая.
Vladimir
И я склонен с ним согласиться.
Artem
Я же говорю, что недолго пишете :) Я ещё застал то время, когда ничего из этого ещё не было. Ну, может, mosby в зародыше
Сергій
+