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

Android實(shí)訓(xùn)報(bào)告

時(shí)間:2019-05-15 03:34:46下載本文作者:會員上傳
簡介:寫寫幫文庫小編為你整理了多篇相關(guān)的《Android實(shí)訓(xùn)報(bào)告》,但愿對你工作學(xué)習(xí)有幫助,當(dāng)然你在寫寫幫文庫還可以找到更多《Android實(shí)訓(xùn)報(bào)告》。

第一篇:Android實(shí)訓(xùn)報(bào)告

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

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

在Android編程過程中鞏固熟悉了Java的編程。由於Android應(yīng)用程序的開發(fā)離不開Java的支持,所以基礎(chǔ)的Java知識是必須的。Android系統(tǒng)是基於Linux的手機(jī)操作系統(tǒng)平臺,要深入學(xué)習(xí)Android,不僅僅是有Java和Android應(yīng)用開發(fā),必須要具備Linux,C/C++高級編程才能深入的涉及Android Framework和Android內(nèi)核開發(fā)。成為Android開發(fā)的高素質(zhì)人才。所以,在後續(xù)對Android的學(xué)習(xí)中可能會看一些較底層的書籍。

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

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

第二篇:Android實(shí)訓(xùn)報(bào)告

Android學(xué)院:****** 班級:****** 學(xué)號:****** 姓名:******

實(shí)訓(xùn)報(bào)告

目錄

一、實(shí)訓(xùn)背景及目的要求.........................................................................................................................3 1.1背景簡介.....................................................................................................................................3 1.2實(shí)訓(xùn)目的及要求...........................................................................................................................3

二、設(shè)計(jì)思路...........................................................................................................................................3 2.1設(shè)計(jì)題目.....................................................................................................................................3 2.2功能分析.....................................................................................................................................4 2.3模塊劃分.....................................................................................................................................4

三、設(shè)計(jì)實(shí)現(xiàn)及代碼分析.........................................................................................................................4 3.1第一個(gè)Activity.............................................................................................................................4 3.1.1布局文件:main.xml:........................................................................................................4 3.1.2源代碼文件:MainActivity.java............................................................................................7 3.2第二個(gè)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工程項(xiàng)目目錄............................................................................................................................14 4.2程序運(yùn)行界面:.........................................................................................................................14 4.3未填身高提示:.........................................................................................................................15 4.4計(jì)算示例:................................................................................................................................15

五、課程設(shè)計(jì)(實(shí)訓(xùn))總結(jié)....................................................................................................................16

一、實(shí)訓(xùn)背景及目的要求

1.1背景簡介

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

Android以Linux為核心的Android行動平臺,使用Java作為編程語言。本實(shí)訓(xùn)是在學(xué)習(xí)java語言程序設(shè)計(jì)的基礎(chǔ)上進(jìn)行的一次綜合實(shí)踐。通過綜合訓(xùn)練,要求學(xué)生掌握java語言程序設(shè)計(jì)的基本技能和Android編程的應(yīng)用,并較系統(tǒng)地掌握J(rèn)AVA語言程序設(shè)計(jì)開發(fā)方法以及幫助文件的使用等,使學(xué)生通過本次實(shí)訓(xùn),能夠進(jìn)行獨(dú)立的Android應(yīng)用程序開發(fā),能夠在實(shí)際操作中得到進(jìn)一步的提高,為以后的學(xué)習(xí)和工作打下良好的基礎(chǔ)。

目的:

1、培養(yǎng)學(xué)生運(yùn)用所學(xué)課程Java語言程序設(shè)計(jì)的理論知識和技能,分析解決計(jì)算機(jī)實(shí)際應(yīng)用中的問題的能力。

2、培養(yǎng)學(xué)生在Java語言程序設(shè)計(jì)的基礎(chǔ)上,開發(fā)Android應(yīng)用程序的思想和方法。

3、培養(yǎng)學(xué)生調(diào)查研究、查閱技術(shù)文獻(xiàn)、資料、手冊以及編寫技術(shù)文獻(xiàn)的能力。

通過課程設(shè)計(jì),要求學(xué)生在指導(dǎo)教師的指導(dǎo)下,獨(dú)立完成課程設(shè)計(jì)的全部內(nèi)容,包括:

1、確定開發(fā)的程序,收集和調(diào)查有關(guān)技術(shù)資料。

2、按軟件工程步驟進(jìn)行程序設(shè)計(jì)。

3、對完成的程序進(jìn)行測試和完善。

4、完成課程設(shè)計(jì)報(bào)告。

二、設(shè)計(jì)思路 2.1設(shè)計(jì)題目

以Android系統(tǒng)的UI界面開發(fā)為基礎(chǔ),設(shè)計(jì)一個(gè)可以簡單計(jì)算標(biāo)準(zhǔn)體重的應(yīng)用程序,要求以2個(gè)Acitivity實(shí)現(xiàn),第一個(gè)Activity作為輸入界面,第二個(gè)Activity作為結(jié)果輸出界面,具體實(shí)現(xiàn)細(xì)節(jié)自行設(shè)計(jì)。2.2功能分析

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

2.3模塊劃分

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

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

第二個(gè)Activity:一個(gè)文本顯示區(qū)(TextViw)顯示計(jì)算結(jié)果,一個(gè)可選文本顯示區(qū)(TextView)顯示提示信息。

三、設(shè)計(jì)實(shí)現(xiàn)及代碼分析 3.1第一個(gè)Activity 3.1.1布局文件:main.xml:

采用絕對布局,以實(shí)現(xiàn)控件精準(zhǔn)顯示;

RadioGroup包含兩個(gè)RadioButton,以實(shí)現(xiàn)性別男女選擇;

兩個(gè)供輸入的EditText限定了輸入類型為numberDecimal,以確保只接收數(shù)字型數(shù)據(jù)。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布局文件,為計(jì)算按鈕(Button)注冊事件監(jiān)聽,添加事件響應(yīng)代碼; 實(shí)現(xiàn)未填身高提示:

Toast.makeText(MainActivity.this, R.string.tall_hint, Toast.LENGTH_SHORT).show();實(shí)現(xiàn)Activity之間跳轉(zhuǎn)設(shè)置:

intent.setClass(MainActivity.this, ResultActivity.class);實(shí)現(xiàn)Activity之間數(shù)據(jù)封裝傳輸: 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);

//默認(rèn)為男性選中

bt.setOnClickListener(this);}

} @Override

public void onClick(View v){

} // TODO Auto-generated method stub

/**事件響應(yīng)代碼,獲取性別、身高,判斷是否輸入了實(shí)際體重 * 新建Intent對象用于Activity之間跳轉(zhuǎn),及傳輸輸入的數(shù)據(jù) * **/

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);

//存放數(shù)據(jù),以封裝傳輸

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

R.string.tall_hint,//注冊點(diǎn)擊事件監(jiān)聽

Toast.LENGTH_SHORT).show();3.2第二個(gè)Activity 3.2.1布局文件:result.xml 絕對布局,三個(gè)TextView,內(nèi)容用紫色顯示,提示標(biāo)號用綠色顯示,以達(dá)到較醒目的感覺。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,取得傳入的數(shù)據(jù)信息,以男性:(身高cm-80)×70﹪=標(biāo)準(zhǔn)體重

女性:(身高cm-70)×60﹪=標(biāo)準(zhǔn)體重 的標(biāo)準(zhǔn)來計(jì)算標(biāo)準(zhǔn)體重,方法

private String getWeight(double height, String sex)實(shí)現(xiàn)此功能;

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

方法private String form(double d)實(shí)現(xiàn)數(shù)據(jù)格式化。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﹪=標(biāo)準(zhǔn)體重

* 女性:(身高cm-70)?á60﹪=標(biāo)準(zhǔn)體重

* **/

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){

/*根據(jù)用戶是否輸入了實(shí)際體重來判斷是否添加顯示提示信息 * 如果輸入了實(shí)際體重,按以下原則給用戶以健康提示 * 標(biāo)準(zhǔn)體重正負(fù)10﹪為正常體重

* 標(biāo)準(zhǔn)體重正負(fù)10﹪~ 20﹪為體重過重或過輕 * 標(biāo)準(zhǔn)體重正負(fù)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妳的標(biāo)準(zhǔn)體重為“+form(weight)+”公斤。n“;weight =(height-80)*0.7;result = ”這位先生,n你的標(biāo)準(zhǔn)體重為“+form(weight)+”公斤。n“;

}

}

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

}

//格式化數(shù)據(jù)輸出

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

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

本程序所引用的strings.xml內(nèi)容為:

NomalWeight

計(jì)算結(jié)果

計(jì)算你/妳的標(biāo)準(zhǔn)體重!

性別:

身高:

當(dāng)前體重(可選):

男的

女的

計(jì)算

你沒填身高哦!

溫馨提示:

體重適中,要保持喲!

“有點(diǎn)偏瘦哦,應(yīng)該再多吃些東西啊!”

“一定是受誰的虐待了,要好好補(bǔ)補(bǔ)身體的,身體要強(qiáng)壯才行滴!”

“有點(diǎn)胖哦,要多鍛煉啊!”

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

它包含了組成應(yīng)用程序的每一個(gè)組件(活動、服務(wù)、內(nèi)容提供器和廣播接收器)的節(jié)點(diǎn),并使用Intent過濾器和權(quán)限來確定這些組件之間以及這些組件和其他應(yīng)用程序是如何交互的。

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

package=“com.halcyon”

android:versionCode=“1”

android:versionName=“1.0”>

android:label=“@string/app_name”>

四、程序功能測試及截圖 4.1工程項(xiàng)目目錄

4.2程序運(yùn)行界面:

4.3未填身高提示:

4.4計(jì)算示例:

五、課程設(shè)計(jì)(實(shí)訓(xùn))總結(jié)

通過本次實(shí)訓(xùn):

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

2)體驗(yàn)到利用網(wǎng)絡(luò)查找文檔、解決問題的便利;

3)有幸了解到Android開發(fā)平臺已及Android程序設(shè)計(jì)思想與方法;

4)開拓了視野,了解到計(jì)算機(jī)應(yīng)用的廣泛性,為用計(jì)算機(jī)解決實(shí)際問題打下了基礎(chǔ)。

第三篇:Android 實(shí)訓(xùn)總結(jié)

Android實(shí)訓(xùn)總結(jié)

——XXXX 三周的Android 實(shí)訓(xùn),已接近尾聲。在這短暫的三周之內(nèi),有成功、有失敗;有喜悅、有辛酸。在實(shí)訓(xùn)老師的帶領(lǐng)下,我學(xué)會了很多。我們小組在實(shí)訓(xùn)老師的協(xié)助下最終成功的完成實(shí)訓(xùn)項(xiàng)目。

實(shí)訓(xùn)前二周,由于我在java基礎(chǔ)方面的知識比較薄弱,學(xué)習(xí)重點(diǎn)放在了java基礎(chǔ)學(xué)習(xí)上,兼顧android學(xué)習(xí)。Java基礎(chǔ)學(xué)習(xí): 內(nèi)容:

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

(2)完成老師每日給的java 基礎(chǔ)作業(yè),達(dá)到復(fù)習(xí)的目的。每日老師給的練習(xí)都有針對性,認(rèn)真的完成練習(xí),很好的達(dá)到了復(fù)習(xí)java基礎(chǔ)的目的。成果: 能針對一個(gè)簡單 java 或Android 項(xiàng)目,(1)分析出對象、實(shí)體類,元數(shù)據(jù)(2)功能分析 并畫出對應(yīng)的功能界面

(3)數(shù)據(jù)庫分析: 作出語義模型、關(guān)系模型、界面模型、流程圖(4)進(jìn)行代碼分析,并實(shí)現(xiàn)DAO。

獨(dú)立完成本次項(xiàng)目的代碼框架、DAO接口以及DAO實(shí)現(xiàn).Java基礎(chǔ)作業(yè)

Android學(xué)習(xí): 內(nèi)容:

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

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

(3).android需要整個(gè)應(yīng)用范圍訪問某類數(shù)據(jù)(session--user)

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

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

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

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

1.創(chuàng)建數(shù)據(jù)庫和表,進(jìn)行數(shù)據(jù)初始化

2.對表的 增刪改查 操作 3.游標(biāo)Curser 的使用。

(6)項(xiàng)目開發(fā):熟悉項(xiàng)目開發(fā)流程,能獨(dú)立完成簡單的項(xiàng)目開發(fā)。

成果:

練習(xí)實(shí)現(xiàn)簡單的頁面布局,獨(dú)立完成新聞客服端的開發(fā)流程---在原有的基礎(chǔ)上擴(kuò)展業(yè)務(wù)。

最后一周,項(xiàng)目開發(fā) 我們小組抽取的項(xiàng)目是----------個(gè)人健康衛(wèi)士

個(gè)人獨(dú)立完成的模塊:

1、代碼框架

2、實(shí)體類分析、父類方法重寫、構(gòu)造方法。

3、DAO 接口實(shí)現(xiàn),提供數(shù)據(jù)。

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

4、登錄、注冊實(shí)現(xiàn)。

異常處理:

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

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

項(xiàng)目完成總結(jié)心得體會。

1.個(gè)人:

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

對于每一個(gè)項(xiàng)目開發(fā),都需端正態(tài)度,量力而行,發(fā)揮自己的長處,這樣不僅有利于促進(jìn)團(tuán)隊(duì)項(xiàng)目開發(fā)的進(jìn)度,還有利于把自己代入這個(gè)項(xiàng)目。當(dāng)自己融入這個(gè)項(xiàng)目時(shí),就能多思考。并在不影響項(xiàng)目開發(fā)進(jìn)度的前提下,思考這里為什么要這樣做,這樣做有什么用處。這樣是一個(gè)自我學(xué)習(xí)的過程,這里本來不會做,但是經(jīng)過這個(gè)項(xiàng)目或這個(gè)模塊后,這里也會做了,把不會的變成會的,把別人的知識變成自己的。2.團(tuán)隊(duì)合作:

項(xiàng)目啟動時(shí),因?yàn)檫@個(gè)項(xiàng)目主要是UI 項(xiàng)目,而我在這方面基礎(chǔ)知識比較差,主要負(fù)責(zé)了涉及java方面的模塊ODA實(shí)現(xiàn)。在項(xiàng)目分析時(shí),提的建議較多與項(xiàng)目組長之間發(fā)生摩擦。在項(xiàng)目老師的協(xié)助下,確定項(xiàng)目分析,確定分工模塊,最終較為成功的完成了我們組的項(xiàng)目。

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

3、項(xiàng)目開發(fā)

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

第四篇:Android實(shí)訓(xùn)實(shí)習(xí)報(bào)告總結(jié)

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

鞏固和學(xué)習(xí)了更多的Android的控件、布局、Activity、Service等一系列基礎(chǔ)知識,對整個(gè)Android的開發(fā)有了大致的了解。android入門后,只會照著別人的葫蘆來畫瓢,即沒有設(shè)計(jì)思想,也沒有自主原創(chuàng)的代碼,不好不好

于是乎,進(jìn)了公司跟著項(xiàng)目走,用項(xiàng)目來驅(qū)動自己去學(xué)習(xí)和提高

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

二、新掌握的Java基礎(chǔ)學(xué)習(xí)

2.1、Activity View、Surfaceview的理解

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

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

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

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

2.2、android-pulltorefresh

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

成果: ListView能滿足一個(gè)Android 項(xiàng)目的列表:

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

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

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

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

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

android-satellite-menu 類似Path的左下角動畫旋轉(zhuǎn)菜單

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

2.4、異常處理

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

注冊提交時(shí),檢查注冊用戶名,密碼不能為空,密碼與確認(rèn)密碼要相同,否則不與提交注冊。

三、Android Xutils 框架的使用

在開發(fā)中還學(xué)習(xí)了一套強(qiáng)大的快速開發(fā)框架,Android Xutils 框架。

3.1、xUtils使用

xUtils 包含了很多實(shí)用的android工具。

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

3.2、DbUtils數(shù)據(jù)庫

android中的orm框架,一行代碼就可以進(jìn)行增刪改查; 支持事務(wù),默認(rèn)關(guān)閉;

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

支持綁定外鍵,保存實(shí)體時(shí)外鍵關(guān)聯(lián)實(shí)體自動保存或更新; 自動加載外鍵關(guān)聯(lián)實(shí)體,支持延時(shí)加載;

支持鏈?zhǔn)奖磉_(dá)查詢,更直觀的查詢語義,參考下面的介紹或sample中的例子。

3.3、ViewUtils視圖

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

3.4、HttpUtils網(wǎng)絡(luò)請求 支持同步,異步方式的請求;

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

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

下載支持301/302重定向,支持設(shè)置是否根據(jù)Content-Disposition重命名下載的文件; 返回文本內(nèi)容的GET請求支持緩存,可設(shè)置默認(rèn)過期時(shí)間和針對當(dāng)前請求的過期時(shí)間。

3.5、BitmapUtils圖片異步加載

加載bitmap的時(shí)候無需考慮bitmap加載過程中出現(xiàn)的oom和android容器快速滑動時(shí)候出現(xiàn)的圖片錯(cuò)位等現(xiàn)象; 支持加載網(wǎng)絡(luò)圖片和本地圖片;

內(nèi)存管理使用lru算法,更好的管理bitmap內(nèi)存;

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

四:發(fā)現(xiàn)式學(xué)習(xí)

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

4.1、Bitmap的生成

Bitmap實(shí)現(xiàn)在android.graphics包中。但是Bitmap類的構(gòu)造函數(shù)是私有的,外面并不能實(shí)例化,只能是通過JNI實(shí)例化。這必然是 某個(gè)輔助類提供了創(chuàng)建Bitmap的接口,而這個(gè)類的實(shí)現(xiàn)通過JNI接口來實(shí)例化Bitmap的,這個(gè)類就是BitmapFactory。

4.2、必要知識認(rèn)知

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

利用Options的下列屬性,可以指定decode的選項(xiàng):

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

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

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

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

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

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

2、實(shí)習(xí)任務(wù)概述:

1.面向?qū)ο缶幊蹋ǚ庋b,繼承,多態(tài))。

2.this關(guān)鍵字使用,JavaBean定義規(guī)范以及作用

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

4.package(創(chuàng)建包)import(導(dǎo)包)的使用以及作用

5.super關(guān)鍵字使用

6.方法的重寫(override)

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

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

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

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

11.接口(interface)的定義 12.接口的實(shí)現(xiàn)(implements)13.接口和抽象類的區(qū)別

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

15.數(shù)組的使用。

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

18.日期類Date,SimpleDateFormat的使用,數(shù)學(xué)類Math和Random類的使用

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

3、實(shí)習(xí)所用軟件簡介: Eclipse

Eclipse 是一個(gè)開放源代碼的、基于java的可擴(kuò)展開發(fā)平臺。就其本身而言,它只是一個(gè)框架 和一組服務(wù),用于通過插件組件構(gòu)建開發(fā)環(huán)境。幸運(yùn)的是,Eclipse 附帶了一個(gè)標(biāo)準(zhǔn)的插件集,包括 Java 開發(fā)工具(Java Development Tools,JDT)。

Eclipse 還包括插件開發(fā)環(huán)境(Plug-in Development Environment,PDE),這個(gè)組件主要針對希望擴(kuò)展 Eclipse 的軟件開發(fā)人員,因?yàn)樗试S他們構(gòu)建與 Eclipse 環(huán)境無縫集成的工具。由于 Eclipse 中的每樣?xùn)|西都是插件,對于給 Eclipse 提供插件,以及給用戶提供一致和統(tǒng)一的集成開發(fā)環(huán)境而言,所有工具開發(fā)人員都具有同等的發(fā)揮場所。

JDK JDK(Java Development Kit,Java開發(fā)包,Java開發(fā)工具)是一個(gè)寫Java的applet和應(yīng)用程序的程序開發(fā)環(huán)境。它由一個(gè)處于操作系統(tǒng)層之上的運(yùn)行環(huán)境還有開發(fā)者編譯,調(diào)試和運(yùn)行用Java語言寫的applet和應(yīng)用程序所需的工具組成。

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

JDK包含的基本組件包括:

javac – 編譯器,將源程序轉(zhuǎn)成字節(jié)碼

jar – 打包工具,將相關(guān)的類文件打包成一個(gè)文件

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

jdb – debugger,查錯(cuò)工具

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

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

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

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

在Android編程過程中鞏固熟悉了Java的編程。由于Android應(yīng)用程序的開發(fā)離不開Java的支持,所以基礎(chǔ)的Java知識是必須的。Android系統(tǒng)是基于Linux的手機(jī)操作系統(tǒng)平臺,要深入系統(tǒng)的學(xué)習(xí)Android,不僅僅是有Java和Android應(yīng)用開發(fā),必須要具備Linux,CC++高級編程才能深入的涉及Android Framework和Android內(nèi)核開發(fā)。成為Android開發(fā)的高素質(zhì)人才。所以,在后續(xù)對Android的學(xué)習(xí)中可能會看一些較底層的書籍。

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

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

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

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

2)修改classpath文件: 該文件可能存在該項(xiàng):

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

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

五、實(shí)習(xí)心得

Android四大組件、Android資源訪問、圖形/圖像處理、事件處理機(jī)制、Android輸入/輸出處理、音頻/視頻多媒體應(yīng)用開發(fā)、OpenGL與3D應(yīng)用開發(fā)、網(wǎng)絡(luò)通信編程、Android平臺的Web Service、傳感器應(yīng)用開發(fā)、GPS應(yīng)用開發(fā)、Google Map服務(wù)等都是非常重要的知識點(diǎn)以及學(xué)習(xí)領(lǐng)域。

1.IDE

這半年來,從Eclipse到Android Studio,經(jīng)歷了兩個(gè)IDE,在這里做一下簡單的評價(jià)。

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

Android Studio的智能提示比Eclipse強(qiáng)多了,快捷鍵也很強(qiáng)大。至于工程的組織結(jié)構(gòu),Android Studio和Eclipse的差距還是很大的,但習(xí)慣了也不覺得有啥,哪種都行。

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

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

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

Android Studio一個(gè)不好的地方就是升級太快,在半年的 時(shí)間內(nèi),我從0.8.1升級到1.0。。可惡的是,每次升級,Gradle也升級,并且還斷代。。雖然么官方現(xiàn)在是版本穩(wěn)定了,因?yàn)镮DEA已經(jīng)出了新版本了,但我試過1.0出事了,直接撤回0.9.4。。

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

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

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

master分支是正式分支,在沒確保穩(wěn)定之前是不會推東西上去的,dev分支是開發(fā)分支,而每個(gè)人本地也有一個(gè)dev分支,大家可以根據(jù)自己的需求在本地開多幾個(gè)分支,這樣就不會出現(xiàn)master分支無法發(fā)布的現(xiàn)象,因?yàn)閙aster分支永遠(yuǎn)是正確的。

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

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

有個(gè)不好的地方就是,可以直接操作表對象,這樣很可能就會將不想存的數(shù)據(jù)存進(jìn)表里,于是就封裝了一下,不能直接操作表對象,而是操作實(shí)體對象,數(shù)據(jù)庫的操作都是通過實(shí)體對象的接口方法,而接口方法調(diào)用的就是表對象的方法。4.網(wǎng)絡(luò)庫和異步庫

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

一開始是自己封裝的網(wǎng)絡(luò)庫,但封裝得太復(fù)雜了,很難維護(hù),而且它不是一個(gè)簡單的網(wǎng)絡(luò)庫,是一個(gè)網(wǎng)絡(luò)異步和本地異步一起實(shí)現(xiàn)的庫,基于大量的回調(diào),使用起來也是不錯(cuò)的。

后來換成Volley,不過就發(fā)現(xiàn)Volley的實(shí)現(xiàn)不太滿足我們的要求,就用OkHttp將Volley的底層改掉,然后上層的接口形式采用鏈?zhǔn)秸{(diào)用的方式,代碼的形式更加簡單。

原生的異步AsnyTask簡直就是個(gè)坑,它就是一個(gè)任務(wù)隊(duì)列,多個(gè)任務(wù)執(zhí)行并不是并發(fā)的,有可能就卡在其中一個(gè)出不來了。。試過debug的時(shí)候跳進(jìn)去就跳不出來了。。后來就自己寫了一個(gè),也是采用鏈?zhǔn)秸{(diào)用的接口形式。

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

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

第五篇:個(gè)人總結(jié) android實(shí)訓(xùn)

個(gè)人總結(jié)

這是進(jìn)入大學(xué)以來的第二次實(shí)訓(xùn)。這次實(shí)訓(xùn)的主要內(nèi)容是APP開發(fā),所選擇的平臺是android平臺。老師在第一堂課的時(shí)候也就說過我們現(xiàn)在離一個(gè)開發(fā)人員所要求的水準(zhǔn)相差十萬八千里,所以通過這一周的實(shí)訓(xùn),我只是了解到了開發(fā)APP的一個(gè)基本框架。首先要配置java環(huán)境變量,人后再進(jìn)行一些界面上的操作。用Eclipse當(dāng)作集成開發(fā)環(huán)境來使用,我感覺在操作過程中,編寫代碼才是重點(diǎn),老師在課堂上向我們進(jìn)行演示,但是抄寫代碼過后還是出現(xiàn)了很多的錯(cuò)誤,但是Eclipse平臺上檢查錯(cuò)誤變得更加便當(dāng),更加智能化的檢索并更正錯(cuò)誤。

由于這次實(shí)訓(xùn)的時(shí)間很短,當(dāng)我剛剛開始對android有點(diǎn)入門的時(shí)候,實(shí)訓(xùn)卻就要結(jié)束了,這次實(shí)訓(xùn)學(xué)到了很多,但是難一點(diǎn)卻還有些不知道。這次實(shí)訓(xùn)比上次要累很多,但是我相信,付出就一定會有回報(bào)。

xxx

2015年4月

下載Android實(shí)訓(xùn)報(bào)告word格式文檔
下載Android實(shí)訓(xùn)報(bào)告.doc
將本文檔下載到自己電腦,方便修改和收藏,請勿使用迅雷等下載。
點(diǎn)此處下載文檔

文檔為doc格式


聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn)自行上傳,本網(wǎng)站不擁有所有權(quán),未作人工編輯處理,也不承擔(dān)相關(guān)法律責(zé)任。如果您發(fā)現(xiàn)有涉嫌版權(quán)的內(nèi)容,歡迎發(fā)送郵件至:645879355@qq.com 進(jìn)行舉報(bào),并提供相關(guān)證據(jù),工作人員會在5個(gè)工作日內(nèi)聯(lián)系你,一經(jīng)查實(shí),本站將立刻刪除涉嫌侵權(quán)內(nèi)容。

相關(guān)范文推薦

    android實(shí)訓(xùn)心得(推薦)

    項(xiàng)目總結(jié) 時(shí)間過的好快,為期三個(gè)月的實(shí)訓(xùn)生活即將結(jié)束了,每一次的實(shí)訓(xùn)我們都受益匪淺,我們學(xué)到的不僅僅是課內(nèi)還有課外,實(shí)訓(xùn)讓我們的課內(nèi)知識得到了鞏固,專業(yè)知識、編程水平都有......

    ANDROID實(shí)訓(xùn)心得體會(共5篇)

    項(xiàng)目總結(jié) 時(shí)間過的好快,為期三個(gè)月的實(shí)訓(xùn)生活即將結(jié)束了,每一次的實(shí)訓(xùn)我們都受益匪淺,我們學(xué)到的不僅僅是課內(nèi)還有課外,實(shí)訓(xùn)讓我們的課內(nèi)知識得到了鞏固,專業(yè)知識、編程水平都有......

    android實(shí)訓(xùn)總結(jié)(最終定稿)

    Android實(shí)訓(xùn)總結(jié)黑龍江農(nóng)業(yè)工程職業(yè)學(xué)院 2011年11月26日星期六Android實(shí)訓(xùn)總結(jié) 經(jīng)過了將近兩個(gè)月的學(xué)習(xí),我們的android實(shí)訓(xùn)課也馬上接近了尾聲。在這階段實(shí)訓(xùn)中,我學(xué)到了很多,......

    ANDROID實(shí)訓(xùn)心得(共五則范文)

    android實(shí)習(xí)心得 剛開始接觸android感覺到它很有意思,在界面開發(fā)上和web也可以形成了相通的架構(gòu),更加方便,視覺上也是非常的酷,在前期我通過的大量的android sdk開發(fā)范例大全中......

    實(shí)訓(xùn)報(bào)告

    一、實(shí)訓(xùn)目的 1.通過本次實(shí)訓(xùn)讓學(xué)生能夠?qū)⑺鶎W(xué)的金融學(xué)理論知識運(yùn)用到實(shí)踐當(dāng)中,實(shí)現(xiàn)理論和實(shí)踐的結(jié)合,在實(shí)踐中鞏固知識,為我以后的工作和學(xué)習(xí)奠定初步的基礎(chǔ)。 2.通過本次實(shí)訓(xùn)讓......

    實(shí)訓(xùn)報(bào)告

    實(shí)訓(xùn)報(bào)告系部名稱:經(jīng)濟(jì)貿(mào)易學(xué)部 專業(yè):國際經(jīng)濟(jì)與貿(mào)易 姓名:張程 學(xué)號:10501135 實(shí)訓(xùn)單位:鳳凰會展公司 實(shí)訓(xùn)地點(diǎn):長春 實(shí)訓(xùn)時(shí)間:2013年9月23日至9月27日共五天長春種子展展會現(xiàn)狀及......

    實(shí)訓(xùn)報(bào)告

    營 銷 實(shí) 訓(xùn) 報(bào) 告 組長:王靖 組員:叢小淋、宋欣宇、王坤、陳佳楠 關(guān)福英、許志濤 市場營銷專業(yè)認(rèn)識實(shí)習(xí)報(bào)告 在我們接觸市場營銷專業(yè)課之前,我們專業(yè)特別的進(jìn)行了這次專業(yè)認(rèn)......

    實(shí)訓(xùn)報(bào)告

    實(shí)訓(xùn)報(bào)告 ——參觀貴研(易門)資源有限公司 2012年1月5日在學(xué)院領(lǐng)導(dǎo)和老師的帶領(lǐng)一下,我和幾個(gè)同學(xué)一起來到了易門,參觀貴研(易門)資源有限公司,雖然只有短短的一天,但是我感受良多,讓......

主站蜘蛛池模板: 亚洲va久久久噜噜噜久久| 精品国精品国产自在久国产不卡| 久久精品国产亚洲欧美成人| 久久香港三级台湾三级播放| 久久国产免费观看精品3| 超碰97人人做人人爱2020| 手机国产丰满乱子伦免费视频| 在线a亚洲v天堂网2019无码| 亚洲女人天堂| 亚洲av无码一区二区三区dv| 亚欧免费无码aⅴ在线观看蜜桃| 在线精品亚洲观看不卡欧| 欧美日韩精品一区二区三区不卡| 免费国产va在线观看中文字| 欧美裸体xxxx极品少妇| 一本久道中文无码字幕av| 国产精品久线在线观看| 69无码| 精品无人区麻豆乱码1区2区| 97精品依人久久久大香线蕉97| 国产欧美日韩在线在线播放| 无码人妻久久久一区二区三区| 国产成人麻豆亚洲综合无码精品| 无遮挡又黄又刺激又爽的视频| 无码gogo大胆啪啪艺术| 精品少妇无码一区二区三批| 国产极品美女到高潮| 日韩区欧美国产区在线观看| 92国产精品午夜福利| 超碰97人人模人人爽人人喊| 少妇熟女高潮流白浆| 国产成人综合久久免费导航| 2019精品手机国产品在线| 欧美另类精品xxxx人妖| 精品亚洲一区二区三区四区五区| 国产真实的和子乱拍在线观看| 亚洲男人av天堂午夜在| 日本xxxx色视频在线播放| 亚洲AV无码乱码在线观看性色| 国产成人久久久精品二区三区| 无码国产精品一区二区色情男同|