久久99精品久久久久久琪琪,久久人人爽人人爽人人片亞洲,熟妇人妻无码中文字幕,亚洲精品无码久久久久久久

Android實訓實習報告總結(匯編)

時間:2019-05-12 11:55:09下載本文作者:會員上傳
簡介:寫寫幫文庫小編為你整理了多篇相關的《Android實訓實習報告總結》,但愿對你工作學習有幫助,當然你在寫寫幫文庫還可以找到更多《Android實訓實習報告總結》。

第一篇:Android實訓實習報告總結

一、引言 Android 學習已有一年半有余,先后做過兩款游戲、三款應用和搭建一臺服務端,也了解過一些Android相關的源碼(JDK、SDK和NDK),學習Android不僅是對前沿開發技術的了解,也是對編程知識的一次提升。

鞏固和學習了更多的Android的控件、布局、Activity、Service等一系列基礎知識,對整個Android的開發有了大致的了解。android入門后,只會照著別人的葫蘆來畫瓢,即沒有設計思想,也沒有自主原創的代碼,不好不好

于是乎,進了公司跟著項目走,用項目來驅動自己去學習和提高

公司是1+1開發模式,即1個美工 + 1個工程師,負責完成一個項目(主要是游戲開發),就完全需要自己設計游戲的布局、邏輯,以及各種動畫,來增強用戶體驗的效果 當時主要是看Android官方的SDK API文檔、中文API文檔、JDK源碼,對有些感念不清楚,就上論壇去找答案,如CSDN、ITEye、IBM、知乎,或者去啃google 官方的文檔。

二、新掌握的Java基礎學習

2.1、Activity View、Surfaceview的理解

掌握了常用控件、view、surfaceview使用方式,知道怎樣去適配不同屏幕后,每天就是重復的工作,堆砌代碼,難以進一步去提升自己

于是就自己給自個找點事干,自定義控件,如對話框背景等,或去google code找些開源的代碼下來研究,學習人家的設計思想、模塊功能的劃分、代碼組織結構等知識 這個過程中,涉及到的知識比較多,如版本管理工具SVN、Git、Mercurial,如設計模式

的思想,如怎樣構建通用的開源應用框架(考慮sdk1.5等版本),如何適用在不同屏幕分辨率的手機上等等

學習中會不斷遇到一個又一個新的問題,因此需要不斷去查資料、再學習各種工具,逐步積累,潛移默化中自己掌握的知識和工具就多了,眼界也開闊了。

2.2、android-pulltorefresh

一個強大的拉動刷新開源項目,支持各種控件下拉刷新,ListView、ViewPager、WevView、ExpandableListView、GridView、ScrollView、Horizontal ScrollView、Fragment上下左右拉動刷新,比下面johannilsson那個只支持ListView的強大的多。并且它實現的下拉刷新ListView在item不足一屏情況下也不會顯示刷新提示,體驗更好。

成果: ListView能滿足一個Android 項目的列表:

(1)下拉刷新ListView(2)下拉刷新及滑動到底部加載更多ListView(3)拖動排序的ListView,同時支持ListView滑動item刪除,各個Item高度不

一、單選、復選、CursorAdapter做為適配器、拖動背景變化等。

2.3、Menu MenuDrawer 滑出式菜單,通過拖動屏幕邊緣滑出菜單,支持屏幕上下左右劃出,支持當前View處于上下層,支持Windows邊緣、ListView邊緣、ViewPager變化劃出菜單等。

SlidingMenu 滑出式菜單,通過拖動屏幕邊緣滑出菜單,支持屏幕左右劃出,支持菜單zoom、scale、slide up三種動畫樣式出現。

ArcMenu 支持類似Path的左下角動畫旋轉菜單及橫向劃出菜單、圓心彈出菜單

android-satellite-menu 類似Path的左下角動畫旋轉菜單

radial-menu-widget 圓形菜單,支持二級菜單

2.4、異常處理

登錄提交時,用戶名、密碼不能為空,否則不與提交。數據庫返回登錄信息,處理登錄成功與否的異常。

注冊提交時,檢查注冊用戶名,密碼不能為空,密碼與確認密碼要相同,否則不與提交注冊。

三、Android Xutils 框架的使用

在開發中還學習了一套強大的快速開發框架,Android Xutils 框架。

3.1、xUtils使用

xUtils 包含了很多實用的android工具。

xUtils 源于Afinal框架,對Afinal進行了大量重構,使得xUtils支持大文件上傳,更全面的http請求協議支持,擁有更加靈活的ORM,更多的事件注解支持且不受混淆影響...xUitls最低兼容android 2.2(api level 8)

3.2、DbUtils數據庫

android中的orm框架,一行代碼就可以進行增刪改查; 支持事務,默認關閉;

可通過注解自定義表名,列名,外鍵,唯一性約束,NOT NULL約束,CHECK約束等(需要混淆的時候請注解表名和列名);

支持綁定外鍵,保存實體時外鍵關聯實體自動保存或更新; 自動加載外鍵關聯實體,支持延時加載;

支持鏈式表達查詢,更直觀的查詢語義,參考下面的介紹或sample中的例子。

3.3、ViewUtils視圖

android中的ioc框架,完全注解方式就可以進行UI綁定和事件綁定; 新的事件綁定方式,使用混淆工具混淆后仍可正常工作; 目前支持常用的11種事件綁定,參見ViewCommonEventListener類和包com.lidroid.xutils.view.annotation.event。

3.4、HttpUtils網絡請求 支持同步,異步方式的請求;

支持大文件上傳,上傳大文件不會oom;

支持GET,POST,PUT,MOVE,COPY,DELETE,HEAD請求;

下載支持301/302重定向,支持設置是否根據Content-Disposition重命名下載的文件; 返回文本內容的GET請求支持緩存,可設置默認過期時間和針對當前請求的過期時間。

3.5、BitmapUtils圖片異步加載

加載bitmap的時候無需考慮bitmap加載過程中出現的oom和android容器快速滑動時候出現的圖片錯位等現象; 支持加載網絡圖片和本地圖片;

內存管理使用lru算法,更好的管理bitmap內存;

可配置線程加載線程數量,緩存大小,緩存路徑,加載顯示動畫等。

四:發現式學習

工作情況及遇到的問題等:

4.1、Bitmap的生成

Bitmap實現在android.graphics包中。但是Bitmap類的構造函數是私有的,外面并不能實例化,只能是通過JNI實例化。這必然是 某個輔助類提供了創建Bitmap的接口,而這個類的實現通過JNI接口來實例化Bitmap的,這個類就是BitmapFactory。

4.2、必要知識認知

1、在使用方法decodeFile()/decodeResource()時,都可以指定一個BitmapFacotry.Options。

利用Options的下列屬性,可以指定decode的選項:

inPreferredConfig 指定decode到內存中,手機中所采用的編碼,可選值定義在Bitmap.Config中。缺省值是ARGB_8888。

inJustDecodeBounds 如果設置為true,并不會把圖像的數據完全解碼,亦即decodeXyz()返回值為null,但是Options的outAbc中解出了圖像的基本信息。inSampleSize 設置decode時的縮放比例。

談通過HttpGet和HttpPost向服務器提交請求,并從服務器返回結果信息。通過如下3步訪問Http資源。

(1)創建HttpGet或者HttpPost對象,將要請求的URL通過構造方法傳入HttpGet或HttpPost對象。(2)使用DefaultHttpClient.execute方法發送Http Get或Http Post請求,并返回HttpResponse對象。

(3)通過HttpResponse.getEntity方法返回響應信息,并進行相應的處理。

如果使用HttpPost方法提交Http Post請求,還需要使用HttpPost.setEntity方法設置請求參數。

2、實習任務概述:

1.面向對象編程(封裝,繼承,多態)。

2.this關鍵字使用,JavaBean定義規范以及作用

3.方法的重載(overLoading),構造方法的作用

4.package(創建包)import(導包)的使用以及作用

5.super關鍵字使用

6.方法的重寫(override)

7.訪問修飾符(public,protected,默認,private)的使用

8.static修飾符的作用及用法

9.final修飾符的作用及用法

10.抽象類(abstract)的定義和特點以及使用

11.接口(interface)的定義 12.接口的實現(implements)13.接口和抽象類的區別

14.對象包裝器,裝箱和拆箱的使用

15.數組的使用。

16.String類,StringBuffer類,StringBuilder類的使用以及三者之間的區別 17.JavaSE API的使用。

18.日期類Date,SimpleDateFormat的使用,數學類Math和Random類的使用

19.異常的處理(try,catch,finally,throw,throws)20.Java中的集合類(List,Map,Set接口的使用以及Properties屬性文件的操作)21.編寫音樂播放器應用 22.編寫電話及短信應用 23.編寫SD卡存取應用

3、實習所用軟件簡介: Eclipse

Eclipse 是一個開放源代碼的、基于java的可擴展開發平臺。就其本身而言,它只是一個框架 和一組服務,用于通過插件組件構建開發環境。幸運的是,Eclipse 附帶了一個標準的插件集,包括 Java 開發工具(Java Development Tools,JDT)。

Eclipse 還包括插件開發環境(Plug-in Development Environment,PDE),這個組件主要針對希望擴展 Eclipse 的軟件開發人員,因為它允許他們構建與 Eclipse 環境無縫集成的工具。由于 Eclipse 中的每樣東西都是插件,對于給 Eclipse 提供插件,以及給用戶提供一致和統一的集成開發環境而言,所有工具開發人員都具有同等的發揮場所。

JDK JDK(Java Development Kit,Java開發包,Java開發工具)是一個寫Java的applet和應用程序的程序開發環境。它由一個處于操作系統層之上的運行環境還有開發者編譯,調試和運行用Java語言寫的applet和應用程序所需的工具組成。

JDK(Java Development Kit)是Sun Microsystems針對Java開發員的產品。自從Java推出以來,JDK已經成為使用最廣泛的Java SDK(Software development kit)。

JDK包含的基本組件包括:

javac – 編譯器,將源程序轉成字節碼

jar – 打包工具,將相關的類文件打包成一個文件

javadoc – 文檔生成器,從源碼注釋中提取文檔

jdb – debugger,查錯工具

JDK中還包括完整的JRE(Java Runtime Environment,Java運行環境),也被稱為private runtime。包括了用于產品環境的各種庫類,以及給開發員使用的補充庫,如國際化的庫、IDL庫。

Android SDK 指的既是Android專屬的軟件開發工具包。

PopupWindow是應用開發中經常用到的組建,使用它可以在當前屏幕的上層顯示一個彈窗,同時也可以指定彈窗的位置以及背景色等特性,大大提高用戶體驗,那么這里我就以下幾點介紹它的使用: 從指定的位置彈出這個窗口(淡入淡出動畫)從屏幕底部彈出這個窗口(帶有透明度背景,自定義觸摸其他位置自動關閉彈窗)

4.3、遇到的問題及解決方案

在Android編程過程中鞏固熟悉了Java的編程。由于Android應用程序的開發離不開Java的支持,所以基礎的Java知識是必須的。Android系統是基于Linux的手機操作系統平臺,要深入系統的學習Android,不僅僅是有Java和Android應用開發,必須要具備Linux,CC++高級編程才能深入的涉及Android Framework和Android內核開發。成為Android開發的高素質人才。所以,在后續對Android的學習中可能會看一些較底層的書籍。

android低版本工程(如1.5)放到高版本環境中(如2.2)可能會上述錯誤,解決方法如下:

1。如果不修改android sdk版本,則使用project clean 命令作用于某工程即可。

(該處理方式只是在高版本中兼容了低版本工程,未真正意義上的升級)2。如果修改android sdk版本,則需要以下幾個步驟:

1)修改SDK:選擇工程,build path--> configure build path---> library 刪除引用的低版本SDK,然后add External JARs,選擇高版本SDK,OK,保存。

2)修改classpath文件: 該文件可能存在該項:

3)修改AndroidManifest.xml在AndroidManifest.xml文件中,application標簽后添加

4)修改default.properties(很重要): 該文件最后一行(前面沒用#的)target=android-3 該成target=android-8,保存。再看看工程和新建的android 2.2的工程結構就一樣了。

五、實習心得

Android四大組件、Android資源訪問、圖形/圖像處理、事件處理機制、Android輸入/輸出處理、音頻/視頻多媒體應用開發、OpenGL與3D應用開發、網絡通信編程、Android平臺的Web Service、傳感器應用開發、GPS應用開發、Google Map服務等都是非常重要的知識點以及學習領域。

1.IDE

這半年來,從Eclipse到Android Studio,經歷了兩個IDE,在這里做一下簡單的評價。

如果真要說,Android Studio是基本上大勝Eclipse的,至少Android Studio不會像Eclipse那樣卡,公司配的電腦是渣了點,64位,win7,只有4G內存,跑Eclipse跑久了簡直就是噩夢。

Android Studio的智能提示比Eclipse強多了,快捷鍵也很強大。至于工程的組織結構,Android Studio和Eclipse的差距還是很大的,但習慣了也不覺得有啥,哪種都行。

Android Studio有個不好的地方就是無法在同一個窗口顯示多個工程,所以只能多開一個。。

Android Studio采用Gradle構建,一開始的構建簡直是喪心病狂。。如果沒有VPN,想都不敢想。。構建上,Eclipse是比Android Studio快,但Android Studio導第三方庫很方便,寫一個Gradle腳本就行,并且配置上更加靈活。可以這樣說:Eclipse是幫我們搭好了房子,我們只要熟悉它就行,而Android Studio是讓我們用工具去搭建自己喜歡的房子。

更加重要的是,aar包只能由Android Studio構建,而谷歌現在推崇的方式就是aar包,所以以后開源的項目很有可能都是打成aar包,并且基本上,大部分的開源項目已經是采用Gradle構建。。

Android Studio一個不好的地方就是升級太快,在半年的 時間內,我從0.8.1升級到1.0。。可惡的是,每次升級,Gradle也升級,并且還斷代。。雖然么官方現在是版本穩定了,因為IDEA已經出了新版本了,但我試過1.0出事了,直接撤回0.9.4。。

總體而言,未來Android開發一定是用Android Studio或者IDEA,Eclipse已經被官方拋棄了。。2.版本控制工具

我使用SVN比較少,剛工作的時候,剛好就是把SVN換成Git,但對于Git的使用方式也經歷了一番變化。

一開始使用Git,就像SVN一樣,一個master分支,大家都往上面推,一旦出事了,大家都卡住了。。后來使用SourceTree做管理,分支切換,提交和解決沖突好多了。現在的開發模式是這樣的:

master分支是正式分支,在沒確保穩定之前是不會推東西上去的,dev分支是開發分支,而每個人本地也有一個dev分支,大家可以根據自己的需求在本地開多幾個分支,這樣就不會出現master分支無法發布的現象,因為master分支永遠是正確的。

遺憾的是,由于使用的是工具,對命令行還是不熟悉。。3.數據庫

數據庫一開始采用的是原生,編寫了一大堆Helper,而且光是存表,就已經寫了很多代碼,一個一個set進去。。后來換成對象數據庫LitePal,好多了,但LitePal本身的效率是原生的三分之一,但基本的情況已經足夠了。。不過,必須直視的是,LitePal的功能支持還不夠完善,一開始不支持索引,后來的版本才支持,并且很多情況下,采用Sql語句都比使用LitePal的接口方法方便多了,LitePal的查找數據竟然是根據那個自增長的id。。只要稍微改一下,LitePal還是很好用的,尤其是對象一建好,表就建好了,特別方便,還有就是數據庫的升級也非常方便。

有個不好的地方就是,可以直接操作表對象,這樣很可能就會將不想存的數據存進表里,于是就封裝了一下,不能直接操作表對象,而是操作實體對象,數據庫的操作都是通過實體對象的接口方法,而接口方法調用的就是表對象的方法。4.網絡庫和異步庫

這部分的工作并不是我做的,但還是可以說一下。

一開始是自己封裝的網絡庫,但封裝得太復雜了,很難維護,而且它不是一個簡單的網絡庫,是一個網絡異步和本地異步一起實現的庫,基于大量的回調,使用起來也是不錯的。

后來換成Volley,不過就發現Volley的實現不太滿足我們的要求,就用OkHttp將Volley的底層改掉,然后上層的接口形式采用鏈式調用的方式,代碼的形式更加簡單。

原生的異步AsnyTask簡直就是個坑,它就是一個任務隊列,多個任務執行并不是并發的,有可能就卡在其中一個出不來了。。試過debug的時候跳進去就跳不出來了。。后來就自己寫了一個,也是采用鏈式調用的接口形式。

5.事件采用EventBus作為事件管理,簡直就是爽。簡簡單單就可以跨線程,跨組件通信,很多以前要很復雜才能實現的功能一下子就可以實現了。

6.UI上,倒是很難講的一個方面,采用ButterKnife減少了工作量,并且基本上采用組件思想,能夠提煉出組件的就變成組件,方便替換,而且形式上,偏近于MVVM的形式,可以針對業務邏輯編寫單元測試,原因就是邏輯業務都在ViewModel上。

第二篇:Android實訓報告

時間過得飛快,一週的實訓馬上就要結束了。在這次實訓中我不僅學習了相關的專業知識,而且讓我對Android系統有了一個更加深入的瞭解,它也是我們專業的一個新的方向並且發展很迅速,為了今後的發展我們還需不斷努力學習!我國的信息產業還很落後,隨著社會的發展及國家的支持,手機上網必然是社會發展的趨勢,到時候手機上網將無處不在!我對Android系統的瞭解只停留在應用的層次上,對於更深層次的瞭解是很少的,通過這次實訓讓我對Android系統有了一個更深層次的瞭解,同時它也使我意識到無論朝哪個方向發展,主要還是得扎實、深刻的學習,同時也得不斷努力探索。

IT業的發展速度一直都是相當驚人的,不想被社會淘汰,我們就必須不斷的學習,現在的社會不再是一勞永逸,其它行業也是如此,我們必須不斷的拿知識來武裝自己,不然被淘汰那是肯定的!現在就業難的原因其實在於競爭的加劇,為了在競爭中取得成功,我們必須時時刻刻刻學習!

在Android編程過程中鞏固熟悉了Java的編程。由於Android應用程序的開發離不開Java的支持,所以基礎的Java知識是必須的。Android系統是基於Linux的手機操作系統平臺,要深入學習Android,不僅僅是有Java和Android應用開發,必須要具備Linux,C/C++高級編程才能深入的涉及Android Framework和Android內核開發。成為Android開發的高素質人才。所以,在後續對Android的學習中可能會看一些較底層的書籍。

由於這次實訓時間較短,對於Android應用程序的高級編程學的很少,是這次實訓中的不足。要想開發一些好的應用程序,還需要更多的知識支持。在實訓時,遇到了很多平時沒有遇到或者沒有特別關注的問題。這些問題只有自己在實際開發中才能體會到並且解決。

通過對java以及Android的學習,讓我又學會了一門編程語言,這對於我以後的學習工作都會有很大的幫助。回顧以前所走的路,太多的是無奈和迷茫,這次實訓就像是我人生道路上的航標,為我指明了前進的方向,使我對自己的前途充滿了信心,同時也知道了自己的前進方向。

第三篇:Android實訓報告

Android學院:****** 班級:****** 學號:****** 姓名:******

實訓報告

目錄

一、實訓背景及目的要求.........................................................................................................................3 1.1背景簡介.....................................................................................................................................3 1.2實訓目的及要求...........................................................................................................................3

二、設計思路...........................................................................................................................................3 2.1設計題目.....................................................................................................................................3 2.2功能分析.....................................................................................................................................4 2.3模塊劃分.....................................................................................................................................4

三、設計實現及代碼分析.........................................................................................................................4 3.1第一個Activity.............................................................................................................................4 3.1.1布局文件:main.xml:........................................................................................................4 3.1.2源代碼文件:MainActivity.java............................................................................................7 3.2第二個Activity.............................................................................................................................8 3.2.1布局文件:result.xml..........................................................................................................8 3.2.2源代碼文件:ResultActivity.java...........................................................................................9 3.3字符串資源文件:strings.xml......................................................................................................12 3.4程序清單文件:AndroidManifest.xml...........................................................................................13

四、程序功能測試及截圖.......................................................................................................................14 4.1工程項目目錄............................................................................................................................14 4.2程序運行界面:.........................................................................................................................14 4.3未填身高提示:.........................................................................................................................15 4.4計算示例:................................................................................................................................15

五、課程設計(實訓)總結....................................................................................................................16

一、實訓背景及目的要求

1.1背景簡介

Android(讀音:['?ndr?id])是一種以Linux為基礎的開放源碼操作系統,主要使用于便攜設備,目前尚未有統一中文名稱,中國大陸地區較多人使用安卓或安致。Android操作系統最初由Andy Rubin創辦[5],最初只支持手機。2005年由Google收購注資,并拉攏多家制造商組成開放手機聯盟(Open Handset Alliance)開發改良,逐漸擴展到到平板電腦及其他領域上[6]。2010年末數據顯示,僅正式推出兩年的操作系統的Android已經超越稱霸十年的諾基亞Symbian系統,躍居全球最受歡迎的智慧手機平臺。采用Android系統手機廠商包括HTC、Samsung、Motorola、Lenovo、LG、Sony Ericsson等。1.2實訓目的及要求

Android以Linux為核心的Android行動平臺,使用Java作為編程語言。本實訓是在學習java語言程序設計的基礎上進行的一次綜合實踐。通過綜合訓練,要求學生掌握java語言程序設計的基本技能和Android編程的應用,并較系統地掌握JAVA語言程序設計開發方法以及幫助文件的使用等,使學生通過本次實訓,能夠進行獨立的Android應用程序開發,能夠在實際操作中得到進一步的提高,為以后的學習和工作打下良好的基礎。

目的:

1、培養學生運用所學課程Java語言程序設計的理論知識和技能,分析解決計算機實際應用中的問題的能力。

2、培養學生在Java語言程序設計的基礎上,開發Android應用程序的思想和方法。

3、培養學生調查研究、查閱技術文獻、資料、手冊以及編寫技術文獻的能力。

通過課程設計,要求學生在指導教師的指導下,獨立完成課程設計的全部內容,包括:

1、確定開發的程序,收集和調查有關技術資料。

2、按軟件工程步驟進行程序設計。

3、對完成的程序進行測試和完善。

4、完成課程設計報告。

二、設計思路 2.1設計題目

以Android系統的UI界面開發為基礎,設計一個可以簡單計算標準體重的應用程序,要求以2個Acitivity實現,第一個Activity作為輸入界面,第二個Activity作為結果輸出界面,具體實現細節自行設計。2.2功能分析

該設計題目要求實現可計算輸出標準體重功能的應用程序。通過查閱資料可知,按照世界衛生組織推薦的計算標準體重的方法,需要獲知的輸入信息有性別、身高。故可在第一屏設置有單選框以確定性別,輸入框以獲取身高。另,為了增加程序的實用性,可再設一可選輸入框,用來得到實際體重,與標準體重對比,給出用戶一些健康提議。第二屏設置有結果輸出顯示區域與健康提示顯示區域。

2.3模塊劃分

通過程序功能分析,可將程序劃分為2個模塊,即2個Activity:

第一個Activity:兩個單選框(RadioButton)獲取性別,一個輸入框(EditText)獲取身高,一個可選輸入框(EditText)獲取實際體重,一個按鈕(Button)及一些提示文本。

第二個Activity:一個文本顯示區(TextViw)顯示計算結果,一個可選文本顯示區(TextView)顯示提示信息。

三、設計實現及代碼分析 3.1第一個Activity 3.1.1布局文件:main.xml:

采用絕對布局,以實現控件精準顯示;

RadioGroup包含兩個RadioButton,以實現性別男女選擇;

兩個供輸入的EditText限定了輸入類型為numberDecimal,以確保只接收數字型數據。main.xml完整代碼如下:

android:orientation=“vertical”

android:layout_width=“fill_parent”

android:layout_height=“fill_parent”

>

android:id=“@+id/tv1”

android:layout_width=“wrap_content”

android:layout_height=“wrap_content”

android:text=“@string/tv1_t”

android:textSize=“20sp”

android:layout_x=“50px”

android:layout_y=“25px” />

android:layout_width=“wrap_content”

android:layout_height=“wrap_content”

android:text=“@string/tv_sex”

android:layout_x=“50px”

android:layout_y=“100px”

/>

android:layout_width=“wrap_content”

android:layout_height=“wrap_content”

android:text=“@string/tv_tall”

android:layout_x=“50px”

android:layout_y=“150px”

/>

android:id=“@+id/rg”

android:layout_width=“wrap_content” android:layout_height=“wrap_content” android:orientation=“horizontal” android:layout_x=“95px” android:layout_y=“90px” >

android:id=“@+id/rb_male”

android:layout_width=“wrap_content” android:layout_height=“wrap_content”

android:text=“@string/male”

/>

android:id=“@+id/rb_female”

android:layout_width=“wrap_content” android:layout_height=“wrap_content” android:text=“@string/female”

/>

android:id=“@+id/et_tall” android:layout_width=“100px” android:layout_height=“40px” android:layout_x=“100px” android:layout_y=“140px”

android:inputType=“numberDecimal” />

android:layout_width=“wrap_content” android:layout_height=“wrap_content” android:layout_x=“200px” android:layout_y=“145px” android:textSize=“20sp” android:text=“cm” />

android:id=“@+id/compute”

android:layout_width=“wrap_content” android:layout_height=“wrap_content” android:layout_x=“100px” android:layout_y=“280px” android:textSize=“20sp”

android:text=“@string/compute” /> android:layout_width=“wrap_content” android:layout_height=“wrap_content” android:layout_x=“50px” android:layout_y=“200px” android:text=“@string/tv_real” />

android:id=“@+id/et_real” android:layout_width=“100px” android:layout_height=“40px” android:layout_x=“100px” android:layout_y=“230px”

android:inputType=“numberDecimal” />

android:layout_width=“wrap_content” android:layout_height=“wrap_content” android:layout_x=“200px” android:layout_y=“235px” android:textSize=“20sp” android:text=“kg” />

3.1.2源代碼文件:MainActivity.java 使用main.xml布局文件,為計算按鈕(Button)注冊事件監聽,添加事件響應代碼; 實現未填身高提示:

Toast.makeText(MainActivity.this, R.string.tall_hint, Toast.LENGTH_SHORT).show();實現Activity之間跳轉設置:

intent.setClass(MainActivity.this, ResultActivity.class);實現Activity之間數據封裝傳輸: bundle.putDouble(“height”, height);bundle.putString(“sex”, sex);bundle.putString(“real”, real);intent.putExtras(bundle);MainActivity.java完整代碼如下:

package com.halcyon;

import android.app.Activity;import android.content.Intent;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.EditText;import android.widget.RadioButton;import android.widget.Toast;

public class MainActivity extends Activity implements OnClickListener {

private RadioButton rb1 = null;private RadioButton rb2 = null;private EditText et = null;private EditText et_real = null;private Button bt = null;

public void onCreate(Bundle savedInstanceState){

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

rb1 =(RadioButton)findViewById(R.id.rb_male);

rb2 =(RadioButton)findViewById(R.id.rb_female);

rb1.setChecked(true);

et =(EditText)findViewById(R.id.et_tall);

et_real =(EditText)findViewById(R.id.et_real);

bt =(Button)findViewById(R.id.compute);

//默認為男性選中

bt.setOnClickListener(this);}

} @Override

public void onClick(View v){

} // TODO Auto-generated method stub

/**事件響應代碼,獲取性別、身高,判斷是否輸入了實際體重 * 新建Intent對象用于Activity之間跳轉,及傳輸輸入的數據 * **/

if(et.getText().toString().length()==0){

} else {

}

double height = Double.parseDouble(et.getText().toString());String real = et_real.getText().toString();String sex = “";if(rb1.isChecked()){ } else{ } Intent intent = new Intent();intent.setClass(MainActivity.this, ResultActivity.class);

Bundle bundle = new Bundle();bundle.putString(”sex“, sex);bundle.putString(”real“, real);intent.putExtras(bundle);

this.startActivity(intent);

//存放數據,以封裝傳輸

bundle.putDouble(”height“, height);sex = ”F“;sex = ”M“;Toast.makeText(MainActivity.this,//身高未填提示

R.string.tall_hint,//注冊點擊事件監聽

Toast.LENGTH_SHORT).show();3.2第二個Activity 3.2.1布局文件:result.xml 絕對布局,三個TextView,內容用紫色顯示,提示標號用綠色顯示,以達到較醒目的感覺。result.xml完整代碼如下:

xmlns:android=”http://schemas.android.com/apk/res/android“

android:layout_width=”fill_parent“

android:layout_height=”fill_parent“

android:layout_margin=”10px“>

android:id=”@+id/tv_1“

android:layout_width=”wrap_content“

android:layout_height=”wrap_content“

android:layout_x=”20px“

android:layout_y=”100px“

android:textSize=”20sp“

android:textColor=”#8855ff“

/>

android:id=”@+id/tv_2“

android:layout_width=”wrap_content“

android:layout_height=”wrap_content“

android:layout_x=”20px“

android:layout_y=”200px“

android:textSize=”20sp“

android:textColor=”#00ff00“

/>

android:id=”@+id/tv_3“

android:layout_width=”wrap_content“

android:layout_height=”wrap_content“

android:layout_x=”20px“

android:layout_y=”240px“

android:textSize=”20sp“

android:textColor=”#8855ff“ />

3.2.2源代碼文件:ResultActivity.java 使用result.xml布局文件,獲取intent,取得傳入的數據信息,以男性:(身高cm-80)×70﹪=標準體重

女性:(身高cm-70)×60﹪=標準體重 的標準來計算標準體重,方法

private String getWeight(double height, String sex)實現此功能;

可根據用戶是否輸入了實際體重,來選擇是否顯示健康提示信息,方法 private void healthHint(double weight)實現此功能;

方法private String form(double d)實現數據格式化。ResultActivity.java完整代碼如下:

package com.halcyon;

import java.text.NumberFormat;

import android.app.Activity;import android.content.Intent;import android.os.Bundle;import android.widget.TextView;

public class ResultActivity extends Activity{

/**男性:(身高cm-80)?á70﹪=標準體重

* 女性:(身高cm-70)?á60﹪=標準體重

* **/

private TextView tv_1 = null;private TextView tv_2 = null;private TextView tv_3= null;private Intent intent = null;private Bundle bundle = null;private double height = 0;private String sex = ”“;

public void onCreate(Bundle savedInstanceState){

super.onCreate(savedInstanceState);

setContentView(R.layout.result);

tv_1 =(TextView)findViewById(R.id.tv_1);

tv_2 =(TextView)findViewById(R.id.tv_2);

tv_3 =(TextView)findViewById(R.id.tv_3);

intent = this.getIntent();

bundle = intent.getExtras();

height = bundle.getDouble(”height“);

sex = bundle.getString(”sex“);

tv_1.setText(this.getWeight(height,sex));

}

private String getWeight(double height, String sex){

} private void healthHint(double weight){

/*根據用戶是否輸入了實際體重來判斷是否添加顯示提示信息 * 如果輸入了實際體重,按以下原則給用戶以健康提示 * 標準體重正負10﹪為正常體重

* 標準體重正負10﹪~ 20﹪為體重過重或過輕 * 標準體重正負20﹪以上為肥胖或體重不足 * */

String result = ”“;String real = bundle.getString(”real“);if(real.equals(”“)){ } else {

double r = Double.parseDouble(real);double rate =(r-weight)/weight;if(rate>0.2){

//過胖

result = this.getString(R.string.very_fat);} else if(rate>=0.1&&rate<=0.2){

} else if(rate>-0.1&&rate<0.1){

} else if(rate>=-0.2&&rate<=-0.1){ } else if(rate<-0.2){

//過瘦

result = this.getString(R.string.very_thin);

//瘦

result = this.getString(R.string.thin);

//正常

result = this.getString(R.string.normal);

//胖

result = this.getString(R.string.fat);result = ”“;double weight = 0;String result = ”“;if(sex.equals(”M“)){

} else {

} healthHint(weight);return result;weight =(height-70)*0.6;result = ”這位女士,n妳的標準體重為“+form(weight)+”公斤。n“;weight =(height-80)*0.7;result = ”這位先生,n你的標準體重為“+form(weight)+”公斤。n“;

}

}

} } tv_2.setText(getString(R.string.hint));tv_3.setText(result);private String form(double d){

}

//格式化數據輸出

String str = NumberFormat.getInstance().format(d);return str;3.3字符串資源文件:strings.xml 在一個Android工程中,我們可能會使用到大量的字符串作為提示信息。這些字符串都可以作為字符串資源聲明在配置文件中,從而實現程序的可配置性。

在代碼中我們使用Context.getString()方法,通過傳遞資源ID參數來得到該字符串,也可以在其他資源文件中引用字符串資源,引用格式為:”@string/字符串資源名稱。

本程序所引用的strings.xml內容為:

NomalWeight

計算結果

計算你/妳的標準體重!

性別:

身高:

當前體重(可選):

男的

女的

計算

你沒填身高哦!

溫馨提示:

體重適中,要保持喲!

“有點偏瘦哦,應該再多吃些東西啊!”

“一定是受誰的虐待了,要好好補補身體的,身體要強壯才行滴!”

“有點胖哦,要多鍛煉啊!”

“不能太胖啊,要為自己制作運動減肥表了!” 3.4程序清單文件:AndroidManifest.xml 每一個Android項目都包含一個清單(Manifest)文件--AndroidManifest.xml,它存儲在項目層次中的最底層。清單可以定義應用程序及其組件的結構和元數據。

它包含了組成應用程序的每一個組件(活動、服務、內容提供器和廣播接收器)的節點,并使用Intent過濾器和權限來確定這些組件之間以及這些組件和其他應用程序是如何交互的。

因本程序使用了2個Activity,故對AndroidManifest.xml有一定的修改,內容如下:

package=“com.halcyon”

android:versionCode=“1”

android:versionName=“1.0”>

android:label=“@string/app_name”>

四、程序功能測試及截圖 4.1工程項目目錄

4.2程序運行界面:

4.3未填身高提示:

4.4計算示例:

五、課程設計(實訓)總結

通過本次實訓:

1)練習、鞏固了所學Java理論知識,提示了編程技巧;

2)體驗到利用網絡查找文檔、解決問題的便利;

3)有幸了解到Android開發平臺已及Android程序設計思想與方法;

4)開拓了視野,了解到計算機應用的廣泛性,為用計算機解決實際問題打下了基礎。

第四篇:Android 實訓總結

Android實訓總結

——XXXX 三周的Android 實訓,已接近尾聲。在這短暫的三周之內,有成功、有失敗;有喜悅、有辛酸。在實訓老師的帶領下,我學會了很多。我們小組在實訓老師的協助下最終成功的完成實訓項目。

實訓前二周,由于我在java基礎方面的知識比較薄弱,學習重點放在了java基礎學習上,兼顧android學習。Java基礎學習: 內容:

(1)1.bean-實體類分析。2.功能分析。3.語義模型、關系模型、界面模型、流程圖。4.代碼分析、DAO接口實現。

(2)完成老師每日給的java 基礎作業,達到復習的目的。每日老師給的練習都有針對性,認真的完成練習,很好的達到了復習java基礎的目的。成果: 能針對一個簡單 java 或Android 項目,(1)分析出對象、實體類,元數據(2)功能分析 并畫出對應的功能界面

(3)數據庫分析: 作出語義模型、關系模型、界面模型、流程圖(4)進行代碼分析,并實現DAO。

獨立完成本次項目的代碼框架、DAO接口以及DAO實現.Java基礎作業

Android學習: 內容:

(1).以新聞客服端為例,講解了android開發的一個典型流程。

(2).android 如何調試 如何使用log類inf(i)、debug(d)、error---logcat

(3).android需要整個應用范圍訪問某類數據(session--user)

Application 的使用 A,靜態變量(單例模式)

B,復寫android Application app = getApplication()app.setxxx()appsetxxx()4.MVC 編輯表單和添加表單公用

(5).android五大布局【LinearLayout、FrameLayout、AbsoulteLayoutRelativeLayout和TableLayout】 主要講解了LinearLayout、FrameLayout,LinearLayout---權重Layout_weight、Layout_grayout(6)Intent 頁面的跳轉,值傳遞,獲取上下文。

(7)數據庫操作【以新聞客服端--Category 新聞類 為例】:

1.創建數據庫和表,進行數據初始化

2.對表的 增刪改查 操作 3.游標Curser 的使用。

(6)項目開發:熟悉項目開發流程,能獨立完成簡單的項目開發。

成果:

練習實現簡單的頁面布局,獨立完成新聞客服端的開發流程---在原有的基礎上擴展業務。

最后一周,項目開發 我們小組抽取的項目是----------個人健康衛士

個人獨立完成的模塊:

1、代碼框架

2、實體類分析、父類方法重寫、構造方法。

3、DAO 接口實現,提供數據。

單元測試,對所有DAO 接口,方法進行測試并編譯通過。

4、登錄、注冊實現。

異常處理:

A、登錄提交時,用戶名、密碼不能為空,否則不與提交。

數據庫返回登錄信息,處理登錄成功與否的異常。B、注冊提交時,檢查注冊用戶名,密碼不能為空,密碼與確認密碼要相同,否則不與提交注冊。

項目完成總結心得體會。

1.個人:

在項目剛啟動時,我只在java 方面比較擅長,做的模塊都是涉及java基礎方面的知識。對UI 方面缺乏信心,但隨著項目的推進,對UI 方面見的多了解的多了,也能獨立完成UI方面的模塊。在這次項目中獨立完成登錄,注冊模塊。

對于每一個項目開發,都需端正態度,量力而行,發揮自己的長處,這樣不僅有利于促進團隊項目開發的進度,還有利于把自己代入這個項目。當自己融入這個項目時,就能多思考。并在不影響項目開發進度的前提下,思考這里為什么要這樣做,這樣做有什么用處。這樣是一個自我學習的過程,這里本來不會做,但是經過這個項目或這個模塊后,這里也會做了,把不會的變成會的,把別人的知識變成自己的。2.團隊合作:

項目啟動時,因為這個項目主要是UI 項目,而我在這方面基礎知識比較差,主要負責了涉及java方面的模塊ODA實現。在項目分析時,提的建議較多與項目組長之間發生摩擦。在項目老師的協助下,確定項目分析,確定分工模塊,最終較為成功的完成了我們組的項目。

當一個團隊合作時,并不是遇到的每個團隊,團隊成員都令你滿意、每個團隊都可以融洽相處。這個團隊之所以形成,主要目的為了成功完成這個項目。進入團隊先要明白進入團隊的目的,這個團隊成立的目的。明白了這兩點,許多在團隊中遇到的問題都可以避開或很好的解決。所有成員都圍繞如何能更好更完善的完成項目為主。當然在遇到必然可能影響到項目開發進度的問題時,還需及時解決。

3、項目開發

在這次項目中,本著利用自己擅長的部分,加工加點的完成了DAO接口實現模塊并實現所有的單元測試。為項目UI 后續進度提供了較為完善的后臺數據、接口服務。每個項目開發的過程,都需實事求是、踏實做事。不為面子,虛報自己的能力,能做什么能做多少、都要根據自己的職業能力來下定論。遇到技術問題,自己能獨立解決就獨立解決,不能就及時向他人求教或自己查找資料自學。在項目開發中若有自己比較好的意見(先自己確定以目前技術是實時可行的、對項目開發或功能實現有利的意見),要向項目管理和項目其他隊員提出,看是否采納。

第五篇:android實訓總結

Android實訓總結

黑龍江農業工程職業學院 2011年11月26日星期六

Android實訓總結

經過了將近兩個月的學習,我們的android實訓課也馬上接近了尾聲。在這階段實訓中,我學到了很多,在專業課方面的進展也很大。由于我們剛剛結束了java課程,馬上開了android實訓課,而android和java之間又有很大的聯系,所以,我們學習android也比較容易入門。最終得到的成效也很好。下面,我針對這一陣的學習進行一下總結:

一、android基礎知識:

1.環境的配置:

(1)配置Java程序開發環境

(2)安裝并漢化Eclipse(JDK)

(3)Android SDK的安裝

(4)ADT的安裝及配置

(5)Android模擬器的配置

2.第一個簡單的Android程序(HELLO ANDROID):

(1)創建一個Android應用程序:

打開eclipse開發工具——文件——新建——項目——android——android project——下一步

(2)應用程序編寫:

完成程序資源的設置

完成界面布局的設置

完成程序的事件處理

完成程序的總體配置

應用程序測試

部署應用程序到Android手機(對應用程序進行打包)

3、控件:

在Android學習中,每一個應用都需要一些空間,在這一個月的學習當中,我們也接觸了很多的控件:

(1)TextView:用來顯示文本標簽的控件

(2)ListView:用來顯示一個列表的控件

(3)Toast:是Android提供的“快顯訊息”類

(4)EditText:編輯框,用于輸入信息

(5)RadioGroup、RadioButton:單項選擇

(6)CheckBox:多項選擇

(7)Spinner:下拉菜單

(8)AutoCompleteTextView:自動提示

(9)DataPicker、TimePicker:時間和日期事件

(10)Button:按鈕

通過這些控件,使得我們在編輯程序的時候能夠很完美的顯示在手機上,使之成為一個真正的應用。

下載Android實訓實習報告總結(匯編)word格式文檔
下載Android實訓實習報告總結(匯編).doc
將本文檔下載到自己電腦,方便修改和收藏,請勿使用迅雷等下載。
點此處下載文檔

文檔為doc格式


聲明:本文內容由互聯網用戶自發貢獻自行上傳,本網站不擁有所有權,未作人工編輯處理,也不承擔相關法律責任。如果您發現有涉嫌版權的內容,歡迎發送郵件至:645879355@qq.com 進行舉報,并提供相關證據,工作人員會在5個工作日內聯系你,一經查實,本站將立刻刪除涉嫌侵權內容。

相關范文推薦

    個人總結 android實訓

    個人總結 這是進入大學以來的第二次實訓。這次實訓的主要內容是APP開發,所選擇的平臺是android平臺。老師在第一堂課的時候也就說過我們現在離一個開發人員所要求的水準相差......

    android實訓心得(推薦)

    項目總結 時間過的好快,為期三個月的實訓生活即將結束了,每一次的實訓我們都受益匪淺,我們學到的不僅僅是課內還有課外,實訓讓我們的課內知識得到了鞏固,專業知識、編程水平都有......

    實習實訓報告模版

    重慶科技學院學生實習(實訓)總結報告學院:______冶金學院____專業班級:_冶普11_-試一__ 學生姓名:_____陳龍偉_______ 學號:_2011440761__實習(實訓)地點:四川達州鋼鐵集團、......

    實訓實習報告格式

    附件二 實訓實習報告格式 封面樣式(此頁不要頁眉,紙張均為A4)安徽廣播電視大學城市建設學院 (空一行) 實訓實習報告(小1號楷體,居中) (1號宋體,居中)專業:(三號仿宋) 班級: 學生姓名: 學號:×......

    實訓實習報告

    實訓實習報告 實訓實習報告1 xx年2月17日,我來到閩江學院計算機科學系機房實習,我們班主任帶領我們看了機房的大致情況,我們的大致工作就是維護計算機、集線器(hub)和交換機、網......

    中級會計實訓實習報告總結

    時間飛逝,轉眼見一年的大學生活已接近尾聲了,專業課會計理論知識學了幾個月, 接著進行了中級會計3周的實訓。到今天三周實訓已經結束了,回想這段時間以來我們每天忙碌的身影,真感......

    中級會計實訓實習報告總結

    [中級會計實訓實習報告總結] 時間飛逝,轉眼見一年的大學生活已接近尾聲了,專業課會計理論知識學了幾個月, 接著進行了中級會計3周的實訓,中級會計實訓實習報告總結。到今天......

    計算機實訓報告-計算機實訓報告 實習總結

    計算機實訓報告-計算機實訓報告 實習總結 一 : 計算機實訓報告 實習總結 一、實訓目的 1、 貫徹堅強實踐環節和理論聯系實際的教學原則,增加學生對專業感性認識的深廣度,運用......

主站蜘蛛池模板: 在熟睡夫面前侵犯我在线播放| 无码少妇一区二区浪潮免费| 亚洲精品国偷拍自产在线观看| 国产剧情福利av一区二区| 无码乱码天天更新| 亚洲成av人片天堂网老年人| 亚洲av无码一区二区三区天堂| 欧美疯狂做受xxxx高潮小说| 欧美日韩在线视频一区| 大香伊蕉在人线国产网站首页| 人妻无码系列一区二区三区| 日韩内射美女片在线观看网站| 亚洲精品久久久久久不卡精品小说| 被技师按摩到高潮的少妇| 亚洲精品久久久久久动漫| 国产精品亚洲а∨无码播放麻豆| 内射极品少妇xxxxxhd| 成年女性特黄午夜视频免费看| 99国内精品久久久久久久| 亚洲综合制服丝袜另类| 成年午夜无码av片在线观看| 色欲国产精品一区成人精品| 精品av一区二区三区不卡| 久久亚洲精品中文字幕| 人妻夜夜添夜夜无码av| 欧美人与动牲交片免费| 男人边吃奶边做好爽免费视频| 中文字幕人妻中文av不卡专区| 欧洲熟妇色xxxx欧美老妇软件| 久久久久99精品成人片直播| 18禁床震无遮掩视频| 激情五月色综合国产精品| 国产男女猛烈视频在线观看| 国产成人精品日本亚洲| 久久国产亚洲精品超碰热| 18黑白丝水手服自慰喷水网站| 无码熟妇人妻av在线影片最多| 国产亚洲综合一区二区三区| 西西人体自慰扒开下部93| 精品无码一区二区三区爱欲| 国产香蕉一区二区三区在线视频|