已閱讀5頁,還剩33頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
智能手機(jī)應(yīng)用開發(fā),based on android 2012.5,內(nèi)容包括:,1、Android 平臺概述 2、搭建 Android 開發(fā)環(huán)境 3、第一個(gè) Android 應(yīng)用程序 4、Android 用戶界面設(shè)計(jì) 5、Activity、Intent、Service、Broadcast Receiver 6、Android 中的數(shù)據(jù)存取 7、Android 實(shí)驗(yàn)設(shè)計(jì),課程結(jié)構(gòu),開放手機(jī)聯(lián)盟(OHA) Android 平臺綜述: 平臺介紹、開發(fā)者社區(qū) 開發(fā)環(huán)境: 構(gòu)建 Android 開發(fā)環(huán)境 應(yīng)用程序: 應(yīng)用程序結(jié)構(gòu) 典型應(yīng)用: 用戶界面、圖形編程 數(shù)據(jù)存取、網(wǎng)絡(luò)連接 硬件訪問,獲取 Android 資料的途徑, 下載 sdk 等相關(guān)軟件 查看文檔 在線幫助 開發(fā)社區(qū) 國內(nèi)需要代理才能訪問 / news sdk下載 開發(fā)FAQ、源碼下載 移植,6、Android 中的數(shù)據(jù)存取,on android,數(shù)據(jù)存取方式,Preference “鍵-值”方式存儲,以 xml 文件的形式保存 File 采用 java.io.* 庫所提供 I/O 接口讀寫文件 SQLite SQLite 是輕量級的嵌入式數(shù)據(jù)庫引擎 Content Provider 用于實(shí)現(xiàn)不同應(yīng)用程序之間的數(shù)據(jù)共享,1、Preference,主要用于存儲數(shù)據(jù)較少的場合,比如配置信息 文件位置:/data/data/shared_prefs/*.xml 需要用到接口:SharedPreferences 及其內(nèi)部接口:SharedPreferences.Editor 取得接口: Context.SharedPreferences(filename,mode) SharedPreferences.edit() 數(shù)據(jù)類型、數(shù)據(jù)操作: int、flaot、string、boolean等 putString(key,value) getString(key,defValue),實(shí)例:Test_of_Preference,定義 main.xml: 一個(gè) EditText 用于鍵入數(shù)據(jù) 三個(gè) Button 分別用于將數(shù)據(jù)寫入 xml 文件、從文件獲取數(shù)據(jù)并顯示、清除文件中的數(shù)據(jù) 定義 sharedpreferences.xml: 一個(gè) TextView 用于顯示從文件中獲取的數(shù)據(jù),et1=(EditText)findViewById(R.id.editText1); button1=(Button)findViewById(R.id.button1); button2=(Button)findViewById(R.id.button2); button3=(Button)findViewById(R.id.button3);,textView1=(TextView)findViewById(R.id.textView1);,創(chuàng)建接口 sp1、spEditor1 以鍵值 方式加入數(shù)據(jù) 以 String Key 為索引來獲取數(shù)據(jù) 清除數(shù)據(jù),private SharedPreferences sp1; sp1 = this.getSharedPreferences(“test“, MODE_PRIVATE); SharedPreferences.Editor spEditor1 = sp1.edit();,spEditor1.putString(“TEXT“,et1.getText().toString(); spEmit();,String string1 = sp1.getString(“TEXT“, “); textView1.setText(string1);,spEditor1.clear().commit();,運(yùn)行結(jié)果:,2、File,文件可用來存放大量數(shù)據(jù),如文本、圖片、音頻等 默認(rèn)位置:/data/data/files/*.* java.io.* 庫提供 I/O 接口實(shí)現(xiàn)本地文件讀寫 文件輸入流的獲取 Context.openFileInput(String name) 文件輸出流的獲取 Context.openFileOutput(String name, int mode) 包內(nèi)資源(res/raw/)文件的讀取 Resources.openRawResource(R.raw.file),實(shí)例:Test_of_File,定義 main.xml: 兩個(gè) EditText、兩個(gè) Button 寫文件 writeFile(str):,private void writeFile(String str) try FileOutputStream output= openFileOutput(FILE_NAME,MODE_APPEND); output.write(str.getBytes(); output.close(); catch(Exception e) Log.e(“File_IO“, e.toString(); this.finish(); ,讀文件 readFile():,private String readFile() try FileInputStream input = openFileInput(FILE_NAME); byte buffer = new byteinput.available(); input.read(buffer); input.close(); String str = new String(buffer); return str; catch(Exception e) Log.e(“File_IO“, e.toString(); this.finish(); return null; ,editText2.setText(readFile();,運(yùn)行結(jié)果: 注意:寫文件時(shí)用的 MODE_APPEND 模式,3、SQLite,SQLite 輕量級嵌入式數(shù)據(jù)庫引擎,面向資源有限的設(shè)備 沒有服務(wù)器進(jìn)程 所有數(shù)據(jù)存放在同一文件中 跨平臺,可自由復(fù)制 SQLiteOpenHelper 幫助類,用于管理數(shù)據(jù)庫創(chuàng)建和版本更新 onCreate(SQLiteDatabase db) onUpgrade(db,int old_ver,int new_ver) sqlite3 :位于 /tools,實(shí)例:Test_of_SQLite,DatabaseHelper 繼承自 SQLiteOpenHelper 重寫了onCreate()、onUpgrade() 方法 實(shí)現(xiàn) insert、del、query、close 等方法 ListView 顯示記錄,字段對應(yīng)成 TextView ListView 的 onItemClick() 實(shí)現(xiàn)刪除記錄 數(shù)據(jù)庫文件路徑: /data/data/database/*.db,private SQLiteDatabase db; public void insert(ContentValues values) SQLiteDatabase db = getWritableDatabase(); db.insert(TABLE_NAME, null, values); db.close(); public void del(int id) if(db = null) db = getWritableDatabase(); db.delete(TABLE_NAME, “_id=?“, new StringString.valueOf(id); public void onCreate(SQLiteDatabase db) this.db = db; db.execSQL(CREATE_TABLE); ,DatabaseHelper.java,DatabaseHelper dbHelper = new DatabaseHelper(this); Cursor cursor = dbHelper.query(); String from = “_id“,“name“,“url“,“notes“; int to = R.id.textView1,R.id.textView2,R.id.textView3, R.id.textView4; SimpleCursorAdapter scadapter = new SimpleCursorAdapter (this,R.layout.favoritelist,cursor,from,to); ListView listView = getListView(); listView.setAdapter(scadapter); AlertDialog.Builder adBuilder = new AlertDialog.Builder(this);,Query_Test.java,listView.onItemClick adBuilder.setMessage(“確認(rèn)刪除?“) .setPositiveButton(“Y“, new OnClickListener() .setNegativeButton(“N“, new OnClickListener(); AlertDialog aleraDialog = adBuilder.create(); aleraDialog.show(); ,刪除記錄并重建 ListView,運(yùn)行結(jié)果:,4、Content Provider,與 Activity、Service、Broadcast Receiver 同屬 Android 應(yīng)用程序基本組件之一 用于保存和檢索數(shù)據(jù),實(shí)現(xiàn)了數(shù)據(jù)的跨應(yīng)用共享 Android 中各應(yīng)用均運(yùn)行在自己的進(jìn)程中,互相訪問的 Content Provider 接口統(tǒng)一定義在 vider 包內(nèi),涵蓋了常見的數(shù)據(jù)類型如音視頻、圖片、聯(lián)系人等 實(shí)現(xiàn)的方法包括: insert、delete、qurey、update 等,URI Content Provider 用以實(shí)現(xiàn)數(shù)據(jù)共享的對象 Content Resolver Content Provider 的客戶端接口 客戶端通過 getContentResolver() 獲得接口 提供與 Content Provider 對應(yīng)的方法 間接地通過操作 Resolver 來操作 Provider 一個(gè) Provider 可以對應(yīng)多個(gè) Resolver 用戶自定義系統(tǒng) :Content Provider,實(shí)例:Test_of_ContentProvider,系統(tǒng) Content Provider 添加聯(lián)系人:,String name = editText1.getText().toString(); String notes = editText2.getText().toString(); ContentResolver contentResolver1 = getContentResolver(); ContentValues contentValues1 = new ContentValues(); Uri uri1 = Contacts.People.CONTENT_URI; contentValues1.put(People.NAME,name); contentValues1.put(People.NOTES, notes); trycontentResolver1.insert(uri1, contentValues1);,運(yùn)行結(jié)果:,7、Android 的多媒體應(yīng)用,on android,Android 的多媒體,Android 實(shí)現(xiàn)了常見媒體格式的編解碼機(jī)制 圖片:jpeg、gif、png、bmp 音頻:3gp、mp3、wav 視頻:3gp、mp4 Android 提供相應(yīng) API 實(shí)現(xiàn)多媒體應(yīng)用 音視頻播放:MediaPlayer、JetPlayer 音視頻錄制: MediaRecorder 媒體文件來源: 應(yīng)用程序資源、本地文件、網(wǎng)絡(luò)文件流,實(shí)例:ImageView,實(shí)例:GridView、Gallery,詳見實(shí)例:Test_of_Widget,實(shí)例:Test_of_Mp3Player,實(shí)現(xiàn) MediaPlayer.OnCompletionListener 接口,public class Mp3Player_Test extends Activity implements MediaPlayer.OnCompletionListener / 重寫 onCompletion() 方法,實(shí)現(xiàn)循環(huán)播放 public void onCompletion(MediaPlayer mp) if(flag1=1)ib4play(); if(flag2=1)ib8play(); / 重寫 onDestroy() 方法 public void onDestroy() super.onDestroy(); if(imageButton2.isEnabled() ib2stop(); if(imageButton6.isEnabled() ib6stop(); ,定義 MediaPlayer 對象并初始化,private MediaPlayer mp1,mp2; private void mp1init() try mp1=MediaPlayer.create(this, R.raw.temp); mp1.setOnCompletionListener(this); catch (Throwable t)errorReport(t); private void mp2init() try mp2 = new MediaPlayer(); String path = “/sdcard/graduated.mp3“; mp2.setDataSource(path); mp2.prepare(); mp2.setOnCompletionListener(this); catch (Throwable t)errorReport(t); ,音樂文件路徑:,定義三個(gè) ImageButton 對象并實(shí)例化,實(shí)現(xiàn) paly、pause 方法,private void ib4play() flag1=1; mediaPlayer1.start(); imageButton2.setEnabled(true); imageButton3.setEnabled(true); imageButton4.setEnabled(false); private void ib3pause
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 高一英語 總復(fù)習(xí)資料
- 山東大學(xué)威海校區(qū)614綜合A(含法理學(xué)、憲法學(xué)、行政法學(xué))之法理學(xué)考研沖刺密押題
- 主題:我是中國人
- 師徒結(jié)對總結(jié)范文(7篇)001
- 小學(xué)語文老師業(yè)務(wù)工作總結(jié)集錦3篇
- 網(wǎng)絡(luò)營銷 第3版 教案全套 魏亞萍 6.1 網(wǎng)絡(luò)視頻營銷認(rèn)知-10-1.2網(wǎng)絡(luò)推廣效果評估
- 光伏纜承攬合同
- 2025年石油鉆采機(jī)械項(xiàng)目合作計(jì)劃書
- 荊州出租車租賃合同
- 辦公場地租賃合同場地使用合同范文
- 交通信號控制系統(tǒng)檢驗(yàn)批質(zhì)量驗(yàn)收記錄表
- 九大仙草你認(rèn)識嗎課件
- GB∕T 12234-2019 石油、天然氣工業(yè)用螺柱連接閥蓋的鋼制閘閥
- DB62∕T 3176-2019 建筑節(jié)能與結(jié)構(gòu)一體化墻體保溫系統(tǒng)應(yīng)用技術(shù)規(guī)程
- GB∕T 25684.5-2021 土方機(jī)械 安全 第5部分:液壓挖掘機(jī)的要求
- 二氧化碳可降解塑料生產(chǎn)項(xiàng)目建議書
- 幼兒園幼兒教育數(shù)學(xué)領(lǐng)域核心經(jīng)驗(yàn)
- 病例討論麻醉科PPT課件
- EBZ220A掘進(jìn)機(jī)幻燈片
- 集體跳繩賽規(guī)則
- 煤礦調(diào)度工作培訓(xùn)內(nèi)容
評論
0/150
提交評論