什么是離線應(yīng)用程序?
為了讓應(yīng)用程序離線狀態(tài)使用鳖藕,就必須把所有構(gòu)成應(yīng)用程序的資源文件魔慷,html,css.js腳本文件等放在本地緩存中,當(dāng)服務(wù)器區(qū)的資源文件沒有和internet 建立連接時著恩,也可以利用本地緩存中的資源文件來正常運行應(yīng)用程序
為什么要開發(fā)離線應(yīng)用程序呢院尔?
因為web應(yīng)用程序的缺點是如果用戶沒有連接internet,他就不能利用web應(yīng)用程序喉誊,html5中本地緩存機制解決了這個問題邀摆,為離線web應(yīng)用程序的開發(fā)提供了可能性
什么是本地緩存?
本地緩存和網(wǎng)頁緩存有什么區(qū)別呢伍茄?
本地緩存為這個應(yīng)用程序服務(wù)的栋盹,網(wǎng)頁緩存只服務(wù)于單個網(wǎng)頁,敷矫,人和網(wǎng)頁都有網(wǎng)頁緩存例获,而本地緩存只緩存那些你制定的緩存的網(wǎng)頁汉额!其次是網(wǎng)頁緩存是不安全,不可靠的榨汤,不知道什么要緩存什么不緩存蠕搜!而本地緩存是可靠的,可以用她控制那些事緩存的那些不需要緩存件余!
H5 一共有6種緩存機制讥脐?
瀏覽器緩存機制--http協(xié)議層支持 適合:靜態(tài)文件的緩存
Dom Storgage(Web Storage)存儲機制--較大儲存空間遭居,使用簡單啼器,臨時,簡單數(shù)據(jù)的緩存俱萍,cookie的擴展
Web SQL Database 存儲機制 儲存端壳,管理復(fù)結(jié)構(gòu)數(shù)據(jù)用indexedDBA t替代,不推薦使用
Application Cache(AppCache)機制方便構(gòu)建離線app枪蘑,使用app,靜態(tài)文件緩存损谦,
Indexed Database (IndexedDB)
File System API
什么是manifest文件呢?
webapp=html5+css3+js---
提供數(shù)據(jù)持久技術(shù)
Application Cache(AppCache)--本地緩存應(yīng)用所需的文件
localstorage鍵值對c
htm5---中文網(wǎng):
將一個rss新聞閱讀應(yīng)用改造為ios離線應(yīng)用:
新聞閱讀器的構(gòu)架---
功能#實現(xiàn)頁面無刷新切換
讀取服務(wù)器的rss
將文章顯示在主頁上岳颇,
點擊標題打開文章詳情
返回主頁
刷新新聞
mvc設(shè)計模式
c--控制器定義程序行為照捡,將用戶動作映射到模型更新視圖
m---保存數(shù)據(jù),封裝數(shù)據(jù)操作话侧,通知控制器數(shù)據(jù)更新
v--顯示模型
接受用戶的輸入
將用戶輸入發(fā)給控制器
代碼分析
改造方案
代碼修改講解