马夫,
我有一个 React Native 和 Redux 的应用程序。我想在用户从任何商店更新应用程序时注销用户。有没有办法实现这个目标?
一种方法是将版本号保存在 AsyncStorage 中,每次打开应用程序时,您都会比较当前版本号和存储的版本号,如果发现差异,那么您就会知道用户已更新。
您还需要安装 DeviceInfo 包
具体方法如下:
import React from 'react'
import DeviceInfo from 'react-native-device-info'
import { AsyncStorage } from 'react-native'
// Your root class component
class App extends React.Component {
async componentDidMount() {
try {
const lastSavedVersionNumber = await AsyncStorage.getItem('appVersionNumber')
if (!!lastSavedVersionNumber) { // Validate the value if it's really there
if (lastSavedVersionNumber !== DeviceInfo.getVersion()) {
// The user has updated the app because the numbers doesn't match
// Set the new version number then logout
AsyncStorage.setItem('appVersionNumber', DeviceInfo.getVersion())
// ... logout here
}
} else {
// Value doesn't exist, need to set it for the first time
AsyncStorage.setItem('appVersionNumber', DeviceInfo.getVersion())
}
} catch (error) {
}
}
}
DeviceInfo.getSupportedMediaTypeList().then((string[]) => { // [“音频/mpeg”、“音频/mp4a-latm”、“音频/mp4a-latm”、“音频/mp4a-latm”、“音频/mp4a-latm”、“视频/avc”、“视频/ 3gpp”、“视频/hevc”、“视频/mp4v-es”、“视频/av01”、“视频/avc”、“视频/avc”、“视频/avc”、“视频/avc”] });