嗨,美好的一天任何人都有教程如何使我的Chrome擴展/應用程序脫機?Chrome應用程序離線模式
我是新開發Chrome應用程序我剛剛將我的網站URL嵌入到我的manifest.json中,但我希望我的Chrome應用程序可用即使離線模式 任何人都有關於如何使Chrome應用程序脫機的教程?
嗨,美好的一天任何人都有教程如何使我的Chrome擴展/應用程序脫機?Chrome應用程序離線模式
我是新開發Chrome應用程序我剛剛將我的網站URL嵌入到我的manifest.json中,但我希望我的Chrome應用程序可用即使離線模式 任何人都有關於如何使Chrome應用程序脫機的教程?
在manifest.json中使用"offline_enabled": true並閱讀Offline First。
使Chrome應用程序脫機工作不僅僅是將"offline_enabled": true
添加到您的manifest.json
。的確,在大多數情況下,offline_enabled
設置爲true
by default。
離線意味着什麼,如果不是全部,應用程序的大部分數據都存儲在運行該應用程序的計算機本地。這樣,該應用程序不關心它是否連接到互聯網。查看Chrome應用開發者網站上的this link。您還需要查看Chrome storage
API以下載,同步和管理您的數據。
從我目前瞭解的情況(Chrome 47)來看,webview和脫機支持可能存在問題。實際上,只要包含webview,默認情況下offline_enabled標誌將設置爲false。
https://developer.chrome.com/apps/manifest/offline_enabled
現在理論上網頁視圖是要脫機工作的唯一方法是,如果它的緩存內容。您會認爲使用HTML5應用程序緩存。
如果您的Chrome OS設備與Internet斷開連接但運行帶有webview的應用程序,即使您明確將offline_enabled標誌設置爲true,並且您的webview要加載HTML5應用程序中的內容緩存似乎這種情況現在不起作用。
簡單地使用webview,即使是從HTML5應用程序緩存中完全加載HTML5應用程序/頁面的webview,Chrome操作系統也會在嘗試加載URL之前給您一個ERR_INTERNET_DISCONNECTED錯誤。
奇怪的是,如果您的HTML5應用程序緩存已完全緩存應用程序/頁面並且URL的服務器處於脫機狀態,但您的Chrome操作系統設備已連接到Internet,則webview將正確加載HTML5應用程序中的頁面緩存。
我今天將此問題提交給Google。這似乎是一個監督與網頁瀏覽和設備脫機時無法檢查HTML5應用程序緩存。如果有人感興趣,我會在此更新。
2016年2月3日編輯
我們想通了,我們的問題是我們的應用程序最初將嘗試它被重定向到https,然後緩存在HTTP URL。當我們離線時,它只會嘗試http並且無法找到任何緩存的內容,因此我們會將恐龍頁面脫機。
通過僅在我們的情況下嘗試https,一切正常。使用AppCache的網頁瀏覽器可以在離線狀態下在Chrome操作系統應用中正常工
只需添加'「offline_enabled」:true'對Chrome應用程序或擴展程序沒有太大幫助。根據[文檔](https://developer.chrome.com/apps/manifest/offline_enabled),當計算機處於脫機狀態時,它會在'chrome:// extensions'中突出顯示該應用程序。 – jreut
我認爲他使用webview。對於webview,我們必須使用「offline_enabled」:true。 – raciasolvo
在這種情況下,您的答案中的「大多數情況下」不是最佳選擇。只需使用「offline_enabled」:true,不要考慮默認值。無論如何,應用程序當然需要能夠從本地商店加載一些資源。但我認爲這是另一個問題。 – raciasolvo