Спустя два месяца после проекта на Expo понял что ничего толкового на нем не выйдет.
Пришлось переписать весь проект на чистый RN. (та еще боль)
expo eject?Устанавливаю Ipa файл через Itunes 12.6.3
expo build:ios, предварительно корректно настроив app.jsonbuild:android запускается publish, которая применяется к обеим платформамexpo build:ios --release-channel prod-100expo build:ios --release-channel prod-101expo publish --release-channel prod-101 const styles = StyleSheet.create({
inputContainerStyle: {
margin: 8,
marginTop: 75,
position: 'relative'
},
icon: {
position: 'absolute',
top: 5,
right: 0,
zIndex: 1
}
});// пакетная
[{
"to": "ExponentPushToken[xxxxxxxxxxxxxxxxxxxxxx]",
"sound": "default",
"body": "Hello world!"
}, {
"to": "ExponentPushToken[yyyyyyyyyyyyyyyyyyyyyy]",
"badge": 1,
"body": "You've got mail"
}]
// обычная
{
"to": "ExponentPushToken[xxxxxxxxxxxxxxxxxxxxxx]",
"title":"hello",
"body": "world"
}StackNavigation в BottomTabNavigation и там уже прописать переходы.const AppNavigator = createBottomTabNavigator({
RootScreenA: {
screen: createStackNavigator({
ChildScreenA: {
screen: ChildScreenA,
},
ChildScreenB: {
screen: ChildScreenA,
},
}),
},
RootScreenB: {
screen: createStackNavigator({
ChildScreenA: {
screen: ChildScreenA,
},
ChildScreenC: {
screen: ChildScreenC,
},
}),
},
RootScreenC: {
screen: createStackNavigator({
ChildScreenD: {
screen: ChildScreenD,
},
ChildScreenE: {
screen: ChildScreenE,
},
}),
},
});
const App = createAppContainer(AppNavigator);Object.keys(this.state.users) – https://snack.expo.io/B1bErzcwE access_token,refresh_token и expires_in в SecureStoreexpires_in - если истек, делать запрос на обновление токена, обновив данные в SecureStore, если не истек – сделать запрос с текущим токеномlet redirectUrl = AuthSession.getRedirectUrl();
let result = await AuthSession.startAsync({
authUrl: 'https://oauth.vk.com/authorize?client_id=<client_id>&display=mobile&redirect_uri=' +
encodeURIComponent(redirectUrl) + '&response_type=token&v=5.92',
});
if (result.type === 'success') {
// обрабатываете полученный токен, получаете информацию о пользователе, etc
}