基于安卓平臺(tái)的程序開(kāi)發(fā)楊婷_第1頁(yè)
基于安卓平臺(tái)的程序開(kāi)發(fā)楊婷_第2頁(yè)
基于安卓平臺(tái)的程序開(kāi)發(fā)楊婷_第3頁(yè)
基于安卓平臺(tái)的程序開(kāi)發(fā)楊婷_第4頁(yè)
基于安卓平臺(tái)的程序開(kāi)發(fā)楊婷_第5頁(yè)
已閱讀5頁(yè),還剩22頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、安卓平臺(tái)的程序開(kāi)發(fā)學(xué)校: 班級(jí): 姓名: 學(xué)號(hào): 一.實(shí)訓(xùn)技術(shù)簡(jiǎn)介Android應(yīng)用程序是在JAVA下開(kāi)發(fā)的。Android自身不是一個(gè)語(yǔ)言,但是是一個(gè)運(yùn)行應(yīng)用程序的環(huán)境。 1.eclipse Eclipse是一個(gè)開(kāi)放源代碼的、基于java的可擴(kuò)展開(kāi)發(fā)平臺(tái),就其本身而言,它只是一個(gè)框架和服務(wù),用于通過(guò)插件組件構(gòu)建開(kāi)發(fā)環(huán)境。eclipse附帶了一個(gè)標(biāo)準(zhǔn)的插件集,包括java開(kāi)發(fā)工具。一旦Eclipse安裝開(kāi)始,你會(huì)被提醒來(lái)創(chuàng)建一個(gè)缺省的工作空間,或者文件夾。和其他大多數(shù)開(kāi)發(fā)環(huán)境一樣,項(xiàng)目被創(chuàng)建,并且保存到這個(gè)工作空間內(nèi)。2.JDKJDK是一個(gè)寫java的applet和應(yīng)用程序的程序開(kāi)發(fā)環(huán)境。它由

2、一個(gè)處于操作系統(tǒng)層之上的運(yùn)行環(huán)境還有開(kāi)發(fā)者編譯,調(diào)試和運(yùn)行用java語(yǔ)言寫的applet和應(yīng)用程序所需的工具組成。JDK包含的基本組件包括:Javac-編譯器,將源代碼轉(zhuǎn)成字節(jié)碼Jar-打包工具,將相關(guān)的類文件打包成一個(gè)文件Javadoc-文檔生成器,從源碼注釋中提取文檔Jdb-debugger,查錯(cuò)工具JDK中還包括各種例子程序,用以展示java API中的各部分。3.android-sdkSDK:Android SDK下載后會(huì)是一個(gè)簡(jiǎn)單的ZIP文件壓縮包。Android SDK的主體是一些文件,連續(xù)性的文檔,可編程的API,工具,例子和其它。AndroidSDK和其它的SDK相比沒(méi)有任何的

3、不同,它包含了所有的創(chuàng)建運(yùn)行在特有的Android平臺(tái)上應(yīng)用程序所需的Java代碼庫(kù)。SDK還包括幫助文件,文檔和Android模擬器,大量的開(kāi)發(fā)和調(diào)試工具。被軟件開(kāi)發(fā)工程師用于為特定的軟件包、軟件框架、硬件平臺(tái)、操作系統(tǒng)等建立應(yīng)用軟件的開(kāi)發(fā)工具的集合。Android SDK指的既是android專屬的軟件開(kāi)發(fā)工具包。二實(shí)訓(xùn)項(xiàng)目簡(jiǎn)介1.編寫電話應(yīng)用 2.編寫短信應(yīng)用 3.編寫音樂(lè)播放器應(yīng)用 4.編寫紙牌游戲 5.編寫推箱子游戲 6.編寫公交查詢應(yīng)用三實(shí)訓(xùn)項(xiàng)目具體說(shuō)明(包括項(xiàng)目實(shí)現(xiàn)步驟和項(xiàng)目截圖,可以包括部分核心代碼) 1.編寫電話應(yīng)用t_app;import android.app.Activ

4、ity;import android.content.Intent;import .Uri;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.EditText;import android.widget.Toast;/* * author T * */public class CallActivity extends Activity EditText telNu

5、m; Overrideprotected void onCreate(Bundle savedInstanceState) / TODO Auto-generated method stubsuper.onCreate(savedInstanceState);setContentView(R.layout.call);telNum=(EditText)findViewById(R.id.mobileNum);Button button=(Button)findViewById(R.id.cbutton);button.setOnClickListener(new ButtonClick();p

6、ublic class ButtonClick implements OnClickListenerOverridepublic void onClick(View arg0) / TODO Auto-generated method stubString mobileNum=telNum.getText().toString();if(mobileNum=null | mobileNum.equals("")Toast.makeText(CallActivity.this, R.string.text, Toast.LENGTH_LONG).show();elseInte

7、nt intent=new Intent(Intent.ACTION_CALL,Uri.parse("tel:"+mobileNum); startActivity(intent); 2.編寫短信應(yīng)用 package com.example.yt_app;import java.util.List;import android.app.Activity;import android.os.Bundle;import android.telephony.SmsManager;import android.view.View;import android.view.View.O

8、nClickListener;import android.widget.Button;import android.widget.EditText;import android.widget.Toast;public class SmsActivity extends Activity private EditText telNum;private EditText smsContext;/*(non-Javadoc) * see android.app.Activity#onCreate(android.os.Bundle) */Overrideprotected void onCreat

9、e(Bundle SavedIstanceState)super.onCreate (SavedIstanceState);setContentView(R.layout.message);telNum=(EditText)findViewById(R.id.phoneNumber);smsContext=(EditText)findViewById(R.id.message);Button button=(Button)findViewById(R.id.msButton);public class ButtonClick implements OnClickListenerOverride

10、public void onClick(View arg0) String mobile=telNum.getText().toString();String sms=smsContext.getText().toString();if(mobile=null|mobile.equals("")Toast.makeText(SmsActivity.this,"手機(jī)號(hào)碼不能為空",Toast.LENGTH_LONG);else if(sms=null|sms.equals("")Toast.makeText(SmsActivity.th

11、is,"短信內(nèi)容不能為空",Toast.LENGTH_LONG);elseSmsManager smsManager=SmsManager.getDefault();if(sms.length()>70)List<String> list=smsManager.divideMessage(sms);for(String s:list)smsManager.sendTextMessage(mobile,null,s,null,null);elsesmsManager.sendTextMessage(mobile,null,sms,null,null);Toa

12、st.makeText(SmsActivity.this,"短信已發(fā)出",Toast.LENGTH_LONG).show(); 3.編寫音樂(lè)播放器應(yīng)用 package com.example.yt_app;import java.io.File;import java.io.FilenameFilter;import java.io.IOException;import java.util.ArrayList;import java.util.List;import android.app.Activity;import android.graphics.Color;imp

13、ort android.media.MediaPlayer;import android.media.MediaPlayer.OnCompletionListener;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.ImageButton;import android.widget.TableLayout;import android.widget.TableRow;import android.widget.Text

14、View;public class MusicActivity extends Activity private ImageButton play_pause; private ImageButton play_stop; private ImageButton play_next; private ImageButton play_prev; private TableLayout tl; private static final String MUSIC_BASE_PATH="/sdcard/" private List<String>music_list=

15、new ArrayList<String>(); private boolean pause=false; private MediaPlayer mp; private int currentIndex=0; Overrideprotected void onCreate(Bundle savedInstanceState) / TODO Auto-generated method stubsuper.onCreate(savedInstanceState);setContentView(R.layout.music);play_pause=(ImageButton)findVi

16、ewById(R.id.play_pause);op);play_next=(ImageButton)findViewById(R.id.play_next);play_prev=(ImageButton)findViewById(R.id.play_prev);mp=new MediaPlayer();tl=(TableLayout)findViewById(R.id.song_list);loadSong();/* * 下一首 * param path */public void nextplay()play_pause.setImageResource(R.drawable.player

17、_next_light);if(+currentIndex>=music_list.size()currentIndex=0;play(MUSIC_BASE_PATH+music_list.get(currentIndex);/* * 上一首 * param path */public void prevplay()play_pause.setImageResource(R.drawable.player_prev_light);if(-currentIndex<0)currentIndex=music_list.size()-1;play(MUSIC_BASE_PATH+musi

18、c_list.get(currentIndex);/* * 播放當(dāng)前音樂(lè) * param path */public void play(String path)play_pause.setImageResource(R.drawable.player_pause_light);mp.reset();trymp.setDataSource(path);mp.prepare();mp.start();mp.setOnCompletionListener(new OnCompletionListener() Overridepublic void onCompletion(MediaPlayer

19、arg0) / TODO Auto-generated method stub); catch (SecurityException e) / TODO Auto-generated catch blocke.printStackTrace(); catch (IllegalStateException e) / TODO Auto-generated catch blocke.printStackTrace(); catch (IOException e) / TODO Auto-generated catch blocke.printStackTrace();public void cur

20、rentMusic()int count=tl.getChildCount();for(int i=1;i<count;i+)tl.getChildAt(i).setBackgroundColor(Color.TRANSPARENT);TableRow tr=(TableRow)tl.getChildAt(currentIndex+1);if(tr!=null)tr.setBackgroundColor(Color.RED);public void loadSong()File file=new File(MUSIC_BASE_PATH);File f=file.listFiles(ne

21、w FilenameFilter() Overridepublic boolean accept(File arg0, String arg1) / TODO Auto-generated method stubreturn arg1.endsWith(".mp3"););if(f.length>0)for(int i=0;i<f.length;i+)music_list.add(fi.getName();TableRow tr=new TableRow(this); TextView tv1=new TextView(this);tv1.setText(&qu

22、ot;"+(i+1);tr.addView(tv1,0);TextView tv2=new TextView(this);tv2.setText(fi.getName();tr.addView(tv2,1);TextView tv3=new TextView(this);tv3.setText(fi.length()/(1024*1024)+"");tr.addView(tv3,2);tl.addView(tr);play_pause.setOnClickListener(new OnClickListener() Overridepublic void onCl

23、ick(View arg0) / TODO Auto-generated method stubif (mp.isPlaying() play_pause.setImageResource(R.drawable.player_pause_light);mp.pause();pause=true;elseif(pause) mp.start();elseplay_pause.setImageResource(R.drawable.player_play_light);if(+currentIndex>=music_list.size() currentIndex=0;play(MUSIC_

24、BASE_PATH+music_list.get(currentIndex););package com.example.yt_app;import java.io.File;import java.io.FilenameFilter;import java.io.IOException;import java.util.ArrayList;import java.util.List;import android.app.Activity;import android.graphics.Color;import android.media.MediaPlayer;import android.

25、media.MediaPlayer.OnCompletionListener;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.ImageButton;import android.widget.TableLayout;import android.widget.TableRow;import android.widget.TextView;public class MusicActivity extends Activ

26、ity private ImageButton play_pause; private ImageButton play_stop; private ImageButton play_next; private ImageButton play_prev; private TableLayout tl; private static final String MUSIC_BASE_PATH="/sdcard/" private List<String>music_list=new ArrayList<String>(); private boolea

27、n pause=false; private MediaPlayer mp; private int currentIndex=0; Overrideprotected void onCreate(Bundle savedInstanceState) / TODO Auto-generated method stubsuper.onCreate(savedInstanceState);setContentView(R.layout.music);play_pause=(ImageButton)findViewById(R.id.play_pause);play_stop=(ImageButto

28、n)findViewById(R.id.play_stop);play_next=(ImageButton)findViewById(R.id.play_next);play_prev=(ImageButton)findViewById(R.id.play_prev);mp=new MediaPlayer();ng_list);loadSong();/* * 下一首 * param path */public void nextplay()play_pause.setImageResource(R.drawable.player_next_light);if(+currentIndex>

29、=music_list.size()currentIndex=0;play(MUSIC_BASE_PATH+music_list.get(currentIndex);/* * 上一首 * param path */public void prevplay()play_pause.setImageResource(R.drawable.player_prev_light);if(-currentIndex<0)currentIndex=music_list.size()-1;play(MUSIC_BASE_PATH+music_list.get(currentIndex);/* * 播放當(dāng)

30、前音樂(lè) * param path */public void play(String path)play_pause.setImageResource(R.drawable.player_pause_light);mp.reset();trymp.setDataSource(path);mp.prepare();mp.start();mp.setOnCompletionListener(new OnCompletionListener() Overridepublic void onCompletion(MediaPlayer arg0) / TODO Auto-generated metho

31、d stub); catch (SecurityException e) / TODO Auto-generated catch blocke.printStackTrace(); catch (IllegalStateException e) / TODO Auto-generated catch blocke.printStackTrace(); catch (IOException e) / TODO Auto-generated catch blocke.printStackTrace();public void currentMusic()int count=tl.getChildC

32、ount();for(int i=1;i<count;i+)tl.getChildAt(i).setBackgroundColor(Color.TRANSPARENT);TableRow tr=(TableRow)tl.getChildAt(currentIndex+1);if(tr!=null)tr.setBackgroundColor(Color.RED);public void loadSong()File file=new File(MUSIC_BASE_PATH);File f=file.listFiles(new FilenameFilter() Overridepublic

33、 boolean accept(File arg0, String arg1) / TODO Auto-generated method stubreturn arg1.endsWith(".mp3"););if(f.length>0)for(int i=0;i<f.length;i+)music_list.add(fi.getName();TableRow tr=new TableRow(this); TextView tv1=new TextView(this);tv1.setText(""+(i+1);tr.addView(tv1,0)

34、;TextView tv2=new TextView(this);tv2.setText(fi.getName();tr.addView(tv2,1);TextView tv3=new TextView(this);tv3.setText(fi.length()/(1024*1024)+"");tr.addView(tv3,2);tl.addView(tr);play_pause.setOnClickListener(new OnClickListener() Overridepublic void onClick(View arg0) / TODO Auto-genera

35、ted method stubif (mp.isPlaying() play_pause.setImageResource(R.drawable.player_pause_light);mp.pause();pause=true;elseif(pause) mp.start();elseplay_pause.setImageResource(R.drawable.player_play_light);if(+currentIndex>=music_list.size() currentIndex=0;play(MUSIC_BASE_PATH+music_list.get(currentI

36、ndex);); 4.編寫紙牌游戲package com.example.yt_app;import java.util.Arrays;import java.util.Collections;import java.util.List;import android.app.Activity;import android.app.AlertDialog;import android.content.DialogInterface;import android.os.Bundle;import android.view.View;import android.view.View.OnClickL

37、istener;import android.widget.Button;import android.widget.ImageView;import com.example.yt_app.R;public class PokerActivity extends Activity private ImageView pk1;private ImageView pk2;private ImageView pk3;private ImageView pk4;private Integer poker=R.drawable.poker_kk,R.drawable.poker_k,R.drawable

38、.poker_q,R.drawable.poker_a;private int key=R.drawable.poker_k;private boolean flag=false;Overrideprotected void onCreate(Bundle savedInstanceState) / TODO Auto-generated method stubsuper.onCreate(savedInstanceState);setContentView(R.layout.poker);pk1=(ImageView)findViewById(R.id.pk1);pk2=(ImageView

39、)findViewById(R.id.pk2);pk3=(ImageView)findViewById(R.id.pk3);pk4=(ImageView)findViewById(R.id.pk4);Button button=(Button)findViewById(R.id.pokerButton);button.setOnClickListener(new OnClickListener() Overridepublic void onClick(View arg0) / TODO Auto-generated method stubshuffpoker(););pk1.setOnCli

40、ckListener(new ImageViewClick();pk2.setOnClickListener(new ImageViewClick();pk3.setOnClickListener(new ImageViewClick();pk4.setOnClickListener(new ImageViewClick();public void shuffpoker()List<Integer> list=Arrays.asList(poker);Collections.shuffle(list);poker=(Integer)list.toArray();pk1.setAlp

41、ha(255);pk2.setAlpha(255);pk3.setAlpha(255);pk4.setAlpha(255);flag=false;pk1.setImageResource(R.drawable.poker_bg);pk2.setImageResource(R.drawable.poker_bg);pk3.setImageResource(R.drawable.poker_bg);pk4.setImageResource(R.drawable.poker_bg);public class ImageViewClick implements OnClickListenerOverr

42、idepublic void onClick(View arg0) / TODO Auto-generated method stubif(!flag)pk1.setImageResource(poker0);pk2.setImageResource(poker1);pk3.setImageResource(poker2);pk4.setImageResource(poker3);flag=true;pk1.setAlpha(100);pk2.setAlpha(100);pk3.setAlpha(100);pk4.setAlpha(100);int temp=0;switch(arg0.get

43、Id()case R.id.pk1:temp=0;pk1.setAlpha(255);break;case R.id.pk2:temp=0;pk2.setAlpha(255);break;case R.id.pk3:temp=0;pk3.setAlpha(255);break;case R.id.pk4:temp=0;pk4.setAlpha(255);break;if(key=pokertemp)dialog("對(duì)了","聰明");elsedialog("錯(cuò)了","笨蛋"); public void dialog

44、(String title,String msg)new AlertDialog.Builder(PokerActivity.this).setIcon(R.drawable.title_icon).setTitle(title).setMessage(msg).setPositiveButton("確定", new DialogInterface.OnClickListener() Overridepublic void onClick(DialogInterface arg0, int arg1) / TODO Auto-generated method stub/關(guān)閉

45、對(duì)話框arg0.dismiss();/重新洗牌shuffpoker();).setNegativeButton("取消", new DialogInterface.OnClickListener() Overridepublic void onClick(DialogInterface arg0, int arg1) / TODO Auto-generated method stub/關(guān)閉對(duì)話框arg0.dismiss();/重新洗牌shuffpoker();).show(); 5.編寫推箱子游戲6. 編寫城市查詢。7.編寫公交路線查詢。package com.exampl

46、e.yt_app;import android.app.Activity;import android.database.Cursor;import android.database.sqlite.SQLiteDatabase;import android.os.Bundle;import android.text.method.ScrollingMovementMethod;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.

47、widget.EditText;import android.widget.TextView;import android.widget.Toast;import com.example.mb.ImportDBFile;import com.example.model.Bus;public class BusActivity extends Activityprivate SQLiteDatabase sqliteDatabase;private ImportDBFile importDBFile;protected void onCreate(Bundle savedInstanceStat

48、e) importDBFile=new ImportDBFile(this);importDBFile.openDatabase();importDBFile.close();super.onCreate(savedInstanceState);setContentView(R.layout.bus);final EditText line=(EditText)findViewById(R.id.line);final EditText stationName=(EditText)findViewById(R.id.stationName);Button button=(Button)find

49、ViewById(R.id.busButton);final TextView result=(TextView)findViewById(R.id.result);result.setMovementMethod(ScrollingMovementMethod.getInstance();sqliteDatabase=SQLiteDatabase.openOrCreateDatabase(importDBFile.PATH+"/"+importDBFile.db,null);line.setOnClickListener(new OnClickListener() pub

50、lic void onClick(View argO) stationName.setText(""););stationName.setOnClickListener(new OnClickListener()public void onClick(View argO)String lineNum=line.getText().toString();String station=stationName.getText().toString(); Bus bus=new Bus();StringBuffer buffer=new StringBuffer();Cursor cursor=null;if(lineNum!=null&&!lineNum.equals("")cursor=sqliteDatabase.rawQuery("select busw,shijian,kind,piao from cnbusw where busw=?",new StringlineNum+"路");if(cursor.moveToNext()bus.setBus_line(cursor.g

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論