Как сделать ссылку "Оценить это приложение" в приложении React Native?
Как правильно привязать пользователя к странице отзывов в приложении App Store в приложении React Native на iOS?
Ответы
Ответ 1
Для iOS вам нужно добавить LSApplicationQueriesSchemes
как параметр Array в Info.plist
и добавить к нему элементы.
Например, для привязки к AppStore я использую itms-apps
как один из параметров в этом массиве.
Ваша ссылка должна быть такой
itms-apps://itunes.apple.com/us/app/id${APP_STORE_LINK_ID}?mt=8
.
Ну. Теперь у вас есть все, что можно сделать с компонентом Link с помощью метода
handleClick () {
Linking.canOpenURL(link).then(supported => {
supported && Linking.openURL(link);
}, (err) => console.log(err));
}
Ответ 2
Используйте Linking, чтобы открыть URL-адрес магазина приложений. Чтобы построить правильный URL-адрес, следуйте инструкциям iOS и/или android. Например.
Linking.openURL('market://details?id=myandroidappid')
или
Linking.openURL('itms://itunes.apple.com/us/app/apple-store/myiosappid?mt=8')
Ответ 3
Это нечто похожее, оно показывает окно предупреждения для обновления приложения и открывает магазин воспроизведения или магазин приложений в зависимости от их устройств.
function updateAppNotice(){
const APP_STORE_LINK = 'itms://itunes.apple.com/us/app/apple-store/myiosappid?mt=8';
const PLAY_STORE_LINK = 'market://details?id=myandroidappid';
Alert.alert(
'Update Available',
'This version of the app is outdated. Please update app from the '+(Platform.OS =='ios' ? 'app store' : 'play store')+'.',
[
{text: 'Update Now', onPress: () => {
if(Platform.OS =='ios'){
Linking.openURL(APP_STORE_LINK).catch(err => console.error('An error occurred', err));
}
else{
Linking.openURL(PLAY_STORE_LINK).catch(err => console.error('An error occurred', err));
}
}},
]
);
}