當前位置:首頁 » 安卓系統 » androidioshtml5

androidioshtml5

發布時間: 2022-06-20 11:52:47

㈠ 如何開發同時支持ios和Android的應用html5

Html5是一種網頁開發語言,現在仍處於發展階段,但大部分瀏覽器已經支持某些
HTML5 技術為開發者提供了一個跨平台的移動apps開發方案,並且該方案具有很好的擴展性和靈活性。

如今國內使用html5開發app應用技術尚有欠缺,因為在手機開發app上,html5應用只有兩種方法,要不就是全使用HTML5的語法,要不就是僅使用javaScript引擎。

JavaScript引擎的構建方法讓製作手機網頁游戲成為可能。
由於界面層很復雜,已預訂了一個UI工具包去使用。

純HTML5手機應用運行緩慢並錯漏百出,但優化後的效果會好轉。盡管不是很多人願意去做這樣的優化,但依然可以去嘗試。

HTML5手機應用的最大優勢就是可以在網頁上直接調試和修改。原生應用的開發人員
可能需要花費非常大的力氣才能達到HTML5的效果,不斷地重復編碼、調試和運行,這是
首先得解決的一個問題。

即使這樣,愛在臨港還是很看好html5 app開發,原因有一下幾點。

一:現在HTML5非常火的技術,主要方向在使用高端瀏覽器的高端移動設備,所以可以用作開發Android系統的App。

二:html5對android、ios系統都支持。

三:HTML5可以用作離線應用的開發,離線應用就是把需要的資源先緩存到本地,下次再查看時無需聯網。

四:html5開發app,能提供更快、更簡便的服務,代碼可高度重用,服務發布方便。

五:動畫、游戲方面,地理定位方面的app應用正在崛,而html5技術優勢正是這在些方面。

可以說,未來採用html5開發app的,將會大量減少代碼量,應用軟體也會得到更高的用戶
體驗。

㈡ HTML5能取代Android和iOS應用程序嗎

不可以;
1、html5 是一種移動端網站程序的簡稱;
2、Android系統是一種手機端的引用程序,它包含了html5功能;
3、ios引用程序可以接容html5程序,他是蘋果公司開發的特有蘋果系統;
4、html5是一種一種安裝在Android和iOS裡面的軟體程序。

㈢ HTML5 移動開發未來可否取代 iOS 和安卓

大量新生移動設備的興起,改變了互聯網的未來。在技術的發展上,HTML5會取代App應用嗎?或者說能夠在多大程度上取代呢?在HTML5規范中,已經加入了相機、磁力羅盤、GPS信息的支持。很多新興瀏覽器也已經開始支持這些新特性。能否用一個統一的HTML5來替代android和ios並行開發的雙重成本呢?以下譯自Michael Mahemoff的一篇文章,詳細分析了HTML5能否取代Android和iOS應用程序。

介紹

移動應用程序(App)和HTML5都是目前最火的技術,二者之間也有不少重疊之處。在移動設備瀏覽器里運行的html5的web頁面,也可以重新打包成不同平台上運行的app。目前很多瀏覽器都有很好的跨平台支持,(譯註:firefox居然可以在android中使用和windows下同樣的瀏覽器內核),HTML5的web方案,對開發者來說更為方便。完成一次,即可多平台使用。但這確實可行嗎?仍然有許多必要原因,使得開發者選擇了app開發。很明顯,很多人已經在這么做了。本文將詳細分析兩種方案的優劣。

功能豐富

正方:App里可以開發出更豐富的功能

我們把移動功能分成兩類。程序本身和程序與系統的結合。比如android里,加入widget圖標或者通知提醒之類的。App對這兩者都沒問題。不用多說,這是肯定的。

反方:APP是挺強,但Web也正在迎頭跟進

確實很多原生app實現的功能是HTML5望塵莫及的。不管你的web做的再牛,如果停留在一個沒有攝像頭支持的沙盒中,很多場合還是玩不轉。幸運的是,現在沒有這樣的沙盒限制了。如果你需要你的web照相片,可以做一個負責照像的app,再把你的web打包進這個應用裡面。開源的PhoneGap框架是這么乾的。這樣widget,手機提醒也都沒問題了。

但這種混合開發的問題在於,增加了復雜性,而且不象傳統web那樣可以直接在瀏覽器里運行。這個問題短時間內恐怕沒轍。好在現在網路標准在不斷的高速擴充,先進的瀏覽器也在一直跟進。Android 3.1已經支持camera了。iOS瀏覽器也支持WebSocket和設備方向檢測了。

總得來說,移動設備在發展,而web也同樣在快速變化。桌面瀏覽器本身,有5家主要瀏覽器開發商在改進現有標准,豐富新的功能。所以原生App在快速前進,同時,web也在縮小差距。

運行效率

正方:原生APP速度更快

原生APP沒有瓶頸,而且可以直接調用GPU加速、使用多線程。

反方:現如今Web已經快多了,而且多數應用也用不著那麼快。

這說法有點落伍了。Chrome發布之時帶來的Javascript V8,給Web速度帶來的飛躍。而現在,計算速度變得更快了:

圖片處理引擎已經使用web加速。現在硬體加速也已經開始應用了。看看用上硬體加速的canvas(圖表來源)

要開發3D游戲的就不用抬杠了,但對於平而來說,新聞、郵件、時間管理、社交網路,這些用Web都夠用了。試試Steve Souders的手機性能測試工具。 另外,越來越多的框架結合WebGL,可以發揮OpenGL的優勢了。比如ImpactJS,幫助開發JS游戲。

開發感受

正方:原生APP好寫

原生APP使用強壯的程序語言(Java, Objective C, C++)。適合寫復雜程序,經過歷史驗證,API豐富。在桌面環境可以方便的用模擬器測試。而Web程序的runtimes和亂七八糟的各路瀏覽器讓人頭大。

反方:一般都是Web更簡單,特別是需要兼容不同設備的時候。

Web最初的功能只限於文檔展示,而不是程序應用,貌似最近倆星期才有了JS。但有了JS後,web的世界馬上就不一樣了。更何況web不只是靜止的,HTML5,CSS3,EcmaScript Harmony(誰知道這是什麼?)都給開發者極大幫助。你是喜歡C++,java, JavaScript,那你的個人愛好,也是基於你已經攢下的代碼。但是現在沒人能否認JavaScript也和前者站在同一擂台上。

瀏覽器/runtime的互不兼容(碎片),反過來看做APP也是一樣。用Java寫了Android app,然後又要面對iOS的Objective C。如果能寫一個程序,馬上能在Android和iOS上運行,多省事啊。這咱還沒提WebOS, BlackBerry,Windows Mobile呢。當然,這是理論上的。要是想讓程序在每個平台都跑得很漂亮,得做不少調試和妥協。這對很多原生APP也是一樣的。不同OS版本,不同的設備。。。

所謂的Web碎片化,一直都是如此。但好消息是現在已經有很多不錯的解決辦法。Modernizr庫,用得好的話,可以幫你兼容一大批主流設備,不管是啥系統,哪個牌子的。看看我們2011年的Google IO演示。

用戶體驗

正方:原生APP更切合原有平台

操作感受的定義之一,就是用戶希望在你的程序里,用與系統連貫統一的方式來操作。不同的平台,都有一些約定俗成的習慣。比如長按按鈕會有啥反應。你不能指望用一套統一的HTML5 App去滿足所有用戶。

此外,整個平台的操作感受都由用平台自有的軟體庫協調。直接調用平台工具包就能直接免費獲得完整支持。

反方:我們Web有自己的傳統,你要特想做原有平台那種感覺的web,也一樣能做出來

前面說了,Web開發的方式,是先做一個大體適合所有平台的版本,然後再針對不同平台不斷改進。當這些改進主要是針對功能時,你可以選擇幾個你最關心的平台做優化。類似於瀏覽器檢測。技術論壇里的悲催技術員們,經常抱怨這事。太多不同的瀏覽器版本了。不過如果你優先關注兩三種主流平台,是值得為他們多花點時間做做優化。

web本來就有自己的操作感受。我們也可以說,不同的默認瀏覽器以及運行環境造就了獨特的"Web感受"。從更廣的角度看,這本身就是一種用戶公認的方式。此外,還有很多成功的案例並不遵循移動設備的原生操作習慣,人家也成功了。想想你最喜歡的手機游戲的界面?很多更傳統的app也是一樣,比如Twitter客戶端。

㈣ ios 、Android + HTML5 實現Hybrid App ,後台是 .NET。 實現消息推送

接入第三方就可以實現消息推送。好的推送 提供通知+自定義消息+富媒體三重個性化推送方式,滿足任意場景需要,好的推送 3分鍾快捷集成SDK,推送毫秒級送達,降低開發成本,同時有效提升用戶留存率。
極光推送值得信賴,極光推送是國內最早的第三方移動消息推送服務供應商,累計為超過150萬移動應用提供服務極光推送 系統性能穩定,送達率高,延遲率低還支持用戶分群的推送功能。
可定製的私有雲,對於定製化需求較強的,或者想擁有自己推送平台的開發者,極光提供全功能的私有雲方案。
JPush 支持推送數量、用戶打開次數、用戶使用時長、新增用戶、活躍用戶等數據的統計。 Android 開發者需要實現了相關的統計 API,才可以進行用戶相關的統計。 iOS 開發者不需要實現統計 API,可以直接在【控制台】-【統計】頁面查看相關數據。

㈤ HTML5能取代Android和iOS應用程序嗎

糾正一下,HTML5和Android和iOS不是平等關系,他是一種語言,只能和JAVA及OC對等

下面回答,不能,至少短期內(個人認為5~10年),原因如下:
1、Android是谷歌的,iOS是蘋果的,各家有各家的利益

2、Android主流開發語言是JAVA,iOS是OC,為什麼,OC是iOS的專用語言這個暫且不說,而之所以Android使用JAVA是看中了之前做J2EE和J2SE等,大量的JAVA開發人員,之所以Android火起來,不單是Android開源(使手機生產商的生產成本下降),更是大量的JAVA開發人員能夠快速的進入這個新興平台,從技術上(可以理解為大量的App發布)推動Android進步

3、成本問題,以上兩點其實都在說這個問題,用HTML5取代JAVA和OC,首先要考慮人力成本問題,要有大量HTML5開發人員這個前提條件,否則用人單位不會為此付出更多的人力成本和風險成本(主要的,會不會開發出來的東西效果很垃圾),而谷歌和蘋果開發Android和iOS更是花費了極大的成本,他們也不會願意看到自己的成果被別人竊取而損害自己的利益

4、性能問題,其實還是從成本角度出發,HTML5這個東西他再厲害是跑在瀏覽器上的,谷歌和蘋果怎麼可能在損害自己利益的情況下,還會花大價錢開發更高級的瀏覽器以適應HTML5(把HTML5跑的和應用程序一樣快),如果系統內置的瀏覽器達不到那個量級,外置瀏覽器都是扯淡,所以你會看到,HTML5好不好,很好,但是在Android和iOS上和原生應用程序比較,他就是慢,就是山寨,各種特效都出不來的情況下還談什麼HTML5

5、開發者問題,也是相輔相成的,看看現在市面上有幾個喜歡做WEB前端的就知道了,人才很少,價格很低(我也在招人,有感而發),這就導致更少的人去學去做,更不要說在Android和iOS平台上,HTML5要適應這兩個平台的規則,比如JS回調要在JAVA中執行的問題,這就導致你要學習HTML5就要多學習Android,那我為什麼不直接學Android,種種原因會導致HTML5(在手機平台)的開發者短期內不會爆發式增長(多說一嘴,要解決這個問題,兩種可能,1、像Android,原本就有那麼多JAVA開發者,而且這些JAVA開發者還做過手機,2、用人單位普遍的覺得HTML5好,從而願意花大價錢聘請HTML5開發者,從而抬高整體行業薪資,使跟風者不絕。目前看這兩種可能性都不存在)

6、語言成熟度,語言成熟度不是說SDK第幾版,語言本身是否還有漏洞這種問題,成熟度本身的意味其實就是「人」和「庫」,是「能否進行快速開發」,比如php效率低下,為什麼這么火,價格這么高,原因是漫天的完整源碼、框架、庫,是大量的有豐富經驗的開發者,是「快速開發」。HTML5?還差的太遠!所謂「成熟」,還得時間的積累

綜上,HTML5很新很火,那是在PC WEB平台,開發者少,收入不高,在Android和iOS平台上運行效率低,開發風險高,不成熟,所以我說「不能,至少短期內(個人認為5~10年)」

原創哦,親,純手打的,給個贊吧~

㈥ 在ios和Android上構建跨瀏覽器應用 誰最適合HTML5

Fiercedeveloper於2月3日刊載了一篇探討iOS與Android平台性能的文章,作者Aditya Bansod在文中將Android 4和iOS 5做了一番比較。2011年12月上旬,Google發布了Android移動操作系統的最新重大升級。新操作系統是Android 4,代號為「冰淇淋三明治(Ice Cream Sandwich)」。對於Web開發人員而言,這是對Android的一次大考:如果要在 iOS 和 Android 上構建跨瀏覽器的應用,HTML 5是可行的解決方案嗎?

<img

我們在Sencha測試了最新版本的iOS 5和Android 4,以了解每個平台提供給Web開發人員的特性以及它們各自的優勢。

為了成為一流的Web應用平台,瀏覽器要向Web開發人員提供一系列核心功能:渲染引擎,用於盡可能流暢地顯示視覺元素;Javascript引擎,用於執行應用程序邏輯;以及DOM(文檔對象模型)和瀏覽器API,用於提供HTML5的特性以及支持發起網路請求、上傳文件、操作頁面等動作。為了從Web應用開發人員的角度比較Android 4和iOS 5,我們分別討論了這三部分內容。

WebKit:Android 4進步明顯,但仍然落後

幾乎所有移動設備的Web瀏覽器都使用了WebKit渲染引擎。WebKit最先起源於蘋果的開源項目KDE/KHTML,現在Google、Qualcomm、RIM和其他很多廠商都加入了WebKit家族。它現在已經成為移動設備上渲染Web內容的事實標准。Android 4和iOS 5瀏覽器都基於WebKit,但是版本稍有不同。Android 4實現了WebKit 534.30,而蘋果則實現了534.46。

雖然iOS的版本較新,但它們之間的差距很小,這是因為WebKit的渲染性能取決於它在硬體和軟體上的具體實現。我們在測試中發現Android 4的渲染速度比Android 2.x和Android 3有明顯提高。觸摸滾動變得順暢了很多,Android上常見的停頓也基本上完全消失了。不幸的是,它在渲染上有明顯的缺陷,比如在使用JavaScript和CSS3移動屏幕上的元素時會出現閃爍和滾屏緩慢。對於依賴動態地移動元素的Web應用來說,Android 4的表現比Android 2.2要差。總體上說,Google在增強瀏覽器體驗方面取得了很大的進步。

同時,Android 4新支持了很多CSS3特性,而iOS 5很早之前就支持這些特性。具體說來,Android 4現在完善地支持了CSS3 2D和3D變換、動畫、過渡和反射。這對於Android來說是巨大的進步,因為開發人員在設計流暢而漂亮的Web應用時不會再只想到蘋果。伴隨著對這些特性的支持,我們希望Google和Android硬體供應商一起努力,對其產品仔細琢磨,實現無閃爍和高性能,以獲得開發人員對高級渲染特性的真正支持。

㈦ 為什麼 HTML5 在 iOS 上很流暢,但在 Android 上卻不盡如人意

開發者們都知道在高端智能手機系統中有兩種應用程序:一種是基於本地(操作系統)運行的APP;一種是基於高端機的瀏覽器運行的WebApp,本文將主要講解後者。

WebApp與Native App有何區別呢?

Native App:

1、開發成本非常大。

一般使用的開發語言為JAVA、C++、Objective-C。

2、更新體驗較差、同時也比較麻煩

每一次發布新的版本,都需要做版本打包,且需要用戶手動更新(有些應用程序即使不需要用戶手動更新,但是也需要有一個惡心的提示)。

3、非常酷

因為native app可以調用IOS中的UI控制項以UI方法,它可以實現WebApp無法實現的一些非常酷的交互效果

4、Native app是被Apple認可的

Native app可以被Apple認可為一款可信任的獨立軟體,可以放在Apple Stroe出售,但是Web app卻不行。

Web App:

1、開發成本較低

使用web開發技術就可以輕松的完成web app的開發

2、升級較簡單

升級不需要通知用戶,在服務端更新文件即可,用戶完全沒有感覺

3、維護比較輕松

和一般的web一樣,維護比較簡單,它其實就是一個站點

Webapp說白了就是一個針對Iphone、Android優化後的web站點,它使用的技術無非就是HTML或HTML5、CSS3、JavaScript,服務端技術JAVA、PHP、ASP。

當然,因為這些高端智能手機(Iphone、Android)的內置瀏覽器都是基於webkit內核的,所以在開發WEBAPP時,多數都是使用HTML5和CSS3技術做UI布局。當使用HTML5和CSS3l做UI時,若還是遵循著一般web開發中使用HTML4和CSS2那樣的開發方式的話,這也就失去了WEBAPP的本質意義了,且有些效果也無法實現的,所以在此又回到了我們的主題–webapp的布局方式和技術。

哥在此說明一下,在此所說的移動平台前端開發是指針對高端智能手機(如Iphone、Android)做站點適配也就是WebApp,並非是針對普通手機開發Wap 2.0,所以在閱讀本篇文章以前,你需要對webkit內核的瀏覽器有一定的了解,你需要對HTML5和CSS3有一定的了解。如果你已經對此有所了解,那現在就開始往下閱讀吧……

1、首先我們來看看webkit內核中的一些私有的meta標簽,這些meta標簽在開發webapp時起到非常重要的作用

1
<meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0;" name="viewport" />
2
<meta content="yes" name="apple-mobile-web-app-capable" />
3
<meta content="black" name="apple-mobile-web-app-status-bar-style" />
4
<meta content="telephone=no" name="format-detection" />


第一個meta標簽表示:強制讓文檔的寬度與設備的寬度保持1:1,並且文檔最大的寬度比例是1.0,且不允許用戶點擊屏幕放大瀏覽;

第二個meta標簽是iphone設備中的safari私有meta標簽,它表示:允許全屏模式瀏覽;

第三個meta標簽也是iphone的私有標簽,它指定的iphone中safari頂端的狀態條的樣式;

第四個meta標簽表示:告訴設備忽略將頁面中的數字識別為電話號碼

2、HTML5標簽的使用

在開始編寫webapp時,哥建議前端工程師使用HTML5,而放棄HTML4,因為HTML5可以實現一些HTML4中無法實現的豐富的WEB應用程序的體驗,可以減少開發者很多的工作量,當然了你決定使用HTML5前,一定要對此非常熟悉,要知道HTML5的新標簽的作用。比如定義一塊內容或文章區域可使用section標簽,定義導航條或選項卡可以直接使用nav標簽等等。

3、放棄CSS float屬性

在項目開發過程中可以會遇到內容排列排列顯示的布局(見下圖),假如你遇見這樣的視覺稿,哥建議你放棄float,可以直接使用display:block;

4、利用CSS3邊框背景屬性

這個按鈕有圓角效果,有內發光效果還有高光效果,這樣的按鈕使用CSS3寫是無法寫出來的,當然圓角可以使用CSS3來寫,但高光和內發光卻無法使用CSS3編寫,

這個時候你不妨使用-webkit-border-image來定義這個按鈕的樣式。

-webkit-border-image就個很復雜的樣式屬性。

5、塊級化a標簽

請保證將每條數據都放在一個a標簽中,為何這樣做?因為在觸控手機上,為提升用戶體驗,盡可能的保證用戶的可點擊區域較大。

6、自適應布局模式

在編寫CSS時,我不建議前端工程師把容器(不管是外層容器還是內層)的寬度定死。為達到適配各種手持設備,我建議前端工程師使用自適應布局模式(支付寶採用了自適應布局模式),因為這樣做可以讓你的頁面在ipad、itouch、ipod、iphone、android、web safarik、chrome都能夠正常的顯示,你無需再次考慮設備的解析度。7、學會使用webkit-box

上一節,我們說過自適應布局模式,有些同學可能會問:如何在移動設備上做到完全自適應呢?很感謝webkit為display屬性提供了一個webkit-box的值,它可以幫助前端工程師做到盒子模型靈活控制。

8、如何去除Android平台中對郵箱地址的識別

看過iOS webapp API的同學都知道iOS提供了一個meta標簽:用於禁用iOS對頁面中電話號碼的自動識別。在iOS中是不自動識別郵件地址的,但在Android平台,它會自動檢測郵件地址,當用戶touch到這個郵件地址時,Android會彈出一個框提示用戶發送郵件,如果你不想Android自動識別頁面中的郵件地址,你不妨加上這樣一句meta標簽在head中

1
<meta content="email=no" name="format-detection" />


9、如何去除iOS和Android中的輸入URL的控制項條

你的老闆或者PD或者交互設計師可能會要求你:能否讓我們的webapp更加像nativeapp,我不想讓用戶看見那個輸入url的控制項條?

答案是可以做到的。我們可以利用一句簡單的javascript代碼來實現這個效果

1
setTimeout(scrollTo,0,0,0);


請注意,這句代碼必須放在window.onload里才能夠正常的工作,而且你的當前文檔的內容高度必須是高於窗口的高度時,這句代碼才能有效的執行。

10、如何禁止用戶旋轉設備

我曾經也想禁止用戶旋轉設備,也想實現像某些客戶端那樣:只能在肖像模式或景觀模式下才能正常運行。但現在我可以很負責任的告訴你:別想了!在移動版的webkit中做不到!

至少Apple webapp API已經說到了:我們為了讓用戶在safari中正常的瀏覽網頁,我們必須保證用戶的設備處於任何一個方位時,safari都能夠正常的顯示網頁內容(也就是自適應),所以我們禁止開發者阻止瀏覽器的orientationchange事件,看來蘋果公司的出發點是正確的,蘋果確實不是一般的蘋果。

iOS已經禁止開發者阻止orientationchange事件,那Android呢?對不起,我沒有找到任何資料說Android禁止開發者阻止瀏覽器orientationchange事件,但是在Android平台,確實也是阻止不了的。

11、如何檢測用戶是通過主屏啟動你的webapp

看過Apple webapp API的同學都知道iOS為safari提供了一個將當前頁面添加主屏的功能,按下iphoneipodipod touch底部工具中的小加號,或者ipad頂部左側的小加號,就可以將當前的頁面添加到設備的主屏,在設備的主屏會自動增加一個當前頁面的啟動圖標,點擊該啟動圖標就可以快速、便捷的啟動你的webapp。從主屏啟動的webapp和瀏覽器訪問你的webapp最大的區別是它清除了瀏覽器上方和下方的工具條,這樣你的webapp就更加像是nativeapp了,還有一個區別是window對像中的navigator子對象的一個standalone屬性。iOS中瀏覽器直接訪問站點時,navigator.standalone為false,從主屏啟動webapp時,navigator.standalone為true, 我們可以通過navigator.standalone這個屬性獲知用戶當前是否是從主屏訪問我們的webapp的。

在Android中從來沒有添加到主屏這回事!

12、如何關閉iOS中鍵盤自動大寫

我們知道在iOS中,當虛擬鍵盤彈出時,默認情況下鍵盤是開啟首字母大寫的功能的,根據某些業務場景,可能我們需要關閉這個功能,移動版本webkit為input元素提供了autocapitalize屬性,通過指定autocapitalize=」off」來關閉鍵盤默認首字母大寫。13、iOS中如何徹底禁止用戶在新窗口打開頁面

有時我們可能需要禁止用戶在新窗口打開頁面,我們可以使用a標簽的target=」_self「來指定用戶在新窗口打開,或者target屬性保持空,但是你會發現iOS的用戶在這個鏈接的上方長按3秒鍾後,iOS會彈出一個列表按鈕,用戶通過這些按鈕仍然可以在新窗口打開頁面,這樣的話,開發者指定的target屬性就失效了,但是可以通過指定當前元素的-webkit-touch-callout樣式屬性為none來禁止iOS彈出這些按鈕。這個技巧僅適用iOS對於Android平台則無效。

14、iOS中如何禁止用戶保存圖片\復制圖片

我們在第13條技巧中提到元素的-webkit-touch-callout屬性,同樣為一個img標簽指定-webkit-touch-callout為none也會禁止設備彈出列表按鈕,這樣用戶就無法保存\復制你的圖片了。

15、iOS中如何禁止用戶選中文字

我們通過指定文字標簽的-webkit-user-select屬性為none便可以禁止iOS用戶選中文字。

16、iOS中如何獲取滾動條的值

桌面瀏覽器中想要獲取滾動條的值是通過document.scrollTop和document.scrollLeft得到的,但在iOS中你會發現這兩個屬性是未定義的,為什麼呢?因為在iOS中沒有滾動條的概念,在Android中通過這兩個屬性可以正常獲取到滾動條的值,那麼在iOS中我們該如何獲取滾動條的值呢?

通過window.scrollY和window.scrollX我們可以得到當前窗口的y軸和x軸滾動條的值。

17、如何解決盒子邊框溢出

當你指定了一個塊級元素時,並且為其定義了邊框,設置了其寬度為100%。在移動設備開發過程中我們通常會對文本框定義為寬度100%,將其定義為塊級元素以實現全屏自適應的樣式,但此時你會發現,該元素的邊框(左右)各1個像素會溢了文檔,導致出現橫向滾動條,為解決這一問題,我們可以為其添加一個特殊的樣式-webkit-box-sizing:border-box;用來指定該盒子的大小包括邊框的寬度。

18、如何解決Android 2.0以下平台中圓角的問題

如果大家夠細心的話,在做wap站點開發時,大家應該會發現android 2.0以下的平台中問題特別的多,比如說邊框圓角這個問題吧。

在對一個元素定義圓角時,為完全兼容android 2.0以下的平台,我們必須要按照以下技巧來定義邊框圓角:

1\-webkit這個前綴必須要加上(在iOS中,你可以不加,但android中一定要加);

2\如果對針對邊框做樣式定義,比如border:1px solid #000;那麼-webkit-border-radius這屬性必須要出現在border屬性後。

3\假如我們有這樣的視覺元素,左上角和右上角是圓角時,我們必須要先定義全局的(4個角的圓角值)-webkit-border-radius:5px;然後再依次的覆蓋左下角和右下角,-webkit-border-bottom-left-radius:0;-webkit-border-bottom-right-border:0;否則在android 2.0以下的平台中將全部顯示直角,還有記住!-webkit這個前綴一定要加上!

19、如何解決android平台中頁面無法自適應

雖然你的html和css都是完全自適應的,但有一天如果你發現你的頁面在android中顯示的並不是自適應的時候,首先請你確認你的head標簽中是否包含以下meta標簽:

1
<meta name="viewport" content="width=device-width,initial-scale=1.0,maximum-scale=1.0,user-scalable=0;" />


如果有的話,那請你再仔細的看清楚有沒有這個屬性的值width=device-width,如果沒有請立即加上吧!

20、如何解決iOS 4.3版本中safari對頁面中5位數字的自動識別和自動添加樣式

新的iOS系統也就是4.3版本,升級後對safari造成了一個bug:即使你添加了如下的meta標簽,safari仍然會對頁面中的5位連續的數字進行自動識別,並且將其重新渲染樣式,也就是說你的css對該標簽是無效的。

1
<meta name="format-detection" content="telphone=no" />


我們可以用一個比較齷齪的辦法來解決。比如說支付寶wap站點中顯示金額的標簽,我們都做了如下改寫:

1
<button class="t-balance"style="background:none;padding:0;border:0;">95009.00</button>元

㈧ html5能取代android和ios應用程序嗎

大量新生移動設備的興起,改變了互聯網的未來。在技術的發展上,HTML5會取代App應用嗎?或者說能夠在多大程度上取代呢?在HTML5規范中,已經加入了相機、磁力羅盤、GPS信息的支持。很多新興瀏覽器也已經開始支持這些新特性。能否用一個統一的HTML5來替代android和ios並行開發的雙重成本呢?以下譯自Michael Mahemoff的一篇文章,詳細分析了HTML5能否取代Android和iOS應用程序。


介紹


移動應用程序(App)和HTML5都是目前最火的技術,二者之間也有不少重疊之處。在移動設備瀏覽器里運行的html5的web頁面,也可以重新打包成不同平台上運行的app。目前很多瀏覽器都有很好的跨平台支持,(譯註:firefox居然可以在android中使用和windows下同樣的瀏覽器內核),HTML5的web方案,對開發者來說更為方便。完成一次,即可多平台使用。但這確實可行嗎?仍然有許多必要原因,使得開發者選擇了app開發。很明顯,很多人已經在這么做了。本文將詳細分析兩種方案的優劣。


功能豐富


正方:App里可以開發出更豐富的功能


我們把移動功能分成兩類。程序本身和程序與系統的結合。比如android里,加入widget圖標或者通知提醒之類的。App對這兩者都沒問題。不用多說,這是肯定的。


反方:APP是挺強,但Web也正在迎頭跟進


確實很多原生app實現的功能是HTML5望塵莫及的。不管你的web做的再牛,如果停留在一個沒有攝像頭支持的沙盒中,很多場合還是玩不轉。幸運的是,現在沒有這樣的沙盒限制了。如果你需要你的web照相片,可以做一個負責照像的app,再把你的web打包進這個應用裡面。開源的PhoneGap框架是這么乾的。這樣widget,手機提醒也都沒問題了。


但這種混合開發的問題在於,增加了復雜性,而且不象傳統web那樣可以直接在瀏覽器里運行。這個問題短時間內恐怕沒轍。好在現在網路標准在不斷的高速擴充,先進的瀏覽器也在一直跟進。Android 3.1已經支持camera了。iOS瀏覽器也支持WebSocket和設備方向檢測了。


總得來說,移動設備在發展,而web也同樣在快速變化。桌面瀏覽器本身,有5家主要瀏覽器開發商在改進現有標准,豐富新的功能。所以原生App在快速前進,同時,web也在縮小差距。


運行效率


正方:原生APP速度更快


原生APP沒有瓶頸,而且可以直接調用GPU加速、使用多線程。


反方:現如今Web已經快多了,而且多數應用也用不著那麼快。


這說法有點落伍了。Chrome發布之時帶來的Javascript V8,給Web速度帶來的飛躍。而現在,計算速度變得更快了:


圖片處理引擎已經使用web加速。現在硬體加速也已經開始應用了。

原生APP使用強壯的程序語言(Java, Objective C, C++)。適合寫復雜程序,經過歷史驗證,API豐富。在桌面環境可以方便的用模擬器測試。而Web程序的runtimes和亂七八糟的各路瀏覽器讓人頭大。

反方:一般都是Web更簡單,特別是需要兼容不同設備的時候。

Web最初的功能只限於文檔展示,而不是程序應用,貌似最近倆星期才有了JS。但有了JS後,web的世界馬上就不一樣了。更何況web不只是靜止的,HTML5,CSS3,EcmaScript Harmony(誰知道這是什麼?)都給開發者極大幫助。你是喜歡C++,java, JavaScript,那你的個人愛好,也是基於你已經攢下的代碼。但是現在沒人能否認JavaScript也和前者站在同一擂台上。

瀏覽器/runtime的互不兼容(碎片),反過來看做APP也是一樣。用Java寫了Android app,然後又要面對iOS的Objective C。如果能寫一個程序,馬上能在Android和iOS上運行,多省事啊。這咱還沒提WebOS, BlackBerry,Windows Mobile呢。當然,這是理論上的。要是想讓程序在每個平台都跑得很漂亮,得做不少調試和妥協。這對很多原生APP也是一樣的。不同OS版本,不同的設備。。。

所謂的Web碎片化,一直都是如此。但好消息是現在已經有很多不錯的解決辦法。Modernizr庫,用得好的話,可以幫你兼容一大批主流設備,不管是啥系統,哪個牌子的。看看我們2011年的Google IO演示。

用戶體驗

正方:原生APP更切合原有平台

操作感受的定義之一,就是用戶希望在你的程序里,用與系統連貫統一的方式來操作。不同的平台,都有一些約定俗成的習慣。比如長按按鈕會有啥反應。你不能指望用一套統一的HTML5 App去滿足所有用戶。

此外,整個平台的操作感受都由用平台自有的軟體庫協調。直接調用平台工具包就能直接免費獲得完整支持。

反方:我們Web有自己的傳統,你要特想做原有平台那種感覺的web,也一樣能做出來

前面說了,Web開發的方式,是先做一個大體適合所有平台的版本,然後再針對不同平台不斷改進。當這些改進主要是針對功能時,你可以選擇幾個你最關心的平台做優化。類似於瀏覽器檢測。技術論壇里的悲催技術員們,經常抱怨這事。太多不同的瀏覽器版本了。不過如果你優先關注兩三種主流平台,是值得為他們多花點時間做做優化。

web本來就有自己的操作感受。我們也可以說,不同的默認瀏覽器以及運行環境造就了獨特的"Web感受"。從更廣的角度看,這本身就是一種用戶公認的方式。此外,還有很多成功的案例並不遵循移動設備的原生操作習慣,人家也成功了。想想你最喜歡的手機游戲的界面?很多更傳統的app也是一樣,比如Twitter客戶端。

傳播途徑

正方:原生應用更容易接觸客戶

象Google Play和Apple Store這樣的app發布機制這幾年勢不可擋,推動了整個移動行業。每個程序員都能在市場里發布自己的應用。用戶都擠在市場里瀏覽,搜索,接受推薦。不僅如此,只要你的程序夠好,現有用戶的打分會幫助你說服更多新的客戶。

反方:其實web才容易接觸到客戶

通過web找到內容,這是經過論證的可靠途徑。利用URL,每一項發布的內容都有一個獨立的地址,包括在網站上發布的應用程序。搜索引擎幫助發現內容,其他網站提供鏈接,還有一些類似應用市場的分類網站。用戶還可以郵件、簡訊、在社交網站分享你的鏈接。你的應用鏈接可以直接在不同設備上直接打開。

web上還沒有一個統一的評分系統,但這個情況也在發生改變。往下看。。。

收費

正方:App收費:應天意,順民生

「六歲孩子午飯時做app,$3一個,賣出幾百萬」。最近常聽看到這樣的新聞。各種大小廠商也跟著蜂擁而至,等著圈錢。應用商點幫開發商直接收費。最簡單的辦法,一次性收費。也有在app里再另行收費或者做訂閱收費的,這幫助開發商贏得長期穩定的回報。

此外,傳統網站的廣告、贊助,在app里也同樣適用。

反方:網站賺錢,從來都不是問題。現在機會還越來越多

Web能成為現在社會的推動力,有能力用多種方式取得回報,這是基本條件。雖然使用付費並不普遍。但SaaS的模式已經相當普及了。成功案例包括Google Apps,37Signals的系列產品,各類郵件的收費版。另外,直接收費並不是web應用的唯一模式。廣告、會員鏈接,贊助,其他產品服務的交叉推廣都是可選的模式。

看著能在應用市場里直接賺錢而眼紅的Web開發商們,你們不能直接把你的URL發進市場,但是做一個瀏覽web的app的殼子來連到自己的web上怎麼樣?現在市場中如果不說數以千計,至少也有上百的app這么幹了。有些包裝的好的,你甚至察覺不到他是一個web程序。

以後應用市場會直接支持web程序嗎?這個現在還不好說,但去年Google已經建了個Chrome web store。雖然還只能從桌面電腦放問,但這已經挑起了瀏覽器廠商的興趣。現在還只是個初步概念,但看起來挺有前途。

結論

現在還看不出完勝的一方。有些應用適合做app,有一些適合用html5。目前的情況,原生APP肯定是一個很重要的選擇。上面提到的混合式開發,可能是一個不錯的妥協方案。能用web的時候用app調用web。web實現不了的功能用app開發。

如果你選擇web方式,要在web標准和不斷的改進上用心。web技術本身的優點就是能兼容大批不同的操作系統和設備。消極的看,你也可以這是碎片,但web就是一切通吃。

㈨ 蘋果,安卓手機html5的區別

1.android是google公司做的手機系統,ios是蘋果公司做的手機系統。
2.android手機系統的手機很多廠家公司在做如HTC,三星,中興等等。ios只有蘋果公司的手機和數碼產品才會是ios的手機系統。
3.android手機系統和ios軟體開發工具不同,平台不同。軟體也不用,所以兩個兩個平台的軟體不能通用,但是好的軟體都會有兩個系統版本,如QQ 有ios版也就是iphoneQQ,和android版QQ。
4.兩個系統都是現在智能手機上最火的系統,也是最有發展的系統。
5.安卓手機完全開源,任何軟體開發商或者個人都能開發安卓的軟體。蘋果ios完全封源開發 。
正是由於開源和各個品牌手機硬體差異極大,導致安卓手機的系統體驗各有差異,軟體兼容性也不如ios。所以安卓手機總體的系統體驗,流暢度,軟體兼容性,明顯不如系統和軟體開發都對硬體有極其針對性的ios,軟體數量也不如ios,游戲數量也不如ios,而且很多高質量軟體,特別是游戲都是先出現在ios上。不過常用的大公司的軟體,比如二樓說的QQ,不會出現上述問題。
. 安卓系統的軟體幾乎都是免費,而ios的軟體和游戲,好的基本都付費,當然蘋果可以越獄,越獄後也是免費使用。
安卓手機支持FLASH,可以玩QQ農場,不過需要高端安卓機2.2以上系統才支持。ios不支持FLASH,只支持html5,所以蘋果上不能看FLASH,甚至蘋果有時候連html5的視頻兼容性也不好。
安卓手機使用起來上手快,下載歌曲電影等直接放到手機里就能看,ios則需要同步到手機中,不過越獄後也能直接放到手機里看。

熱點內容
安卓116是什麼意思 發布:2025-05-16 07:44:59 瀏覽:590
配置低而動力好的車怎麼選 發布:2025-05-16 07:44:15 瀏覽:899
如何退出登錄的伺服器界面 發布:2025-05-16 07:41:58 瀏覽:69
機斗勇者2勇者證密碼多少 發布:2025-05-16 07:40:18 瀏覽:47
sql字元串包含字元串 發布:2025-05-16 07:37:29 瀏覽:994
java製作教程視頻 發布:2025-05-16 07:35:55 瀏覽:250
搞笑解壓舞 發布:2025-05-16 07:25:44 瀏覽:265
c封裝源碼 發布:2025-05-16 07:18:34 瀏覽:795
百度java下載 發布:2025-05-16 07:13:25 瀏覽:186
如何用c語言解方程 發布:2025-05-16 07:12:51 瀏覽:791