使用React本机应用程序实施强制更新

时间:2019-05-07 15:55:32

标签: reactjs react-native

我一直在寻找一种方法来强迫用户在允许他们进一步使用本机应用程序之前对其进行更新。我以前没有实现此功能,正在寻找一种解决方法。

感谢您的见解,谢谢!

2 个答案:

答案 0 :(得分:2)

您可以使用CodePush进行此操作。更具体地说,您需要提供codePush选项以立即安装。

codePush({
    checkFrequency: codePush.CheckFrequency.ON_APP_RESUME,
    installMode: codePush.InstallMode.IMMEDIATE
  })

答案 1 :(得分:1)

如果要强制用户更新,则可以将主屏幕更改为更新屏幕。例如,在主要组件(对我来说Provider)中,我可以这样做:

export default class Provider extends Component {
    constructor(){
        super()
    }
    componentDidMount = () => {
        this.checkUpdate()
    }
    checkUpdate = () => {
        // Request last version number from your server
        // And compare with current version.
        // You can save this number in device storage with AsyncStorage
        // At last:
        this.setState({
            checked: true,
            updated: true // Or false
        })
     }
     render() {
         let {checked, updated} = this.state
         if(checked){
             if(updated) return <App />
             else return <PleaseUpdate />
         }
         else return <Loading />
     }
}