编译的应用程序未在真实设备中加载

Wede Asmera Tseada

对于我的一生,我无法弄清楚。它显示的一切无止境地旋转着,我对生命周期的发生顺序感到困惑。基本上,它可以登录或进入主屏幕,并且可以在模拟器上正常运行,但不能在真实设备上运行。我在react 16.8.6和react-native 0.60.5环境上。

我刚开始使用RN,调试工具也不是很好。但就目前而言,仅使用Alert即可查看,并且从未达到应该重定向到登录/主屏幕的逻辑。显示的警报按以下顺序:

BS
mount2
render
mount1

我的代码如下:如果令牌存在,请加载主屏幕。否则,加载身份验证屏幕是我想要实现的,但就目前而言:

this.props.navigation.navigate(!goToLogin ? 'App' : 'Auth');

永远不会到达,所以旋转很多。有什么帮助吗?

import React, {Component} from 'react';
import {StatusBar, View, Alert} from 'react-native';

import {
  getUserToken,
  loggedInToAssociation,
  extractToken,
} from '../shared/loggedinUser';
import {setLanguage} from '../shared/localization';
import {appOptions} from '../config';
import Spinner from '../components/Spinner';

export default class AuthLoadingScreen extends Component {
  constructor() {
    super();
    this.state = {
      languageLoaded: false
    };
  }
  componentDidMount() {
    Alert.alert("mount1","oumnt1") // shown
    loggedInToAssociation()
      .then(details => {
        // details is an array now

        setLanguage(details['language']);
        this.setState({languageLoaded: true});
        Alert.alert("mount2","oumnt2") // SHOWN
      })
      .catch(err => {
        setLanguage(appOptions.defaultLanguage);
        this.setState({languageLoaded: true});
        Alert.alert("mount3","oumnt3")

      });
  }
  // Fetch the token from storage then navigate to our appropriate place
  _bootstrapAsync = async () => {
    const userToken = await getUserToken();
    Alert.alert("bs","bs") // SHOWN
    const tokenInfo = extractToken(userToken, 'both');
    let goToLogin = true; // force user to go to the login page
    if (tokenInfo.length == 2) {
      goToLogin = false;

    }
    Alert.alert("bs2","bs2") // NEVER SHOWN
    this.props.navigation.navigate(!goToLogin ? 'App' : 'Auth');
  };

  // Render any loading content that you like here
  render() {
    if (this.state.languageLoaded){
      this._bootstrapAsync().then(s=>{
        console.log(s)
      }).catch(e=>{
        console.log(e)
      })
    }
    return (
      <View>
        <Spinner />
        <StatusBar barStyle="default" />
      </View>
    );
  }
}
德尼玛·费尔南德斯(Denimar Fernandez)

在设备上运行时是否检查了调试控制台?可能会有未处理的承诺拒绝。诺言没有实现,但是无处可去(在这种情况下考虑try-catch场景)。

此方法可能有问题。

extractToken(userToken, 'both')

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在真实设备上运行Android应用程序

来自分类Dev

在真实设备上调试应用程序

来自分类Dev

将真实设备添加为运行Cordova应用程序的平台

来自分类Dev

如何从ubuntu 12.04 OS在真实设备中运行android应用程序?

来自分类Dev

应用程序在模拟器上运行,但不在真实设备中运行

来自分类Dev

在真实设备上启动时,React-Native新鲜应用程序立即关闭

来自分类Dev

在真实设备上运行时,Android应用程序图标背景颜色不同

来自分类Dev

Flutter应用程序无法在真实设备或仿真器上运行

来自分类Dev

Xamarin Forms应用程序无法部署到Android 10真实设备

来自分类Dev

如何在具有Android Studio的真实设备中测试android应用程序?

来自分类Dev

使用键盘时,Android应用程序在真实设备上崩溃

来自分类Dev

退出应用程序时,真实设备上主按钮的功能是什么

来自分类Dev

如何在真实设备上运行android应用程序?

来自分类Dev

该应用程序可以在AVD上正常运行,但不能在真实设备上

来自分类Dev

我的应用程序在真实设备上遇到问题

来自分类Dev

当我在真实设备 iOS 中运行它时应用程序崩溃

来自分类Dev

在真实设备上测试 Ionic2 应用程序

来自分类Dev

未在MVC应用程序中加载部分视图

来自分类Dev

Angular2未在cordova应用程序中加载

来自分类Dev

jsGrid未在静态数据的Vue应用程序中加载

来自分类Dev

Google地图未在我的应用程序中加载地图

来自分类Dev

Rails Gem未在Rails应用程序中加载

来自分类Dev

通用离子应用程序未在AVD中加载

来自分类Dev

Spring应用程序未在tomcat 7.0.47中加载,但正在Tomcat 7.0.34中加载

来自分类Dev

在真实设备上运行应用程序后,Android Studio会添加不需要的权限

来自分类Dev

Android Studio需要太长时间才能在真实设备上运行该应用程序

来自分类Dev

Firebase Phone Auth在iOS模拟器或真实设备中的flutter应用程序中均不起作用

来自分类Dev

如何确定我的Cordova应用程序是在模拟器上还是在真实设备上运行?

来自分类Dev

我无法在真实设备上的IOS8中的应用程序中仅显示简单的UIActionSheet

Related 相关文章

  1. 1

    在真实设备上运行Android应用程序

  2. 2

    在真实设备上调试应用程序

  3. 3

    将真实设备添加为运行Cordova应用程序的平台

  4. 4

    如何从ubuntu 12.04 OS在真实设备中运行android应用程序?

  5. 5

    应用程序在模拟器上运行,但不在真实设备中运行

  6. 6

    在真实设备上启动时,React-Native新鲜应用程序立即关闭

  7. 7

    在真实设备上运行时,Android应用程序图标背景颜色不同

  8. 8

    Flutter应用程序无法在真实设备或仿真器上运行

  9. 9

    Xamarin Forms应用程序无法部署到Android 10真实设备

  10. 10

    如何在具有Android Studio的真实设备中测试android应用程序?

  11. 11

    使用键盘时,Android应用程序在真实设备上崩溃

  12. 12

    退出应用程序时,真实设备上主按钮的功能是什么

  13. 13

    如何在真实设备上运行android应用程序?

  14. 14

    该应用程序可以在AVD上正常运行,但不能在真实设备上

  15. 15

    我的应用程序在真实设备上遇到问题

  16. 16

    当我在真实设备 iOS 中运行它时应用程序崩溃

  17. 17

    在真实设备上测试 Ionic2 应用程序

  18. 18

    未在MVC应用程序中加载部分视图

  19. 19

    Angular2未在cordova应用程序中加载

  20. 20

    jsGrid未在静态数据的Vue应用程序中加载

  21. 21

    Google地图未在我的应用程序中加载地图

  22. 22

    Rails Gem未在Rails应用程序中加载

  23. 23

    通用离子应用程序未在AVD中加载

  24. 24

    Spring应用程序未在tomcat 7.0.47中加载,但正在Tomcat 7.0.34中加载

  25. 25

    在真实设备上运行应用程序后,Android Studio会添加不需要的权限

  26. 26

    Android Studio需要太长时间才能在真实设备上运行该应用程序

  27. 27

    Firebase Phone Auth在iOS模拟器或真实设备中的flutter应用程序中均不起作用

  28. 28

    如何确定我的Cordova应用程序是在模拟器上还是在真实设备上运行?

  29. 29

    我无法在真实设备上的IOS8中的应用程序中仅显示简单的UIActionSheet

热门标签

归档