如何在离子构建/运行时强制刷新缓存的源文件?

问题描述 投票:32回答:9

我有ionic buildionic run这个随机问题。

我注意到在编译期间它使用了我的源代码的缓存,因此在进行新的更改时,它不会反映重新编译应用程序。

所以我的问题是,如何清除构建文件的缓存?我已经尝试过做ionic state reset但是它仍然不起作用,也没有卸载然后从我的Android重新安装应用程序。

谢谢

cordova ionic-framework ionic
9个回答
39
投票

我为解决我的问题所做的是重新初始化Android平台。

ionic platform remove android然后ionic platform add android


10
投票

您需要在config.xml(项目文件夹顶部)上增加应用程序版本以反映您在运行之前的更改:

<widget id="com.yourapp.id" version="0.0.8" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0"

在此示例中,将属性版本增加到0.0.9:version="0.0.9"

然后run androidrun ios


4
投票

这可能是Ionic的一个错误,但为了解决这个问题,我通常只需按住ctrl + c然后gulp然后重新运行离子服务。


4
投票

我从android-debug.apk然后platforms/android/build/outputs/apk删除了ionic cordova run android。它没有缓存。


3
投票

删除平台:离子cordova平台rm android

重新添加平台:离子cordova平台添加android

步骤1)离子cordova准备android //复制www文件夹特定平台

步骤2)离子cordova构建android //构建apk

步骤3)离子cordova运行android //部署最新的apk设备


3
投票

如果你使用cordova build,sudo cordova build <platform>

sudo cordova prepare

在您的cordova项目根文件夹中。

此命令反映了您对构建(所有平台)的更改。


2
投票

我想回答这个问题,因为它给我带来了一些真正宝贵的时间。

我清空了platforms文件夹并再次构建解决方案。顺便说一下,我正在使用Visual Studio进行开发。我应该解决这个问题。

此外,它很明显,但仍然想重申平台不应该是源控制的一部分。

希望能帮助到你。


1
投票

我有一个问题,应用程序将使用npm run dev本地加载最近的更改,但当我尝试使用cordova run android在我的设备上运行它将加载旧版本。我尝试了上面的所有建议,没有任何效果。我终于想通了,如果我在使用cordova进行构建之前做了npm run build,它会加载新版本。希望这有助于某人。


0
投票

为了补充@Renesaensz的解决方案,在离子4.5.0(或更高版本)中添加cordova到命令:

  • 离子cordova平台删除android

那么离子

  • 离子cordova平台添加android
© www.soinside.com 2019 - 2024. All rights reserved.