Android應(yīng)用開發(fā)的框架步驟:

站在用戶的角度思考問題,與客戶深入溝通,找到祥云網(wǎng)站設(shè)計(jì)與祥云網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶體驗(yàn)好的作品,建站類型包括:成都做網(wǎng)站、成都網(wǎng)站設(shè)計(jì)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、空間域名、虛擬主機(jī)、企業(yè)郵箱。業(yè)務(wù)覆蓋祥云地區(qū)。
1. 項(xiàng)目工程搭建
在搭建工程結(jié)構(gòu)的時(shí)候可以盡量抽取一些共用的東西,例如,數(shù)據(jù)庫(kù)操作、base、task、事件觀察者、通用的工具類、UI公共組件等等,這些東西應(yīng)該表現(xiàn)在代碼結(jié)構(gòu)中。
2. 根據(jù)需求,可能需要單獨(dú)的抽取一些核心的包類。
3.?AppContext 的處理
在一個(gè)應(yīng)用中只會(huì)存在一個(gè)實(shí)例,所以一般用來存儲(chǔ)一些全局的變量和一些只需要處理一次的數(shù)據(jù)。
4.?Base的處理
對(duì)BaseActivity的處理好壞一定程度上會(huì)影響項(xiàng)目的代碼可讀性,在Base里面做一些規(guī)范化處理將會(huì)大大減少代碼的書寫量和提高可讀性。
5.?數(shù)據(jù)庫(kù)的處理
在處理數(shù)據(jù)庫(kù)的時(shí)候采用ContentProvider的方式。
6.?圖片的處理
對(duì)圖片處理的軟件很多,只要把基本的一些開源框架原理搞清楚就可以了。
注意:在android開發(fā)項(xiàng)目中,首先要考慮的是這個(gè)項(xiàng)目或者說這個(gè)產(chǎn)品的核心功能。比如,圖片處理和展示類app,更多考慮對(duì)大量圖片的處理,防止OOM等等。
工具/材料
電腦
android studio
01
從網(wǎng)上下載并安裝Android Studio然后打開它。現(xiàn)在,你準(zhǔn)備好開始你的第一個(gè)Android應(yīng)用程序!
首先是這個(gè)android項(xiàng)目的項(xiàng)目名,在這里進(jìn)行輸入即可
注意,這里我們使用的android studio的版本為2.2
一直下一步,等待一定的時(shí)間,這取決于你機(jī)器的配置,android studio最為谷歌官方唯一指定的android項(xiàng)目開發(fā)ide,具有超高度的功能集合性,同時(shí)后面我們會(huì)看到android studio采用和eclipse不同的編譯方式,即Gradle編譯,以及采用云資源模式(服務(wù)器全在海外,部分功能需要翻墻才能使用,醉了),所以,不要對(duì)其卡慢抱有不滿情緒.
02
選擇對(duì)應(yīng)的android sdk版本,android像ios一樣,也有很多分類版本了,從低到高,還有像android wear(手表), android TV(電視),android auto(車載)等各種版本,選擇你要將這個(gè)項(xiàng)目跑到什么設(shè)備上邊去,以及系統(tǒng)的版本,這里我們選擇android手機(jī)項(xiàng)目,版本可以選擇4.0,目前4.0基本就是最低版本,當(dāng)然微信,qq,支付寶之類的都是一直支持到2.3版本的
03
這里是android項(xiàng)目的布局文件,目前因?yàn)槲覀冞@個(gè)項(xiàng)目只有一個(gè)主窗口,這個(gè)布局文件就是屬于主窗口的,這里記錄的這個(gè)窗口中有哪些控件,以及這些控件的位置和排列模式,像TextView就是一個(gè)文本控件,而RelativeLayout則是布局控件,用于控制控件的布局。
04
這就是穿著中的gradle編譯的編譯配置文件了,里面包含了編譯中的各種配置選項(xiàng),對(duì)于從eclipse中轉(zhuǎn)過來的人來說,要搞懂這里的各種配置可是要費(fèi)不少腦子的哈!
05
這是android項(xiàng)目的清單文件,這里包含了這個(gè)應(yīng)用程序的圖標(biāo)設(shè)置,以及activity等,activity是android四大組件之一,可以直觀理解為我們看到的一個(gè)個(gè)的窗體,凡是需要顯示出來的activity,都需要在這里注冊(cè)寫明
06
這里是窗口的java主類,android的主要編程語言是java語言,當(dāng)然也有支持c++編程的ndk,以及現(xiàn)在很火的前端腳本編寫android項(xiàng)目的方法,這個(gè)類表示主窗口,OnCreat()方法會(huì)在這個(gè)界面被啟動(dòng)的時(shí)候執(zhí)行。
07
點(diǎn)擊這里即可運(yùn)行這個(gè)由系統(tǒng)為我們編寫好android項(xiàng)目了,沒錯(cuò),這已經(jīng)是一個(gè)完成的android項(xiàng)目,只是比較簡(jiǎn)單而已,但主要部件都不少。
08
我們啟動(dòng)的應(yīng)用就是跑在這里的模擬器當(dāng)中的,我們可以創(chuàng)建自己的模擬器,自由的對(duì)模擬器的配置進(jìn)行自定義,包括模擬器的系統(tǒng)版本
09
完美,我們的第一個(gè)應(yīng)用程序已經(jīng)跑起來了,雖然只是顯示了一個(gè)Hello World文本,不過怎們樣都算完成了一個(gè)android應(yīng)用程序,后續(xù)只要對(duì)其進(jìn)行打包簽名,混淆加密后即可發(fā)布到應(yīng)用市場(chǎng)供別人下載使用.
轉(zhuǎn)自:
本文針對(duì)android studio工具下的ndk開發(fā)。
build目錄就是項(xiàng)目模塊構(gòu)建過程和結(jié)果使用到的位置。
項(xiàng)目根目錄下有一個(gè)build目錄。
項(xiàng)目根目錄下各模塊子目錄下各自有一個(gè)build目錄。
build目錄下一般由4個(gè)子目錄組成:
generated由aapt工具根據(jù)資源數(shù)據(jù)自動(dòng)生成的java類
intermediates中間過程
outputs輸出結(jié)果
tmp編譯日志
根目錄下的build目錄,這個(gè)build服務(wù)于整個(gè)項(xiàng)目,在本文中稱其做項(xiàng)目build,以區(qū)分模塊build。
項(xiàng)目build一般只有g(shù)enerated和intermediates兩個(gè)子目錄,用于生成這個(gè)項(xiàng)目的buildTools。
generated目錄會(huì)生成一個(gè)mockable-android-${buildToolsVersion}.jar。
intermediates目錄根據(jù)需要生成dex-cache,這個(gè)目錄下的xml文件配置jar包在編譯過程中如何緩沖使用。
模塊build目錄在make module ${MOD_NAME}后就會(huì)生成4個(gè)子目錄。
我們來看intermediates目錄,中間生成和編譯過程使用到的目錄。
這個(gè)目錄下有這么幾個(gè)比較關(guān)心的子目錄:
binaries? ? ? ? ? ? ? ? ? NDK,生成c++連接庫(kù)
bundles? ? ? ? ? ? ? ? ? 模塊鏈接到的自定義jar包和各abi版本的c++鏈接庫(kù)都捆綁在這里
classes模塊中生成的自定義java類
exploded-aar ? ? ? ? ?由aar包解壓出來的資源,jar包和so鏈接文件等。用于本模塊的鏈接和集成。
jniLibs? ? ? ? ? ? ? ? ? ?在build.grade中你指定的jniLibs目錄整個(gè)拷貝。模塊鏈接到的庫(kù)文件會(huì)被捆到bundles目錄。
objectFiles? ? ? ? ? ? ? NDK,生成c++中間對(duì)象(.o)文件。
transforms? ? ? ? ? ? ? 根據(jù)你當(dāng)前選擇的productFlavor和其包含的abiFilter,從bundles和binaries取出鏈接庫(kù)。
接著就是output目錄:
aar如果模塊是android library
jar ? ? ? ? ? ? ? ? ? ? ? ? 如果模塊是java library
apk ? ? ? ? ? ? ? ? ? ? ? ?如果是Activity應(yīng)用程序
最后就是tmp目錄:
compile$(NDK_Module)$(ABI)$(BUILD_TYPE)$(PRODUCT_FLAVOR)MainCpp ? ? ? ? ? ? ? ndk編譯日志
link$(NDK_Module)$(ABI)$(BUILD_TYPE)$(PRODUCT_FLAVOR)$(LIB_TYPE)? ? ? ? ? ? ? ? ndk鏈接日志
編譯的子目錄由三要素組合而成,分別是
BUILD_TYPE := debug|release
ProductFlavor := 你在gradle文件中創(chuàng)建的flavor
abiFilter :=
逆向深入objc,c++ windows下仿objc動(dòng)畫層UI引擎
網(wǎng)站名稱:android開發(fā)項(xiàng)目,android開發(fā)項(xiàng)目app實(shí)例
當(dāng)前鏈接:http://chinadenli.net/article46/dsiohhg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供云服務(wù)器、域名注冊(cè)、網(wǎng)站收錄、網(wǎng)站策劃、用戶體驗(yàn)、靜態(tài)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
營(yíng)銷型網(wǎng)站建設(shè)知識(shí)