溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Android中混合移動App開發(fā)的方法是什么

發(fā)布時間:2022-01-12 11:06:26 來源:億速云 閱讀:108 作者:iii 欄目:移動開發(fā)

本文小編為大家詳細(xì)介紹“Android中混合移動App開發(fā)的方法是什么”,內(nèi)容詳細(xì),步驟清晰,細(xì)節(jié)處理妥當(dāng),希望這篇“Android中混合移動App開發(fā)的方法是什么”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學(xué)習(xí)新知識吧。

1-什么是混合移動App開發(fā)
  1. 蘋果上的軟件是如何開發(fā)出來的:使用的是 OC、或者使用Swift這門語言

  2. 安卓平臺上的軟件又是如何開發(fā)出來的:使用安卓相關(guān)的語言開發(fā)的,Java,安卓的控件進(jìn)行開發(fā)

  3. 蘋果和安卓平臺上共有的軟件是如何開發(fā)出來的:騰訊招兩套開發(fā)人員【開發(fā)組】,手機(jī)京東

  4. 前端移動 App(Application)開發(fā)技術(shù),去開發(fā)手機(jī)端的應(yīng)用程序;

  5. 前端的混合移動App開發(fā)技術(shù),并沒有使用 蘋果 或 安卓 官方推薦的 開發(fā)平臺和開發(fā)方式,而是拋棄了 官方提供的方式,使用 前端的獨(dú)有的技術(shù)進(jìn)行移動App開發(fā)體驗;

什么是移動App開發(fā):通俗的理解,就是把開發(fā)Web網(wǎng)站的技
(HTML+CSS+JS),通過某種方式,移植到移動App開發(fā)上進(jìn)行使用,這種利用Web開發(fā)技術(shù)進(jìn)行移動端開發(fā)體驗的方式,叫做混合移動App開發(fā)!

關(guān)于移動App開發(fā),需要知道的幾個概念:
  • 原生開發(fā):它的英文單詞是(NativeApp),指的就是使用 IOS、Android 官方提供的工具、開發(fā)平臺、配套語言進(jìn)行 手機(jī)App開發(fā)的方式;

  • 混合開發(fā):(HybirdApp)就是使用前端已有的技術(shù),HTML + CSS + JS ,然后再搭配一些相關(guān)的打包編譯技術(shù),就能夠開發(fā)出一個手機(jī)App,安裝到手機(jī)中進(jìn)行使用;

什么是App:App是(Application的縮寫),意思是:可安裝的應(yīng)用程序;

App的分類:

按照平臺來劃分:

  • PC端:瀏覽器、代碼編輯器、PC端的游戲、聽歌的、看視頻的、聊天的

  • 移動端:手機(jī)QQ、手機(jī)微信、手機(jī)愛奇藝、亡者農(nóng)藥
    按照功能來劃分:

  • 游戲:憤怒的小雞仔、植物大戰(zhàn)僵尸、亡者農(nóng)藥…LOL

  • 應(yīng)用:非游戲類的軟件,支付寶、陌陌、美團(tuán)外賣、

App和Web的區(qū)別:

APP概念:App是(Application的縮寫),意思是:可安裝的應(yīng)用程序;

  • 優(yōu)點:流暢、穩(wěn)定、基本上一些App都可以脫網(wǎng)運(yùn)行,用戶體驗好;

  • 缺點:不能跨平臺

Web概念:特指那些基于瀏覽器的web網(wǎng)站(本質(zhì):就是網(wǎng)頁)

  • 優(yōu)點:可以跨平臺(瀏覽器天生就是跨平臺的)

  • 缺點:沒有App流暢、不穩(wěn)定,受限于網(wǎng)速和網(wǎng)絡(luò)

倆種APP開發(fā)類型的本質(zhì)區(qū)別:

Android中混合移動App開發(fā)的方法是什么

2-為什么要學(xué)混合App開發(fā)
從程序員的角度分析:
  • 掙錢多(別人不會的你會,別人會的,你精通)

  • 對于找工作來說:(React Native)市場需求量大,好找工作,提高我們的行業(yè)競爭力

  • 能接觸到前端流行的技術(shù)和框架(各大公司基本都再用React),注意:再React中我們?nèi)慷际褂肊S6語法(class)

  • 前端是一個永恒的行業(yè)???(只要世界上還有瀏覽器的存在,必然需要前端,只不過,隨著時間的推移,技術(shù)更新?lián)Q代,可能我們對新技術(shù)的要求會越來高)

  • 屌絲的崛起之路:只能做頁面 -> Ajax前后臺數(shù)據(jù)交互 -> Jquery、Bootstrap -> webApp -> 三大框架 -> 可以做手機(jī)混合App/桌面應(yīng)用 -> 可以做手機(jī)原生App -> 將來或許可以發(fā)射火箭發(fā)射衛(wèi)星發(fā)射導(dǎo),彈 -> 終極目標(biāo):統(tǒng)一全宇宙
    (搞前端App開發(fā))能購置一批牛逼的設(shè)備【蘋果筆記本、IOS測試機(jī)、安卓手機(jī)(三星的、華為、小米)】

從企業(yè)的角度分析:(選擇合適自身的移動App開發(fā)方式)【重點】
  • 節(jié)省開發(fā)成本

  • 從工資上:盡最大的可能,壓榨員工的剩余勞動力

  • 從時間上:因為 原生的安卓和IOS開發(fā),它們的開發(fā)效率并不是很高,因為原生的代碼復(fù)雜度比較高,因此原生的開發(fā)周期比較慢;如果采用移動App開發(fā),那么,我們的開發(fā)周期會很短;因為 HTML + CSS + JS 足夠簡單;(對于前端開發(fā)APP來說,有兩種方式,其中,比較早的一種,也是比較簡單的一種,就是 先開發(fā)出一個網(wǎng)站, 然后再把網(wǎng)站運(yùn)行一行打包的命令,就能得到一個 APP了)

1. 市面上常見的App開發(fā)方式

WebApp:****基于瀏覽器實現(xiàn)的,有特定功能的網(wǎng)站,稱作WebApp

  • 例如:百度腦圖、 https://m.jd.com/、 https://m.taobao.com/#index

  • 優(yōu)點:跨平臺

  • 缺點:依賴網(wǎng)絡(luò),有白屏效果,相對來說,用戶體驗差;不能調(diào)用硬件底層得設(shè)備,比如攝像頭;

NativeApp:****用android和Object-C等原生語言開發(fā)的應(yīng)用

  • 優(yōu)點:體驗好;用戶使用起來很流暢;非常適合做游戲【性能高】;可以直接調(diào)用硬件底層的API;

  • 缺點:不能跨平臺

HybirdApp:****利用前端所學(xué)的知識去開發(fā)移動端App,兼具2者的優(yōu)勢

  • 優(yōu)點:能夠跨平臺;體驗會好一些;也能夠調(diào)用硬件底層的API

  • 缺點:相對于原生體驗稍微弱一丟丟;不適合做游戲;適合做非游戲類型的手機(jī)App;
    應(yīng)用場景:

注意:使用 Java 或者 IOS 寫出來的代碼和程序,在最終運(yùn)行的時候,普通的文本代碼,都會被編譯為 原生的機(jī)器碼去運(yùn)行,并不像 JS 這樣,解析執(zhí)行,Java代碼是 編譯執(zhí)行的;

三種開發(fā)方式的原理和對比

Android中混合移動App開發(fā)的方法是什么

Android中混合移動App開發(fā)的方法是什么

3-企業(yè)如何選擇合適自己的App開發(fā)方式
  1. 如果這個企業(yè)中,曾經(jīng)使用原生技術(shù)開發(fā)過一些APP,那么在維護(hù)的時候,必然需要使用原生技術(shù)來維護(hù)

  2. 如果企業(yè)中,需要做一些游戲級別的應(yīng)用,那么推薦使用原生,因為原生運(yùn)行效率高,對耗電量處理的很好;

  3. 如果企業(yè)做一些應(yīng)用級別的非游戲軟件,比如 淘寶、京東、美團(tuán),就可以使用 混合APP了;

  4. 在企業(yè)中,最主要的是好的點子,如果有了一個好的項目立案,那么最好要立即把這個項目做出來;這時候,使用混合App非常合適,因為開發(fā)周期很短,能快速上線,搶先占領(lǐng)市場;【褲衩開發(fā)】

4-企業(yè)中項目開發(fā)流程
  • 需求調(diào)研:產(chǎn)品定位、受眾群體、市場需求、開發(fā)價值;【產(chǎn)出物:需求文檔】

  • 產(chǎn)品設(shè)計:功能模塊、流程邏輯;【產(chǎn)出物:設(shè)計文檔,交互稿】,確定項目的基本功能;

  • 項目開發(fā):項目架構(gòu)、美工、前端、后臺、測試【產(chǎn)品的把控】要理解前后端分離的概念

  • 運(yùn)營維護(hù):上線試運(yùn)行、調(diào)Bug、微調(diào)功能模塊、產(chǎn)品迭代

根據(jù)需求搞設(shè)計,根據(jù)設(shè)計做開發(fā)

5-企業(yè)技術(shù)選型 - 幾大主流技術(shù)之間的關(guān)系
1. Angular.js 和 Ionic
  • Angular1官網(wǎng)

  • Angular2官網(wǎng)

  • Ionic 中文網(wǎng)

  • Ionic 英文官網(wǎng)

2. Vue.js 和 Weex
  • Vue.js官網(wǎng)

  • Weex文檔

  • Weex - github地址 - 新

  • Weex - github地址 - 舊

3. React.js 和 React-Native
  • React.js英文官網(wǎng)

  • ReactNative中文網(wǎng)

  • ReactNative英文網(wǎng)

Angular, Vue, React 這三個都是前端框架,我們在進(jìn)行混合App開發(fā)的時候,只是用到了這三個框架的【基礎(chǔ)語法】而已;Ionic, Weex, ReactNatvie 這三個都是打包工具(提供了相關(guān)的命令行,只要運(yùn)行指定的命令,就能夠把項目打包成一個手機(jī)App出來),能夠把我們開發(fā)出來的應(yīng)用,最終打包成一個可安裝的手機(jī)端程序安裝包;同時,這三個東西,也提供了好用的一些小組件,方便我們?nèi)?gòu)建移動App的用戶界面;

6-前端混合App開發(fā)框架
  • Html5+、ReactNative、Weex、Ionic

  • 認(rèn)識HTML5+
    h6+是一個產(chǎn)業(yè)聯(lián)盟,它有一些互聯(lián)網(wǎng)成員,專門在中國推廣H5

  • HBuilder官網(wǎng)

7-開發(fā)框架之間的區(qū)別
  1. Html5+ 和 Ionic

  2. ReactNative 和 Weex

Android中混合移動App開發(fā)的方法是什么

8-使用HBuilder生成安卓應(yīng)用(在線)

Hbuilder這個工具,是一個在線打包工具,使用很方便,不需要在本地配置開發(fā)環(huán)境;直接將做好的網(wǎng)站,通過一些簡單的操作,就能在線打包為一個App出來;在項目上右鍵 -> 發(fā)行 -> 發(fā)行為原生安裝包

  • 好處:本地不用配置開發(fā)環(huán)境;操作方便,對于程序員來說不關(guān)心打包的過程,打包過程對于我們來說是透明的;

  • 缺點:程序員很少能干預(yù)打包的過程;源代碼被提交到了云端的服務(wù)器,存在項目核心代碼被泄露的風(fēng)險;

9-環(huán)境變量的使用

作用:將需要全局使用的工具或者應(yīng)用程序,配置到Path環(huán)境變量中,可以很方便的通過命令行的形式,在任何想要運(yùn)行這些應(yīng)用程序的地方,運(yùn)行它們;

10-移動App開發(fā)環(huán)境配置【重點】
10.1-安裝最新版本的java jdk
  1. 修改環(huán)境變量,新增JAVA_HOME的系統(tǒng)環(huán)境變量,值為C:\Program Files (x86)\Java\jdk1.8.0_112,也就是安裝JDK的根目錄

  2. 修改系統(tǒng)環(huán)境變量Path,在Path之后新增%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;

  3. 新建系統(tǒng)環(huán)境變量CLASSPATH,值為.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;

  4. 保存所有的系統(tǒng)環(huán)境變量,同時退出系統(tǒng)環(huán)境變量配置窗口,然后運(yùn)行cmd命令行工具,輸入javac,如果能出現(xiàn)javac的命令選項,就表示配置成功!

10.2-安裝Node.js環(huán)境

注意:需要安裝最新的長期穩(wěn)定版本,不要實驗版本;安裝完畢之后的node.js會自動配置到全局系統(tǒng)環(huán)境變量中安裝完畢后,可以輸入node -v查看node版本號;

10.3-安裝C++環(huán)境

大多數(shù)情況下操作系統(tǒng)自帶C++環(huán)境,不需要手動安裝C++環(huán)境;如果運(yùn)行報錯,則需要手動安裝visual studio中的C++環(huán)境;

10.4-安裝Git環(huán)境

Git安裝完畢后,會自動配置到系統(tǒng)環(huán)境變量中;可以通過運(yùn)行g(shù)it --version來檢查是否正確安裝和配置了Git的環(huán)境變量;

10.5-安裝Python環(huán)境
  1. 注意:安裝Python時候,只能安裝2.×的版本,注意勾選安裝界面上的Add Python to path,這樣才能自動將Python安裝到系統(tǒng)環(huán)境變量中;

  2. 安裝完畢之后,可以在命令行中運(yùn)行python,檢查是否成功安裝了python。

10.6-配置安卓環(huán)境
  1. 安裝installer_r24.3.4-windows.exe,最好手動選擇安裝到C盤下的android目錄

  2. 打開安裝的目錄,將android-25、android-23(react-native必須依賴這個)解壓后,放到platforms文件夾下

  3. 解壓platform-tools,放到platform-tools文件夾下

  4. 【這一步直接忽略即可!】tools文件夾不解壓覆蓋也行;解壓tools,放到安裝根目錄中

  5. 解壓build-tools_r23.0.1-windows.zip(react-native必須依賴這個)、build-tools_r23.0.2-windows.zip(weex必須依賴這個)和build-tools_r23.0.3-windows.zip,并將解壓出來的文件夾,分別改名為版本號23.0.1、23.0.2和23.0.3;在安裝目錄中新建文件夾build-tools,并將改名為版本號之后的文件夾,放到新創(chuàng)建出來的build-tools文件夾下

  6. 在安裝目錄中,新建extras文件夾,在extras文件夾下新建android文件夾;解壓m2responsitory文件夾和support文件夾,放到新建的extras -> android文件夾下

  7. 配置安裝環(huán)境變量:在系統(tǒng)環(huán)境變量中新建ANDROID_HOME,值為android SDK Manager的安裝路徑C:\Users\liulongbin\AppData\Local\Android\android-sdk,緊接在Path中新增;%ANDROID_HOME%\tools;%ANDROID_HOME%\platform-tools;

11-ReactNative快速打包

安裝完node后建議設(shè)置npm鏡像以加速后面的過程(或使用科學(xué)上網(wǎng)工具)。注意:不要使用cnpm!cnpm安裝的模塊路徑比較奇怪,packager不能正常識別!

  • `npm config set registry  https://registry

讀到這里,這篇“Android中混合移動App開發(fā)的方法是什么”文章已經(jīng)介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領(lǐng)會,如果想了解更多相關(guān)內(nèi)容的文章,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI