一、 開發(fā)環(huán)境安裝:

創(chuàng)新互聯(lián)是一家專業(yè)提供洞頭企業(yè)網(wǎng)站建設(shè),專注與做網(wǎng)站、成都網(wǎng)站制作、HTML5建站、小程序制作等業(yè)務(wù)。10年已為洞頭眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站建設(shè)公司優(yōu)惠進(jìn)行中。
1. 下載 Android SDK.
2. 如果使用Eclipse,請(qǐng)安裝 ADT 插件。
3. 下載最新的SDK工具和平臺(tái)。
二、創(chuàng)建Android項(xiàng)目
一個(gè)android項(xiàng)目包含了程序中用到的所有源代碼文件.使用Android SDK工具可以輕松的創(chuàng)建一個(gè)包含默認(rèn)目錄和文件的項(xiàng)目。
本節(jié)介紹如何使用eclipse或從命令行創(chuàng)建一個(gè)項(xiàng)目。
Create a Project with Eclipse
點(diǎn)擊工具中的 New .
在彈出的窗口中,打開Android目錄,選擇【Android Application Project】,點(diǎn)擊【next】.
Figure 1. The New Android App Project wizard in Eclipse.
3. 在彈出的窗口,如圖【Figure1】中,填入下列信息:
Application Name :應(yīng)用程序名.填入"My First App."
Project Name:項(xiàng)目目錄名和顯示在Eclipse中的項(xiàng)目文件名 。
Package Name :程序包的命名空間,與java或c#類似。你的包名應(yīng)該定義一個(gè)唯一的名字,保證與在androi系統(tǒng)中安裝的所有其他包名稱不一樣。因此,強(qiáng)烈建議以組織或公司的域名或發(fā)布者名字開頭。在這個(gè)項(xiàng)目中,我們使用"com.example.myfirstapp." ,但是,你不能發(fā)布以"com.example”為命名空間的應(yīng)用到Google Play上。
Minimum Required SDK :程序支持的android系統(tǒng)的最小版本,如果你想要支持更多的android設(shè)備,需要將這個(gè)版本號(hào)設(shè)置得相對(duì)低一點(diǎn)。有過(guò)有些功能在低版本上不支持,你可以只在高版本上啟動(dòng)該功能。在此我們使用默認(rèn)設(shè)置。
Target SDK:當(dāng)前版本,也是最高版本,當(dāng)有更高的版本出來(lái)時(shí),你應(yīng)該重新在新的版本上測(cè)試你的程序,并修改此參數(shù)。
Compile With: 你編譯程序時(shí)使用的版本。建議使用最新的版本,可通過(guò)SDK MANAGER下載。新版本中有新的一些特性,并會(huì)根據(jù)用戶的使用體驗(yàn)做一些改進(jìn)。
Theme :Android UI樣式。可以按默認(rèn)設(shè)置。
點(diǎn)擊 Next.
在下一個(gè)屏幕上使用默認(rèn)設(shè)置,繼續(xù)點(diǎn)擊next.
下一個(gè)屏幕可以設(shè)置程序圖標(biāo).
你可以通過(guò)多種方式自定義圖標(biāo),系統(tǒng)會(huì)自動(dòng)為你生成各種屏幕尺寸下的圖標(biāo)。在你發(fā)布程序前,請(qǐng)確保你的圖標(biāo)滿足Iconography 設(shè)計(jì)指南中的說(shuō)明定義。
繼續(xù)點(diǎn)擊 Next.
現(xiàn)在可以選擇一個(gè)activity模版.
當(dāng)前項(xiàng)目,我們選擇BlankActivity,然后點(diǎn)擊Next.
4.剩下的都按默認(rèn)設(shè)置,點(diǎn)擊 Finish.
這樣,這個(gè)項(xiàng)目就創(chuàng)建完畢了
從命令行工具創(chuàng)建項(xiàng)目
如果你沒(méi)有使用Eclipse,你可以從命令行通過(guò)SDK工具創(chuàng)建項(xiàng)目。
切換到Android SDK目錄, tools/ path.
執(zhí)行:
android list targets
該命令顯示可用的android平臺(tái)。
如果沒(méi)有顯示任何列表,請(qǐng)先通過(guò)Android SDK Manager 工具進(jìn)行安裝. 參見 Adding Platforms and Packages.
執(zhí)行:
android create project --target target-id --name MyFirstApp \
--path path-to-workspace/MyFirstApp --activity MainActivity \
--package com.example.myfirstapp
將target-id修改為上一步驟中顯示的id;將 path-to-workspace 修改為你要保存項(xiàng)目的文件夾。
Your Android project is now set up with several default configurations and you’re ready to begin building the app. Continue to the next lesson.
小貼士: 將 platform-tools/ 同tools/ 目錄一樣加到你的環(huán)境變量。
這樣,這個(gè)項(xiàng)目就創(chuàng)建完畢了.
三、運(yùn)行你的程序
你要如何運(yùn)行你的程序取決于兩件事:是否有真實(shí)的android設(shè)備;是否使用eclipse.
在運(yùn)行你的程序之前,你需要注意項(xiàng)目中的一些文件夾和文件:
AndroidManifest.xml
manifest文件描述應(yīng)用程序的一些基礎(chǔ)特性并定義每一個(gè)組件。
你可以查看項(xiàng)目中的manifest文件,與之前談到的manifest文件的說(shuō)明對(duì)比,即可知道對(duì)應(yīng)的一些元素的設(shè)置:
manifestxmlns:android="" ...
uses-sdk android:minSdkVersion="8" android:targetSdkVersion="17"/
...
/manifest
src/
存放源代碼的目錄.默認(rèn)情況下,包含一個(gè)啟動(dòng)時(shí)用到的 Activity 類。
res/
含有多個(gè)子文件,用于程序資源的存放。示例目錄如下:
drawable-hdpi/
包含一些可用于高分辨率屏幕的繪圖實(shí)體,如圖片。其他類似的目錄包含對(duì)應(yīng)的分辨率屏幕下的圖片。
layout/
程序UI文件。
values/
包含用于定義諸如字符串、顏色等的xml文件。
在真實(shí)設(shè)備上運(yùn)行
如果你有android系統(tǒng)設(shè)備,可以直接在上面安裝你的程序并運(yùn)行:
首先你的設(shè)備需要安裝usb驅(qū)動(dòng)。如果你是在window上開發(fā),你可以安裝合適的usb驅(qū)動(dòng)。具體驅(qū)動(dòng)安裝信息可以參考 OEM USB Drivers
在設(shè)備上啟用USB調(diào)試
大部分 Android 3.2或更早的機(jī)器,在 【設(shè)置】-【應(yīng)用程序】-【開發(fā)】中設(shè)置。
Android 4.0和之后的系統(tǒng),應(yīng)該是在【設(shè)置】-【開發(fā)選項(xiàng)】中。
Note: On Android 4.2 and newer, Developer options is hidden by default. To make it available, go to Settings About phone and tap Build number seven times. Return to the previous screen to find Developer options.
運(yùn)行步驟:
打開項(xiàng)目文件,點(diǎn)擊【run】。
在彈出的窗口中選擇【Android Application】,然后點(diǎn)擊【OK】
Eclipse會(huì)自動(dòng)將程序安裝到你的設(shè)備上并運(yùn)行他。
在模擬器上運(yùn)行
在 【run】-【run configuration】中的【Target】頁(yè)面添加和設(shè)置模擬器,然后即可運(yùn)行
環(huán)境搭建就不講了,直接說(shuō)開發(fā)。
小鬧鐘程序開發(fā)中的要點(diǎn)就是:
1、時(shí)間選擇對(duì)話框(TimePicker)
2、獲取鬧鐘管理器并對(duì)其進(jìn)行設(shè)置
3、注冊(cè)廣播接收器
掌握了這兩點(diǎn),寫程序就很簡(jiǎn)單了。
1、新建android項(xiàng)目:Alarm,sdk版本選擇2.2,Package name:com.lql.activity,Main Activity:Alarm
2、編寫界面:直接修改layout中的main.xml文件,代碼如下:
Xml代碼
?xml?version="1.0"?encoding="utf-8"?
LinearLayout?xmlns:android=""
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center_vertical"
Button
android:id="@+id/timeBtn"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/time"
android:textSize="20sp"
/
Button
android:id="@+id/cancelAlarmBtn"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/cancelAlarm"
/
/LinearLayout
界面的效果如下:
3、修改Alarm.java這個(gè)activity,在該Activity中需要做這樣幾件事:
獲取界面上的兩個(gè)按鈕組件,并給其綁定事件監(jiān)聽器
第一個(gè)時(shí)間按鈕,點(diǎn)擊后,顯示時(shí)間選擇對(duì)話框(TimePicker),供選擇小時(shí)和分鐘,并設(shè)置鬧鐘
第二個(gè)按鈕,點(diǎn)擊之后需要當(dāng)前設(shè)定的鬧鐘
比較難寫的代碼就是鬧鐘設(shè)置:
//設(shè)置時(shí)間
Java代碼??
timeBtn.setOnClickListener(new?Button.OnClickListener(){
@Override
public?void?onClick(View?arg0)?{
Log.d(TAG,?"click?the?time?button?to?set?time");
calendar.setTimeInMillis(System.currentTimeMillis());
new?TimePickerDialog(Alarm.this,new?TimePickerDialog.OnTimeSetListener()?{
@Override
public?void?onTimeSet(TimePicker?arg0,?int?h,?int?m)?{
//更新按鈕上的時(shí)間
timeBtn.setText(formatTime(h,m));
//設(shè)置日歷的時(shí)間,主要是讓日歷的年月日和當(dāng)前同步
calendar.setTimeInMillis(System.currentTimeMillis());
//設(shè)置日歷的小時(shí)和分鐘
calendar.set(Calendar.HOUR_OF_DAY,?h);
calendar.set(Calendar.MINUTE,?m);
//將秒和毫秒設(shè)置為0
calendar.set(Calendar.SECOND,?0);
calendar.set(Calendar.MILLISECOND,?0);
//建立Intent和PendingIntent來(lái)調(diào)用鬧鐘管理器
Intent?intent?=?new?Intent(Alarm.this,AlarmReceiver.class);
PendingIntent?pendingIntent?=?PendingIntent.getBroadcast(Alarm.this,?0,?intent,?0);
//獲取鬧鐘管理器
AlarmManager?alarmManager?=?(AlarmManager)getSystemService(ALARM_SERVICE);
//設(shè)置鬧鐘
alarmManager.set(AlarmManager.RTC_WAKEUP,?calendar.getTimeInMillis(),?pendingIntent);
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP,?calendar.getTimeInMillis(),?10*1000,?pendingIntent);
Toast.makeText(Alarm.this,?"設(shè)置鬧鐘的時(shí)間為:"+String.valueOf(h)+":"+String.valueOf(m),?Toast.LENGTH_SHORT).show();
Log.d(TAG,?"set?the?time?to?"+formatTime(h,m));
}
},calendar.get(Calendar.HOUR_OF_DAY),calendar.get(Calendar.MINUTE),true).show();
}
});
代碼里面有注釋,這里就不多解釋了,其中new TimePickerDialog為創(chuàng)建時(shí)間選擇對(duì)話框。為了能夠看到效果,我給鬧鐘添加了重復(fù)提醒:alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), 10*1000, pendingIntent);。
還要為取消鬧鐘按鈕添加事件監(jiān)聽器:
Java代碼??
//取消鬧鐘按鈕事件監(jiān)聽
final?Button?cancelAlarmBtn?=?(Button)findViewById(R.id.cancelAlarmBtn);
cancelAlarmBtn.setOnClickListener(new?Button.OnClickListener(){
@Override
public?void?onClick(View?arg0)?{
Intent?intent?=?new?Intent(Alarm.this,AlarmReceiver.class);
PendingIntent?pendingIntent?=?PendingIntent.getBroadcast(Alarm.this,?0,?intent,?0);
//獲取鬧鐘管理器
AlarmManager?alarmManager?=?(AlarmManager)getSystemService(ALARM_SERVICE);
alarmManager.cancel(pendingIntent);
Toast.makeText(Alarm.this,?"鬧鐘已經(jīng)取消!",?Toast.LENGTH_SHORT).show();
}
});
在點(diǎn)擊取消鬧鐘按鈕時(shí),取消之前設(shè)置的鬧鐘,核心代碼就4行。
4、編寫廣播接收器,用來(lái)接收鬧鐘的廣播事件,然后進(jìn)行相關(guān)處理,
Java代碼??
public?class?AlarmReceiver?extends?BroadcastReceiver?{
/*?(non-Javadoc)
*?@see?android.content.BroadcastReceiver#onReceive(android.content.Context,?android.content.Intent)
*/
@Override
public?void?onReceive(Context?arg0,?Intent?data)?{
Log.d(Alarm.TAG,?"the?time?is?up,start?the?alarm...");
Toast.makeText(arg0,?"鬧鐘時(shí)間到了!",?Toast.LENGTH_SHORT).show();
}
}
這個(gè)代碼就很簡(jiǎn)單了,主要是要繼 承?BroadcastReceiver 這個(gè)類,然后重寫onRecive方法。onRecive方法在鬧鐘的時(shí)間達(dá)到之后會(huì)執(zhí)行,在這里我們可以做自己的事情,比如啟動(dòng)某個(gè)程序,或者播放鈴聲,我這里就是簡(jiǎn)單的提示一下,使用的是Toast。
5、在android的AndroidManifest.xml文件中注冊(cè)廣播接收器:
manifest xmlns:android=""
Xml代碼
package="com.ql.activity"
android:versionCode="1"
android:versionName="1.0"
application?android:icon="@drawable/icon"?android:label="@string/app_name"
receiver?android:name=".AlarmReceiver"?android:process=":remote"?/
activity?android:name=".Alarm"
android:label="@string/app_name"
intent-filter
action?android:name="android.intent.action.MAIN"?/
category?android:name="android.intent.category.LAUNCHER"?/
/intent-filter
/activity
/application
uses-sdk?android:minSdkVersion="8"?/
/manifest
核心的配置為receiver android:name=".AlarmReceiver" android:process=":remote" /,這也是鬧鐘程序的關(guān)鍵,如果不做這個(gè)配置,那么時(shí)間到了之后,鬧鐘將不會(huì)提示。
接下來(lái)就是到模擬器上測(cè)試,運(yùn)行截圖如上圖。程序源代碼見附件。
互聯(lián)網(wǎng)移動(dòng)設(shè)備已經(jīng)普及,Android,一個(gè)開放性平臺(tái),對(duì)于各科技公司吸引力在持續(xù)上升,這不只是體現(xiàn)在翻倍上升的Android手機(jī)銷量上,Android市場(chǎng)在被迅猛的拓展開。
學(xué)習(xí)Android開發(fā)漸漸成為一種潮流。
那么,鹽城電腦培訓(xùn)介紹學(xué)習(xí)Android開發(fā)要具備哪些基礎(chǔ)呢?首先要熟悉學(xué)習(xí)Android開發(fā)要具備哪些基礎(chǔ)知識(shí)。
Java作為學(xué)習(xí)Android開發(fā)的基礎(chǔ)編程語(yǔ)言,掌握J(rèn)ava開發(fā)基礎(chǔ)知識(shí)是非常重要的。
另外,還要重點(diǎn)掌握針對(duì)Android平臺(tái)而特有的Activity、Service、Broadcast、ContentProvider、Handler等知識(shí)。
在學(xué)習(xí)Android開發(fā)時(shí)還應(yīng)該了解Android的開發(fā)工具。
學(xué)習(xí)關(guān)于AndroidSDK的相關(guān)知識(shí)。
AndroidSDK內(nèi)含一整套工具,能夠利于構(gòu)建應(yīng)用程序、設(shè)計(jì)圖形及布局。
另外一些工具能夠幫助進(jìn)行性能的調(diào)優(yōu)和剖析。
可見,掌握開發(fā)工具是非常必要的。
學(xué)習(xí)過(guò)程中,要時(shí)刻調(diào)整自己的學(xué)習(xí)狀態(tài)。
不要認(rèn)為Android開發(fā)大多應(yīng)用在Android手機(jī)上,做的都是小項(xiàng)目。
其實(shí),一個(gè)成功的項(xiàng)目開發(fā)必須有完整的流程,要有詳細(xì)的規(guī)范、進(jìn)度,專業(yè)的工程師和設(shè)計(jì)師,還要有測(cè)試人員以及后期維護(hù)等。
僅僅停留在基礎(chǔ)技能范疇,肯定是不能滿足的。
要想具備開發(fā)項(xiàng)目的能力,就要多學(xué)習(xí),積累經(jīng)驗(yàn)。
個(gè)人經(jīng)驗(yàn)談啊,希望對(duì)你有幫助。
找一套比較基礎(chǔ)的android教程,看幾個(gè)例子。
看3天左右,就可以開始自己寫一些小應(yīng)用,比如短信啊,音樂(lè)播放器之類的。
在寫這些小應(yīng)用的時(shí),必然會(huì)遇到很多問(wèn)題,首先百度查看別人的解決方案,百度的方案很多很雜,需要自己實(shí)踐過(guò)濾。也可以查看google官方文檔,初學(xué)者不建議參考官方原版文檔,全英文的看起來(lái)很頭疼。
完成一些小項(xiàng)目的開發(fā)以后可以嘗試一些大項(xiàng)目的開發(fā),靈活運(yùn)用所學(xué)的知識(shí)點(diǎn)。
學(xué)習(xí)android體系架構(gòu),為什么最后再學(xué)習(xí)體系架構(gòu)呢,這里我們要想清楚的理解android的架構(gòu),需要更深層次的代碼積累才能夠更好地理解android的體系結(jié)構(gòu)。
至此,時(shí)間大概在1年左右。能夠做到精通android應(yīng)用開發(fā)
網(wǎng)站題目:android小項(xiàng)目,Android小項(xiàng)目首頁(yè)
URL鏈接:http://www.chinadenli.net/article2/dsdisoc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供服務(wù)器托管、網(wǎng)站營(yíng)銷、電子商務(wù)、網(wǎng)站策劃、App開發(fā)、
聲明:本網(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í)需注明來(lái)源: 創(chuàng)新互聯(lián)