監聽rn中物理返回鍵,在禁止返回上一頁,連續點擊兩下退出應用,
設置常量
let lastBackPressed = Date.now()
componentWillMount() {this.getCallLog(); if (Platform.OS === 'android') { BackHandler.addEventListener('hardwareBackPress', this.onBackAndroid); } }
componentWillUnmount() {if (Platform.OS === 'android') { // this.showToast('銷毀'); BackHandler.removeEventListener('hardwareBackPress', this.onBackAndroid); } }
onBackAndroid() { if (lastBackPressed && lastBackPressed + 2000 >= Date.now()) { //最近2秒內按過back鍵,可以退出應用。 BackHandler.exitApp(); return; } lastBackPressed = Date.now(); ToastAndroid.show('再按一次退出應用',ToastAndroid.SHORT); return true; }