代码之家  ›  专栏  ›  技术社区  ›  SmoggeR_js

当电缆与我的智能手机断开连接时,它会运行我的React Native应用程序的旧代码

  •  1
  • SmoggeR_js  · 技术社区  · 8 年前

    我正在Mac电脑上用智能手机(BQ Aquaris U Plus)调试React原生应用程序。

    当智能手机连接到PC时,一切正常。

    我成功地执行了“react native run android”命令,它执行了我的代码。

    问题来了,当我断开电缆后,安装了应用程序,它执行旧代码像2个月前。

    我已经尝试了所有,卸载,卸载所有用户,重新启动系统,取消选中自动还原(安卓)。。。有时它似乎对我有效,但过了2个小时仍然出现问题。

    这在iOS中也发生过。

    1 回复  |  直到 8 年前
        1
  •  2
  •   Nati Sholman Oskar    8 年前

    您必须区分开发模式和发布模式。

    在开发过程中,当您的设备(智能手机)使用与mac/pc相同的网络时,您的本地捆绑服务器是可访问的,您的代码将从那里运行,如果无法访问本地服务器,它将故障切换到以前编写的设备本地捆绑(可能在您的情况下,我打赌是2个月前)

    为了与你的mac/pc完全分离,你需要捆绑你的当前代码-

    对于iOS-

    react-native bundle --entry-file='index.ios.js' --bundle-output='./ios/main.jsbundle' --dev=false --platform='ios' --assets-dest='./ios'
    

    对于Android-

    react-native bundle --platform android --dev false --entry-file index.android.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res/
    

    这将创建本地捆绑包,您的应用程序可以在与计算机和本地网络断开连接时使用。