想了解他們之間的區(qū)別,先看一下各自的簡(jiǎn)單定義吧。
創(chuàng)新互聯(lián)公司長(zhǎng)期為近1000家客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對(duì)不同對(duì)象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺(tái),與合作伙伴共同營(yíng)造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為黔江企業(yè)提供專業(yè)的網(wǎng)站建設(shè)、成都做網(wǎng)站,黔江網(wǎng)站改版等技術(shù)服務(wù)。擁有10多年豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開發(fā)。
app:主要是指application(應(yīng)用程序)
HTML是hypertext markup language(超文本標(biāo)記語(yǔ)言)
主要區(qū)別有
1.應(yīng)用環(huán)境:
手機(jī)原生app面前比較流行環(huán)境是Android和IOS兩個(gè)版本。
HTML5主要是在瀏覽器中進(jìn)行運(yùn)行和渲染,其實(shí)瀏覽器是App的一種。
2.相關(guān)編程語(yǔ)言:
移動(dòng)APP的編程語(yǔ)言一般是:c#,Java, c,vb 等...
HTML5的編程語(yǔ)言則是:html5,css3,javascript,php/jsp/asp 等...
3.開發(fā)成本和周期:
移動(dòng)APP相對(duì)來(lái)說(shuō)開發(fā)成本比較高,周期也比較長(zhǎng)。html主要應(yīng)用于前端web開發(fā),開發(fā)制作周期短,費(fèi)用少。
4.兼容性
手機(jī)app在不同的系統(tǒng)中需要開發(fā)不同版本(例如前面所說(shuō)的Android和IOS),而html5可以跨平臺(tái)主要有瀏覽器就可以運(yùn)行。
5.用戶體驗(yàn)。執(zhí)行效率,顯示效果,可以調(diào)用的系統(tǒng)權(quán)限都是不一樣的。
在用戶體驗(yàn)和表現(xiàn)這個(gè)方面 APP提供用戶展示圖形界面和數(shù)據(jù)展現(xiàn)的豐富性方面要比HTML5好。而且調(diào)用的系統(tǒng)權(quán)限APP相對(duì)權(quán)限要高。
總結(jié):html5和app各有自己優(yōu)勢(shì)和不足,需求者應(yīng)該根據(jù)各自的特點(diǎn)來(lái)選擇合適的語(yǔ)言。
首先為了保證能夠打開你的app,你必須要在androidManifest.xml中配置的filter中data的屬性表述。
data
android:pathprefix="/taoge/open" android:scheme="xttblog"/data
androidManifest.xml
代碼如下:
XML/HTML Code
?xml version="1.0" encoding="utf-8"?
manifest xmlns:android=""
package="com.taoge"
android:versionCode="2"
android:versionName="3.24.03"
uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="17" /
application
android:allowBackup="true"
android:configChanges="orientation|screenSize"
android:icon="@drawable/logo"
android:label="@string/app_name"
android:logo="@drawable/logo"
android:sharedUserId="android.uid.system"
android:theme="@android:style/Theme.Light.NoTitleBar"
activity
android:name="xttblog.WelcomeActivity"
android:excludeFromRecents="true"
android:screenOrientation="portrait"
android:theme="@android:style/Theme.Light.NoTitleBar"
intent-filter
action android:name="android.intent.action.MAIN" /
category android:name="android.intent.category.LAUNCHER" /
/intent-filter
intent-filter
action android:name="android.intent.action.VIEW" /
category android:name="android.intent.category.BROWSABLE" /
category android:name="android.intent.category.DEFAULT" /
data android:pathPrefix="/taoge/open"
android:scheme="xttblog" /
/intent-filter
/activity
activity
android:name="xttblog.AntRepairActivity"
android:label="@string/title_activity_ant_repair"
/activity
/application
/manifest
其次,你要在你的網(wǎng)頁(yè)中訪問xttblog://taoge/open??梢允褂玫脑赜泻芏?,如:script,iframe,img等。使用它們的src屬性,訪問xttblog://taoge/open。html5代碼如下:
XML/HTML Code復(fù)制內(nèi)容到剪貼板
!DOCTYPE HTML
html
script
function openapp(){
document.getElementById('xttblog').innerHTML='iframe src="xttblog://taoge/open"/iframe';
}
/script
body
div style="display:none;" id="xttblog"/div
input type="button" value="打開app" onclick="openapp();"
/body
/html
我推薦你去下載一個(gè)HBuilder,里面自帶mui開發(fā)框架和demo示例。
只要你直接新建一個(gè)移動(dòng)APP項(xiàng)目,然后選擇mui模板,根據(jù)示例你可以自己開發(fā)自己的APP;
mui里面的功能很接近安卓、蘋果的功能,滑動(dòng)、重力傳感、測(cè)速等功能mui功能已經(jīng)封裝好了,你只要調(diào)用就行了
APP和HTML5有啥區(qū)別:
1.html5的app比較輕巧,原生態(tài)app如比較正規(guī),html5實(shí)現(xiàn)的功能有限,只能實(shí)現(xiàn)一些輕型的交互場(chǎng)景,而app則可以完美解決。
2.html5雖然可以跨平臺(tái),可是瀏覽器有個(gè)加載速度,對(duì)于用戶體驗(yàn)上說(shuō),有個(gè)加載的等待,就比如你用qq瀏覽器打開百度,和直接使用百度app是兩種體驗(yàn)。瀏覽器打開百度,還得有個(gè)加載,而百度app則duang的出下了輸入框界面。
3.html5的app對(duì)于導(dǎo)航來(lái)說(shuō),目前有個(gè)弊端。而原生態(tài)app則在頁(yè)底固定懸浮著導(dǎo)航菜單。
4.html5 app也有自己的優(yōu)勢(shì),比如有的app頁(yè)面想要分享出來(lái),則采用html5 app。也比如滴滴打車集成在微信里一樣,如果手機(jī)中沒有滴滴打車的app,則直接可以在默認(rèn)瀏覽器上加載出來(lái),進(jìn)行打車。
html5 app在設(shè)計(jì)時(shí)需要注意的一些要點(diǎn):
1)各手機(jī)瀏覽器的兼容測(cè)試
2)底層服務(wù)的調(diào)?。苷{(diào)取,但只有當(dāng)其是核心功能時(shí)才保留 eg:新浪、美團(tuán)等皆去掉了頭像上傳功能)
3)注意離線數(shù)據(jù)存儲(chǔ),減少數(shù)據(jù)請(qǐng)求頻率。
4)考慮保存用戶的哪些數(shù)據(jù):設(shè)置、個(gè)人數(shù)據(jù)、閱讀錨點(diǎn)、跳出頁(yè)面等?!具@點(diǎn)一般說(shuō)的就是導(dǎo)航菜單】
5)避免動(dòng)效與瀏覽器的交互沖突
6)按順序 異步加載
我們口中常說(shuō)的開發(fā)APP都是使用編程語(yǔ)言開發(fā)的APP,有前后端,有代碼。是需要付出大量的時(shí)間和金錢的,還需要人工維護(hù),市場(chǎng)上開發(fā)一個(gè)APP的價(jià)格,根據(jù)功能不同,價(jià)格相差很大,有些模板開發(fā)可能幾千塊就搞定了,有些源碼開發(fā)十幾萬(wàn)。
而網(wǎng)站封裝打包的APP其實(shí)只是給網(wǎng)站套一個(gè)APP的殼子,它本質(zhì)還是網(wǎng)站,這個(gè)封裝出來(lái)的APP本身是沒有后臺(tái)的,只有網(wǎng)站后臺(tái),它可以像普通APP一樣安裝在手機(jī)上,但打開之后是網(wǎng)頁(yè)。
很多不想花精力開發(fā)APP的企業(yè)通常會(huì)選擇使用網(wǎng)站封裝“快速開發(fā)”一個(gè)APP,因?yàn)檫@樣非常簡(jiǎn)單,很多開發(fā)者服務(wù)平臺(tái)在這方面都提供免費(fèi)服務(wù)的,自己操作一分鐘不到就搞定了。
登錄亥著開發(fā)者中心,大家可以用自己的手機(jī)號(hào)注冊(cè)賬號(hào)。
點(diǎn)擊“封裝APP”
輸入自己的網(wǎng)址,選擇需要封裝的系統(tǒng),可以自己做圖標(biāo)和啟動(dòng)圖,也可以選擇平臺(tái)現(xiàn)有的。
根據(jù)需求選擇功能插件,如果不需要可以不選。
這樣就封裝好了
你說(shuō)的這個(gè)主要制作思路是使用響應(yīng)式設(shè)計(jì),結(jié)合html5和css的一些特性制作(主要是css3的媒體檢查,根據(jù)不同視口載入不同樣式),但制作出來(lái)的東西能否被稱為手機(jī)app,這個(gè)還要看功能,如果你制作出來(lái)的東西能完成某些功能或者某種任務(wù),這能被叫做webapp,如果不能就不要叫什么app,最多算是一種手機(jī)展示方式。
至于安卓和ios版本的問題,考慮主要是圖片分辨率的問題,區(qū)別不大。