Android以Java為編程語言,使接口到功能,都有層出不窮的變化,其中Activity等同于J2ME的MIDlet,一個 Activity 類(class)負責創(chuàng)建視窗(window),一個活動中的Activity就是在 foreground(前景)模式,背景運行的程序叫做Service。兩者之間通過由ServiceConnection和AIDL連結(jié),達到復數(shù)程序同時運行的效果。如果運行中的 Activity 全部畫面被其他 Activity 取代時,該 Activity 便被停止(stopped),甚至被系統(tǒng)清除(kill)。
目前創(chuàng)新互聯(lián)公司已為數(shù)千家的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)站空間、網(wǎng)站改版維護、企業(yè)網(wǎng)站設(shè)計、龍山網(wǎng)站維護等服務(wù),公司將堅持客戶導向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
View等同于J2ME的Displayable,程序人員可以通過 View 類與"XML layout"檔將UI放置在視窗上,Android 1.5的版本可以利用 View 打造出所謂的 Widgets,其實Widget只是View的一種,所以可以使用xml來設(shè)計layout,HTC的Android Hero手機即含有大量的widget。至于ViewGroup 是各種layout 的基礎(chǔ)抽象類(abstract class),ViewGroup之內(nèi)還可以有ViewGroup。View的構(gòu)造函數(shù)不需要在Activity中調(diào)用,但是Displayable的是必須的,在Activity 中,要通過findViewById()來從XML 中取得View,Android的View類的顯示很大程度上是從XML中讀取的。View 與事件(event)息息相關(guān),兩者之間通過Listener 結(jié)合在一起,每一個View都可以注冊一個event listener,例如:當View要處理用戶觸碰(touch)的事件時,就要向Android框架注冊View.OnClickListener。另外還有Image等同于J2ME的BitMap。
Android的開發(fā)技術(shù):
1、Activity生命周期
雖然Android中有四大組件,但是不可否認Activity是最常用的。所以熟練掌握Android的生命周期是必須的。其實生命周期就是記住 Activity的那些方法在什么時候被系統(tǒng)調(diào)用,這樣才可以把對應(yīng)的邏輯代碼寫到合適的方法內(nèi)部去。
至于服務(wù)和廣播組件可以稍微緩一下,到實際使用的時候再學習都可以。
2、界面開發(fā)技術(shù)
界面開發(fā)是一種基本的技術(shù),幾乎所有的程序里面都需要用到。在Android開發(fā)中界面開發(fā)分為3種:
1)使用xml文件布局
使用xml首先對于界面進行布局,然后在Activity里面進行引用是最常見的應(yīng)用軟件開發(fā)技術(shù),這種方式使用的最大,需要學習的內(nèi)容也最多。學習時需要熟悉:
a)五種Layout布局
深刻理解五種布局組織控件的方式是一個基本的基礎(chǔ),這樣你才可以在實際的界面中靈活的使用每種布局結(jié)構(gòu),構(gòu)造出需要的界面。
b)常用控件
控件有很多,至少要知道每種控件是做什么的,至于里面的特定參數(shù)和方法可以學要的時候再去查
c)界面美華
系統(tǒng)的控件很多時候無法滿足要求,需要通過添加背景更換圖片等進行美化,要熟悉每種控件如何去美華。
掌握了上面的內(nèi)容,通過布局的嵌套就可以制作出各種界面,如果在熟悉include的使用就可以減少xml的重復,方便后期的修改和維護了。
2)使用代碼動態(tài)創(chuàng)建
有些時候需要動態(tài)的創(chuàng)建一些布局和控件,這個就需要使用LayoutInflater去創(chuàng)建一些動態(tài)的界面了。
3)自己繪制界面
游戲中常用,繼承SurfaceView自己繪制。
3、數(shù)據(jù)存儲技術(shù)
Android中的數(shù)據(jù)存儲方式有3種:
1)SharedPrefereneces存儲
對于簡單的數(shù)據(jù)可以使用該方式存儲,以鍵值對的方式存儲一些基本的數(shù)據(jù)。
2)文件存儲
將數(shù)據(jù)以文件的形式存儲,可以是手機自身的存儲也可以是SD卡,文件的數(shù)據(jù)格式自己定義。
3)SQLite數(shù)據(jù)庫存儲
使用標準SQL語句進行操作,復雜數(shù)據(jù)的首選。
4、網(wǎng)絡(luò)編程
現(xiàn)在的Android程序不需要聯(lián)網(wǎng)的已經(jīng)不多了。所以網(wǎng)絡(luò)編程也是必須的,一般的公司都會封裝有自己的聯(lián)網(wǎng)結(jié)構(gòu),但是基本的聯(lián)網(wǎng)還是要熟悉。
1)HTTP聯(lián)網(wǎng)
使用Http聯(lián)網(wǎng)+Json數(shù)據(jù)格式是現(xiàn)在很多客戶端的首選。
2)Socket聯(lián)網(wǎng)
至于藍牙等連接方式則可以在項目需要的時候?qū)W習。
對于手機的系統(tǒng)功能,如撥打電話、發(fā)送短信、讀取系統(tǒng)參數(shù)等則可以根據(jù)需要在學習,不麻煩的。
其次,手機軟件相關(guān)
Android開發(fā)不同于普通的電腦軟件開發(fā),需要了解手機的操作習慣,知道手機的屏幕不大、內(nèi)存有限,電池有限等,在實際開發(fā)和設(shè)計時盡量考慮。
1、Android Studio 谷歌原生的Android開發(fā)工具,有可視化的界面,xml配置比較方便,但是核心的代碼還是通過Java實現(xiàn),個人認為比eclipse方便,不過上手起來還是有難度的。
2、APIcloud 國內(nèi)的一種云端開發(fā)方式,通過JSP調(diào)用已經(jīng)開發(fā)好的模塊,組成自己想要的功能,最後封裝成apk,上手簡單,模塊化強,比如自己代碼能力不強可以直接調(diào)用別人寫好的開源代碼來實現(xiàn)功能,也是國內(nèi)很多開發(fā)都在用的方式。缺點是,代碼都是別人的,自己只是拿過來拼成一個軟件,在通用性、可擴展性上還是沒有原生強大,但是勝在開發(fā)速度快。
3、Hbuilder 通過Html5語言寫成css樣式表,通過Android的Web service封裝成apk,可視化能力極強,如今H5語言也在廣泛用於各個平臺,而且功能也比較強大,用這個寫成的軟件,在多種平臺都能共用,對Web service的支持也有一定的優(yōu)勢,不過上手也有一定難度,只是遠遠小於原生開發(fā)罷了。
1、Android Studio
Android Studio 是是基于 IntelliJ IDEA 的谷歌開發(fā) Android 應(yīng)用開發(fā)集成開發(fā)環(huán)境 (IDE)。有IntelliJ 的代碼編輯器和開發(fā)者工具。Android Studio擁有很多可以提升安卓app開發(fā)效率的功能。2、Eclipse
Eclipse是程序員普遍使用的app開發(fā)工具,作為一個跨平臺的開發(fā)平臺,支持眾多插件,對比其他的固定的IDE軟件,具有非常高的自主性、靈活度,讓大家的安卓app開發(fā)更加高效。
3、HighlightTextEditor
HighlightTextEditor是一個Android代碼語法高亮控件,并且還支持lua擴展,同時,還可以自定義語言配置。
4、AppInventor
AppInventor也是谷歌出品的一款安卓app開發(fā)制作工具,使用起來更加簡單、易上手。5、App Park(應(yīng)用公園)
應(yīng)用公園是國內(nèi)領(lǐng)先的app制作平臺,和上面的安卓應(yīng)用開發(fā)軟件不同,應(yīng)用公園可以讓普通人也能自己制作出專業(yè)的app軟件。
傳統(tǒng)的app開發(fā)工具是讓程序員逐步敲代碼完成各個app功能模塊的開發(fā),而且應(yīng)用公園平臺為大家提供了上百種開發(fā)的app通用功能模塊,用戶不用再重新開發(fā),直接選擇需要的功能模塊,按照自己的app規(guī)劃,自由組合,然后上傳圖文內(nèi)容,就能快速制作app。
5大安卓應(yīng)用開發(fā)軟件盤點,普通人也能開發(fā)app了
而且應(yīng)用公園平臺還為大家提供了上百套開發(fā)好的app模板,可以直接使用,包括外賣配送、電商商城、新聞資訊、企業(yè)品牌、社交論壇等等。
利用應(yīng)用公園自己制作app,幾天時間就能搞定,不需要專業(yè)的技術(shù)人員參與,普通人自己制作app,成本能節(jié)省90%以上。
迄今為止已生成 1230323 款A(yù)PP
立即注冊
案例
電話
安卓常用開發(fā)工具有:Eclipse?w/ADT、Android SDK?and?AVD?Manager、Android模擬器和實際移動設(shè)備、Android Debug Bridge(adb)等。
1.Eclipse?w/ADT
雖然Eclipse并非唯一可用于開發(fā)Android應(yīng)用的Java開發(fā)環(huán)境,但它是目前最歡迎的工具,有很大程度上是因為它的成本很低(免費),但最主要的原因還是它與其他Android工具的強大組合功能。最典型的表現(xiàn)就是它與Android Development Tools(ADT)插件的組合(開發(fā)者可以通過Android網(wǎng)站下載ADT)。
2.Android SDK?and?AVD?Manager
這項SDK可提供多種重要的功能,它能管理不同版本的Android SDK,以及第三方附件、工具、設(shè)備驅(qū)動程序和文件。第二大功能就是管理用來安裝模擬器實體的Android Virtual Device配置(AVD)。
3.Android模擬器和實際移動設(shè)備
如果開發(fā)者創(chuàng)建完成了一款應(yīng)用程序,就必須針對自己鎖定的設(shè)備進行測試。你可以將模擬器與AVD結(jié)合在一起模擬目標移動設(shè)備的運行環(huán)境,但更全面地進行測試,你還是需要一個真正的移動設(shè)備,因為模擬器雖然功能強大,但它畢竟不是實際使用的手機,用戶也不可能使用模擬器運行應(yīng)用程序,所以實際移動設(shè)備也是測試環(huán)節(jié)必不可少的工具。
4.Android Debug Bridge(adb)
該工具可將其他工具接入模擬器和設(shè)備,它除了可以讓其他工具(游戲邦注:尤其是Eclipse ADT插件)功能生效以外,還可以使命令行上傳或下載文件,安裝或卸載程序包,通過進入設(shè)備或模擬器的shell環(huán)境訪問許多其他功能。
5.Dalvik Debug Monitor Server(DDMS)
無論是通過獨立應(yīng)用程序還是Eclipse perspective訪問DDMS,它都能提供檢查、調(diào)試、與模擬器及設(shè)備實體交互的便利功能。開發(fā)者可使用DDMS檢查運行程序和線程,探索文件系統(tǒng),搜集堆棧和其他內(nèi)存信息,附上調(diào)試器,甚至是抓取視頻截圖。通過模擬器,開發(fā)者還可以模擬電話接聽和發(fā)送SMS等狀態(tài)。
6.LogCat
LogCat是Android日志系統(tǒng)的名稱,你可以通過Eclipse、adb讀取LogCat數(shù)據(jù),它可以提供系統(tǒng)中相關(guān)事件的診斷信息。開發(fā)者可以由此將應(yīng)用程序的調(diào)試和診斷信息發(fā)送到LogCat。
7. Draw 9-Patch
Draw 9-Patch可助開發(fā)者更方便地完成應(yīng)用程序的圖形設(shè)計,該工具支持開發(fā)者將傳統(tǒng)的PNG圖像文件轉(zhuǎn)化成更具靈活性、更能有效運用于手機應(yīng)用開發(fā)過程的可擴展圖像文件。這項工具可以在快速顯示效果的環(huán)境中簡化NinePatch文件的創(chuàng)建過程。
8.The Hierarchy Viewer
開發(fā)者可通過獨立應(yīng)用程序或者Eclipse perspective訪問The Hierarchy Viewer,它的作用是在運行過程中查看程序的UI布局,提供了一個圖表顯示應(yīng)用程序布局和視圖層級的情況,開發(fā)者可依此判斷程序UI布局的存在問題。
軟件開發(fā)工具依照工具的功能有以下這些:
1.開發(fā)iOS系統(tǒng)的工具——xcode軟件開發(fā);
2.開發(fā)Android系統(tǒng)的工具——eclipse軟件開發(fā);
3.android app界面設(shè)計的軟件工具——App UI Designer;
4.ios app應(yīng)用界面設(shè)計軟件工具——ProtoShare;
5.測試軟件的工具—— Emacs、vim、Notepad++(Windows)、UltraEdit(Windows)、TextPad(Windows);
6.開發(fā)web APP的工具——Editplus開發(fā)工具、UltraEdit手機網(wǎng)站工具;
7.提升web APP開發(fā)效率的工具——Google Web Designer(無需懂得html5語言)、Gauge.js(自定義動畫儀表和滑動桿)、Timesheet.js、Quintus(開發(fā)web游戲app軟件的有利工具)、NoMe;
8.簡化ios開發(fā)的工具——Kinvey蘋果app工具、Firebase IOS開發(fā)工具、IOS Boilerplate工具軟件、Slash移動app開發(fā)工具;
9.建設(shè)商城網(wǎng)站響應(yīng)式設(shè)計工具——響應(yīng)式線框圖、Wirefy設(shè)計工具、MockUphne原型設(shè)計工具;
10.傻瓜式開發(fā)工具——AppMakr、App Press、Apepery、GoodBarber、Appmachine、iBuildApp~