導讀開發移動應用到底是選擇Native、Web應用或者混合應用?答案是不同的移動應用需要不同的技術,選擇合適的就行。其實大多數移動應用,不管是企業移動應用還是互聯網移動應用,90%都可以使用基于HTML... 開發移動應用到底是選擇Native、Web應用或者混合應用? 目前主流的智能終端中, iPhone 5: 新的屏幕尺寸 新模擬器 你需要做的 問題iOS 6的新功能: 文件上傳、具有媒體捕捉攝像頭的訪問和文件API 網絡音頻API 本機應用程序集成的智能應用橫幅 CSS 3過濾器 交叉淡入淡出CSS 3 CSS Partial圖片支持 全屏支持 動畫計時API 支持多分辨率的圖像 Passbook優惠券和月票交付 存儲API和Web應用程序的變化 本機Web應用程序的Web View的改變 遠程Web Inspector調試 更快的JavaScript引擎和其他新功能iPhone 5 新的iPhone 5,以及自從iPod Touch第5代開始,在Web開發方面有一個大的變化: 新模擬器 包含iPhone 5仿真器的Xcode4 iOS 模擬器 新的Xcode 4(Mac AppStore )包括更新后的iPhone模擬器。 新版本的iPhone模擬的三個選項: iPhone:iPhone 3GS,iPod Touch的第一,第三代 iPhone Retina 3.5“:iPhone 4,iPhone 4s,iPod Touch的第四代 iPhone Retina 4“:iPhone5,iPod Touch的第5代 新的模擬器還包括取代谷歌地圖的新地圖應用程序和Passboo 你需要為新設備做的 通常情況下,如果你的網站/應用程序進行了優化,可垂直滾動, 如果你設計了一個特定高度的谷歌地圖。 正如你可以看到的(右圖來自iPhone 5)有一個白色的底欄和URL地址欄無法隱藏, 如果您使用的是響應性的Web設計,你不應該有太多的麻煩, 設備檢測 在寫這篇文章的時候,還沒有iPhone 5在市面上。 沒有辦法在服務器端檢測iPhone 5 。 用戶代理只有iOS 6系統的iPhone, Mozilla/5.0 (iPhone; CPU iPhone OS 6_0 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Version/6.0 Mobile/10A403 Safari/8536.25 因此, 客戶端檢測4寸iPhone設備唯一的方法來是使用JavaSc isPhone4inches = (window.screen.height==568); 使用CSS媒體查詢和響應性Web設計技術, @media (device-height: 568px) and (-webkit-min-device-pixel- /* iPhone 5 or iPod Touch 5th generation */ } 主屏幕的webapps 主屏幕的webapps問題似乎是很嚴重的。 我已經報告了這個問題,在NDA還沒有來自蘋果的任何答案。 當你添加一個網站的首頁到屏幕,支持apple- 在圖像里能看到黑欄條。 這是iPhone 5和新iPod Touch默認情況下全屏幕webapp。 如果操作系統是不確定是否支持更寬的屏幕, 解決方案是, 你需要忘記viewport的width=device- <meta name="viewport" content="initial-scale=1.0"> 甚至如果指定一個不同于320寬可以這樣: <meta name="viewport" content="width=320.1"> 不動viewport,下面的腳本也可以達到目的: if (window.screen.height==568) { // iPhone 4" document.querySelector("meta[ } 如果程序啟動圖像為640×1096, 您可以使用媒體查詢,提供不同的啟動圖片: <link href="startup-568h.png" rel="apple-touch-startup- <link href="startup.png" rel="apple-touch-startup- 如果你想為低分辨率設備提供了另一種版本, 另一個問題是,購買了新設備后, iTunes將是否再次從備份安裝快捷方式圖標,這是不明確的 iOS 6和HTML5的開發 iOS 6是為每一個iOS 5設備免費提供更新的,除了iPad第一代, 文件管理問題 iOS 6 上的 Safari 瀏覽器支持的文件上傳并且有HTML Media Capture的部分支持。 一個簡單的文件上傳,會要求用戶從相機或相冊里輸入一個文件, <label>Single file</label> <input type="file"> 我們也可以使用HTML5新的布爾屬性請求multiple文件 <label>Multiple files</label> <input type="file" multiple> 我們可以使用文件上傳訪問攝像頭和相冊 雖然沒有辦法強制使用攝像頭, 但我們可以使用accept屬性只指定想捕捉的圖像或視頻。 <input type=file accept="video/*"> <input type=file accept="image/*"> 不支持其他類型的文件 ,如音頻,Pages文檔或PDF文件。 也沒有getUserMedia攝像頭的實時流媒體支持。 有圖片和視頻選擇后你能做什么呢? 使用multipart POST表單提交上傳 使用XMLHttpRequest 2 AJAX上傳(甚至進度支持) 使用文件API ,在iOS 6允許JavaScript直接讀取的字節數和客戶端操作文件。網絡音頻API HTML5游戲開發商應該是喜歡! 網絡音頻API在移動瀏覽器 API更多的信息和消息在 http://www. 智能應用程序橫幅 網站還是本機應用程序? 如果我們都有, 要定義一個智能應用程序橫幅,我們需要創建一個meta標簽, 名稱=“apple-itunes-app”。 首先,我們需要去iTunes Link Maker搜索我們的應用程序和應用程序ID。 <meta name="apple-itunes-app" content="app-id=9999999"> 我們可以使用 app-argument 提供字符串值,如果我們參加的iTunes聯盟計劃, <meta name="apple-itunes-app" content="app-id=9999999, app-argument=xxxxxx"> <meta name="apple-itunes-app" content="app-id=9999999, app-argument=xxxxxx, affiliate-data=partnerId=99& 橫幅需要156像素(設備是312 hi-dpi)在頂部,直到用戶在下方點擊內容或關閉按鈕, 有了智能應用程序橫幅, 幾秒鐘內,橫幅顯示“加載” CSS 3過濾器 CSS 3 過濾器是一組圖像操作,我們可以使用CSS的功能,如灰度, 這里你可以嘗試一個很好的演示。 一個簡單的例子,例如: -webkit-filter: blur(5px) grayscale (.5) opacity(0.66) hue-rotate(100deg); CSS 3交叉淡變 iOS 6開始支持一些新的CSS Image Values,包括交叉淡入淡出功能。 有了這個功能, 簡單的例子: background-image: -webkit-cross-fade(url("logo1. Safari中的全屏幕 除了chrome-less 主屏幕meta標簽,現在的iPhone和iPod Touch(而不是在iPad)支持全屏幕模式的窗口。 這是完美的身臨其境的體驗,如游戲或多媒體應用程序。 沒有辦法強制全屏模式,它需要由用戶啟動( iPhone和iPod Touch上的全螢幕導航 你總能找到兩個或三個覆蓋底部的按鈕,你應該知道, 您可以使用onresize事件檢測是否用戶切換到全屏幕。 動畫計時API 游戲開發人員很幸運。 iOS 6支持的動畫計時API , CSS圖片Set,這是沒有任何標準組的一部分。 這是一個新的圖像功能, 圖像集接收一組附加的條件或圖片。有了這個新的功能, -webkit-image-set(url(low.png) 1x, url(hi.jpg) 2x) 它就像CSS背景圖像一樣工作 。 有了這個新的語法,我們可以有更清晰的多分辨率圖像清晰度, Passbook Passbook是一個新的iOS應用程序,一個虛擬容器, 蘋果允許網站不需要本機程序就可提供這種通行證 。 為了在您的網站上提供通行證, 蘋果提供了一個工具, 要傳遞的文件僅僅是一個JSON元數據文件和一對圖像。 我們需要打包文件,并簽署。 不幸的是 , 要簽署通過,我們需要蘋果的簽名 ,這意味著Web開發人員需要一個iPhone開發者計劃帳戶( 通行證的強大功能之一是,一旦安裝結束,并通過推送通知服務, 更多passbook信息developer.apple. 存儲API和web應用程序的更新 沒有新的存儲API。 沒有索引型數據庫的支持。 然而,也有一些變化,你應該考慮: 應用程序緩存限制增加至25MB。 Chromeless web應用程序 (使用apple-mobile-web-app- <meta name="apple-mobile-web-app- 我還發現, apple-mobile-web-app- Web View更新 Web View(pseudobrowsers,PhoneGap/ 我們可以找到一些其他的好消息: web應用程序的調試Remote Web Inspector 一個新的supressesIncrementalRender遠程調試 這是對Web開發人員一個巨大的變化。 iOS上Safari第一次,包括官方的Remote Web Inspector。 因此,iWebInspector或Weinre工具, 要啟動遠程檢查會話,你需要使用桌面Safari 6瀏覽器 。 這是壞消息:你只能在Mac桌面電腦上調試你的web應用。 這是一個無聲的變化, 出于安全考慮,您需要先啟用Web檢查器“設置”>“ 您可以啟動調試會話: 在您的iOS設備或模擬器的Safari窗口 在您的iOS設備或模擬器上安裝的chrome-less webapp程序 使用Web View本機應用程序,如Apache Cordova/ PhoneGap的應用程序。 在談到本機應用程序,你只可以檢查,由Xcode( 如果您正在使用Webkit Inspector 連Safari 5或Chrome,你會在Safari 6看到一個完全重新設計版本的Inspector基于Xcode 蘋果干得好,我們在iOS上等這個已經很長一段時間 。 Apache Cordova 用戶使用此功能也應該喜歡。 其他較小的更新 蘋果公司聲稱有一個更快的JavaScript引擎 。 它似乎是真實的。 在SunSpider測試中,我在同一設備上iOS 5.1和iOS 6的JavaScript性能提高20%。 谷歌地圖在iOS 6 上不再可用,現在http://maps.google.com我們仍在等待 有一些東西,我們仍然需要等待下一個版本,如: 索引型數據庫IndexedDB 文件系統API 性能Timing API WebRTC和getUserMedia WebGL仍然被禁用 游戲/ inmersive應用程序的方向鎖定API 集成Facebook和Twitter帳戶的原生API,最后的思考 在iOS 6上的Safari是為HTML5開發調試工具邁出了一大步 ,新的API,更好的JavaScript性能。 不過,我必須說,
|
溫馨提示:喜歡本站的話,請收藏一下本站!