如何在Chrome for Android中强行重新加载

时间:2013-09-02 10:39:54

标签: google-chrome google-chrome-devtools chrome-for-android

在桌面版Chrome中,我在开发工具中有选项可以在打开开发工具时完全禁用缓存。我可以选择在长按“重新加载”按钮时手动执行硬重新加载(打开开发工具)。

Chrome for Android是否有这样的技术?我没有找到任何设置。 当我想强制浏览器下载某些javascript或css文件而不是在开发时使用缓存文件时,我该怎么办?

22 个答案:

答案 0 :(得分:149)

我根据MDN使用window.location.reload(true)(以及this类似问题)它强制页面从服务器重新加载。

您可以在地址栏中输入javascript:location.reload(true)在浏览器中执行此代码。

答案 1 :(得分:53)

也是一个选项:

  1. 菜单
  2. 设置
  3. 隐私
  4. 清除浏览数据
  5. 检查"缓存"然后按" CLEAR"
  6. 然后重新加载页面。

答案 2 :(得分:37)

您可以使用应用菜单中的请求桌面版网站选项(位于地址栏右侧),这将强制重新加载页面。

只需点击它,等待刷新,然后取消选择它。

答案 3 :(得分:23)

提到这一点是因为你提到了#34;在开发"。

您可以通过Chrome桌面浏览器控制移动设备。

访问桌面上的chrome://inspect/#devices。并且Inspect设备已连接到您的桌面。在被要求许可时同意。

您现在应该可以在移动设备上看到当前页面的完整Devtool窗口。

现在,使用桌面上的硬重装快捷方式(Cmd + Shift + R)在移动设备上进行硬重装!

答案 4 :(得分:20)

不要忘记确保"减少数据使用量"设置已关闭,因为它似乎下载了缓存数据(来自Google服务器?),即使您的本地缓存已刷新。

答案 5 :(得分:10)

我知道这是一个老问题,但我发现接受的答案对我不起作用。

另一种解决方案是使用新的url参数附加url 例如website.com?a=1website.com?a=2

如果你已经有参数,你当然会使用&符号 即website.com?q=test&a=1

答案 6 :(得分:6)

Chrome的最新版本非常积极地缓存。即使是缓存破坏技术,例如" http://url?updated=datecode"停止工作。您必须每次清除缓存或启动隐身窗口(并确保数据保护程序已关闭)。

答案 7 :(得分:6)

截至2018年,来自google help center(在Chrome 63上测试):

  1. 点击三点菜单;
  2. 选择历史记录>清除浏览数据;
  3. 如果需要,请选择时间期间(在核对清单上方);
  4. 取消选中除缓存的图片和文件;
  5. 之外的所有项目
  6. 继续清除数据并确认。
  7. 正如另一个答案中所提到的,隐身标签也非常适合开发。

答案 8 :(得分:5)

远程调试允许您使用桌面开发工具:

https://developers.google.com/chrome-developer-tools/docs/remote-debugging

答案 9 :(得分:3)

如何在适用于Android的Chrome移动设备上为给定URL /网站重置所有数据:

1-打开Chrome菜单,然后点击“ i(信息)”图标

one

2-点击“网站设置”

two

3-点击垃圾桶图标

three

就是这样,即使对该URL最为了解的service worker也将消失。

答案 10 :(得分:3)

我找到了一个可行的解决方案,但这很丑。

  • 使用USB电缆将Android设备连接到PC,然后在桌面上打开Chrome
  • 右键单击页面上的任意位置,然后选择“检查”。
  • 单击三点菜单,然后在“更多工具”菜单下选择“远程设备”:

    enter image description here

  • 在打开的面板中,选择您的设备,然后选择电话上需要刷新的选项卡名称旁边的“检查”按钮:

    enter image description here

  • 在打开的窗口中,单击“网络”选项卡,然后选中“禁用缓存”复选框:

    enter image description here

  • 在手机上重新加载页面或使用DevTools窗口中的重新加载按钮。

  

注意:如果您的手机未出现在设备列表中:

     
      
  • 确保USB连接正在使用文件传输模式并且不只是充电
  •   
  • 尝试重新启动ADB或运行adb devices以查看是否正在检测设备
  •   

答案 11 :(得分:2)

我能够使用chrome:// net-internals清除缓存(包括后续的xhr)

chrome net internals

然后单击右上角的小箭头

menu

从该菜单中选择“清除缓存”。

答案 12 :(得分:1)

我发现不需要将电话插入PC的唯一可靠方法如下:

1。强制停止Chrome应用。

必须首先完成 ,并且在完成这些步骤之前,您无法重新打开Chrome。有几种方法可以强制停止。大多数家庭启动器都可以通过在Chrome图标上按住手指并选择“ i”图标来访问“应用程序信息”。另外,您也可以转到Android设置并仅搜索“ Chrome”。

在“应用信息”中选择“强制停止”,如下所示:


2。清除Chrome的缓存

在同一屏幕上选择“存储”:


最后,选择“清除缓存”。

当您返回Chrome应用时,页面应重新加载并提供非缓存版本。

此外,我发现了一个网站,可以轻松测试是否清除了缓存:https://refreshyourcache.com/en/cache-test/
我绝不隶属于它。请注意,清除该站点上提到的缓存的方法实际上已经过时,并且不再有效。

答案 13 :(得分:1)

键盘快捷键(例如Ctrl + Shift + R)也可以在Android上使用,您只需要一个能够发送这些键的键盘即可。我使用了Hacker's Keyboard 发送Ctrl + Shift + R,这在我的手机上进行了重新加载。

答案 14 :(得分:0)

这是另一个简单的解决方案,当其他人失败时可能会起作用:

今天,当缓存问题是缓存的CSS文件时,一个相当简单的开发人员端解决方案对我有用。简而言之:创建一个临时html文件副本,然后浏览到该副本以更新CSS缓存。

此技巧至少可以在Android的蓝球图标默认浏览器中刷新CSS文件(但很可能是它的双胞胎,也就是官方的Chrome浏览器,以及我们在“智能”手机上遇到的其他浏览器,它们的趋势都如此主动缓存)。

详细信息:

起初,我尝试了此处共享的一些相当简单的解决方案,但是没有成功(例如,清除特定站点的最新历史记录,但几个月又一个月)。但是,我的最新CSS不会在刷新后应用。而且即使我已经在html头部分的CSS文件调用中使用了version-number-trick,过去也帮助我避免了这些讨厌的激进式缓存。 (例如:link rel =“ stylesheet” href =“ style.css?v = 001”,每次更改CSS文件(例如001、002、003、004等)时,您都会在此伪版本号上进行升级。 (应该在网站的每个html文件中完成)

这次(2019年8月)的CSS文件版本号更新已不再足够,这里提到的一些更简单的措施也对我没有用,或者我什至找不到访问其中的一些措施(在借来的android手机上) )。

最后,我尝试了一些相对简单的方法,最终解决了该问题:

我为网站的index.html文件制作了一个副本,并为其指定了另一个名称(indexcopy.html),然后将其上传,在Android设备上浏览至该页面,然后浏览回原始页面并刷新(刷新后)地址栏左侧的按钮),然后瞧瞧:这次刷新index.html终于成功了。

说明:最新的CSS文件版本现在终于在刷新有问题的html页面时在Android上应用了,因为从不同名称的临时html页面调用CSS文件时,现在已经更新了CSS文件的缓存副本在浏览器历史记录的任何位置均不存在,以后可以再次删除。积极的缓存显然会忽略CSS URL,而改为使用HTML URL,即使需要在缓存中更新的是CSS文件。

答案 15 :(得分:0)

如果只是包含文件的问题,只需在路径(?v=12345678)后面添加版本

<link rel="stylesheet" type="text/css" href="style.css?v=12345678" />

再次加载页面的人都会看到更改。

答案 16 :(得分:0)

大多数答案都不适合我。 这是2020年8月在我的Galaxy S8上进行的超级简单的工作:

在您的http:....地址之前添加“ view-source:”,如果与html或索引不同,则在其中浏览到更改的文件。

您将看到未更改的文件。刷新。

完成。

答案 17 :(得分:0)

我一直在努力寻找一个不会刷新的CSS文件。但是您可以在地址栏中键入CSS文件本身的名称,然后刷新它。之后就可以了。 Android 8上的Chrome。显然,如果涉及多个文件,那将很累。

答案 18 :(得分:0)

在 Chrome 中,只需勾选“桌面站点”,然后取消勾选!!

答案 19 :(得分:0)

添加参数给url傻瓜浏览器以加载新页面。我为此编写了一个函数:

function forceReload(){
    
    function setUrlParams(url, key, value) {
        url = url.split('?');
        usp = new URLSearchParams(url[1]);
        usp.set(key, value);
        url[1] = usp.toString();
        return url.join('?');
    }
    
    window.location.href =setUrlParams(window.location.href,'_t',Date.now());
}

你只需要调用它:

forceReload();

答案 20 :(得分:0)

如果这是一个选项,您可以直接访问(即 JavaScript)资源,重新加载多次,这也会触发该资源的硬重新加载。然后您可以再次重新加载实际页面。

答案 21 :(得分:-2)

  1. 启动 Chrome Android 应用。

  2. 打开您需要硬刷新的任何离线网站或网页。

  3. 点按 Chrome 浏览器中的 three Dot 图标选项。

  4. 点按 reload 图标可硬刷新 Chrome 中的网站页面。

screen short