Android移動(dòng)應(yīng)用開發(fā)基礎(chǔ)教程(微課版)劉凡馨習(xí)題答案_第1頁
Android移動(dòng)應(yīng)用開發(fā)基礎(chǔ)教程(微課版)劉凡馨習(xí)題答案_第2頁
Android移動(dòng)應(yīng)用開發(fā)基礎(chǔ)教程(微課版)劉凡馨習(xí)題答案_第3頁
Android移動(dòng)應(yīng)用開發(fā)基礎(chǔ)教程(微課版)劉凡馨習(xí)題答案_第4頁
Android移動(dòng)應(yīng)用開發(fā)基礎(chǔ)教程(微課版)劉凡馨習(xí)題答案_第5頁
免費(fèi)預(yù)覽已結(jié)束,剩余2頁可下載查看

下載本文檔

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

文檔簡介

Android移動(dòng)應(yīng)用開發(fā)基礎(chǔ)教程(微課版)劉凡馨習(xí)題答案第1章1.Android平臺(tái)具有哪些特點(diǎn)?答:Android平臺(tái)特點(diǎn)主要包括:開放性、不再受營運(yùn)商限制、豐富的硬件選擇、開發(fā)不受限制以及與Google應(yīng)用無縫結(jié)合。2.Android平臺(tái)體系架構(gòu)可分為哪些層?答:Android平臺(tái)體系架構(gòu)可分為5層:Linux內(nèi)核層、硬件抽象層、系統(tǒng)運(yùn)行庫層、JavaAPI框架層和系統(tǒng)應(yīng)用層。3.在AndroidStudio中,可選擇哪些設(shè)備來運(yùn)行Android應(yīng)用程序?答:可選擇在AndroidStudio中創(chuàng)建的模擬器或連接的物理設(shè)備來運(yùn)行Android程序。4.Android中,注冊(cè)活動(dòng)、內(nèi)容提供器等組件的文件名是什么?答:AndroidManifest.xml5.可用哪些對(duì)象來輸出日志信息?答:可用System.out、System.err和Log對(duì)象在Android應(yīng)用程序中輸出日志信息。第2章1.請(qǐng)簡述為一個(gè)活動(dòng)綁定自定義視圖的基本步驟。答:為一個(gè)活動(dòng)綁定自定義視圖的基本步驟包括:(1)創(chuàng)建項(xiàng)目。(2)為項(xiàng)目添加布局資源文件。(3)在活動(dòng)的onCreate()方法中使用setContentView()方法來為活動(dòng)綁定一個(gè)視圖。2.請(qǐng)問在一個(gè)活動(dòng)中啟動(dòng)另一個(gè)活動(dòng)的基本句法格式是什么?答:在一個(gè)活動(dòng)中啟動(dòng)另一個(gè)活動(dòng)的基本句法格式如下:startActivity(newIntent(context,class));其中,context為當(dāng)前活動(dòng)上下文,class為另一個(gè)活動(dòng)類。3.Intent有哪些類型,這些類型之間有何區(qū)別?答:Intent可分為顯式Intent和隱式Intent。顯式Intent指明了要啟動(dòng)的組件,隱式Intent則相反,它不指明要啟動(dòng)的組件,而是指明要執(zhí)行的操作,讓系統(tǒng)去選擇可完成該操作的組件。4.請(qǐng)簡述向啟動(dòng)的活動(dòng)中傳遞數(shù)據(jù)的基本過程。答:向啟動(dòng)的活動(dòng)中傳遞數(shù)據(jù)的基本過程包括下列幾個(gè)步驟:(1)創(chuàng)建用于啟動(dòng)活動(dòng)的Intent對(duì)象(2)調(diào)用Intent對(duì)象的putExtra()方法向Intent對(duì)象封裝數(shù)據(jù)(3)在啟動(dòng)對(duì)象后,首先執(zhí)行g(shù)etIntent()方法獲取活動(dòng)接收到的Intent對(duì)象,然后調(diào)用Intent對(duì)象的getStringExtra()等方法獲得前一個(gè)活動(dòng)傳遞過來的數(shù)據(jù)。5.請(qǐng)問活動(dòng)在其生命周期內(nèi)可能有哪些狀態(tài)?答:活動(dòng)在其生命周期內(nèi)可能有4種狀態(tài):運(yùn)行狀態(tài)、暫停狀態(tài)、停止?fàn)顟B(tài)和銷毀狀態(tài)。6.請(qǐng)問活動(dòng)在其生命周期內(nèi)可能會(huì)調(diào)用哪些生命周期回調(diào)方法?答:活動(dòng)在其生命周期內(nèi)可能會(huì)調(diào)用onCreate()、onStart()、onResume()、onPause()、onStop()、onRestart()和onDestroy()等方法。7.請(qǐng)問活動(dòng)有哪幾種啟動(dòng)模式?答:活動(dòng)的啟動(dòng)模式有4種:standard、singleTop、singleTask和singleInstance。第3章1.簡述視圖(View)和視圖組(ViewGroup)的聯(lián)系和區(qū)別。答:View類是所有用于設(shè)計(jì)界面組成元素的基類,Button、CheckBox、ExitView、ImageView、ProgressBar、TextView以及其他的UI組件,都是View類的子類或子類的派生類。視圖組是一種特殊的視圖,它不具有可見性,而是一種容器。在視圖組中可包含視圖組和視圖。ViewGroup類是View類的一個(gè)子類,它又是各種布局類的基類。常用的布局類有LinearLayout(線性布局)、RelativeLayout(相對(duì)布局)和FrameLayout(幀布局)類等。2.列舉5種基本的Android控件及其基本作用。答:TextView控件用于顯示文本,EditText控件用于輸入文本,CheckBox控件用于創(chuàng)建復(fù)選框。RadioButton控件用于創(chuàng)建單選按鈕,RadioGroup是RadioButton的容器,用于單選按鈕分組,每組中的單選按鈕只能選中一項(xiàng)。3.簡述如何使用Toast。答:Toast是在應(yīng)用運(yùn)行期間,通過類似于對(duì)話框的方式向用戶顯示消息提示。Toast只占用很少的屏幕,并會(huì)在一段時(shí)間后自動(dòng)消失。在使用時(shí),首先創(chuàng)建Toast,然后調(diào)用show()方法顯示Toast。4.簡述如何使用Notification。Notification用于創(chuàng)建通知區(qū)域通知,展開抽屜式通知欄可查看通知的詳細(xì)信息。一個(gè)通知通常由圖標(biāo)、標(biāo)題和內(nèi)容等組成??砂聪铝胁襟E使用Notification。第一步:創(chuàng)建NotificationCompat.Builder對(duì)象。第二步:調(diào)用NotificationCompat.Builder對(duì)象方法設(shè)置通知相關(guān)內(nèi)容。第三步:創(chuàng)建在抽屜式通知欄中單擊通知時(shí)啟動(dòng)活動(dòng)的Intent。第四步:創(chuàng)建Notification對(duì)象。第五步:創(chuàng)建NotificationManager對(duì)象顯示通知。5.簡述如何使用RecyclerView。答:RecyclerView用于創(chuàng)建滾動(dòng)列表,并可實(shí)現(xiàn)垂直或水平滾動(dòng),甚至可實(shí)現(xiàn)多行或多列列表。要使用RecyclerView控件,首先需要在app\buil.gradle文件的dependencies閉包中添加支持庫。RecyclerView在使用時(shí)包含下列基本步驟:第一步:準(zhǔn)備列表顯示的資源(字符串、圖片)等。第二步:在布局或代碼中添加RecyclerView控件。第三步:設(shè)置RecyclerView控件布局管理器類型。第四步:定義RecyclerView適配器,完成用資源填充RecyclerView列表。6.修改本章3.8實(shí)例,使用對(duì)話框顯示登錄驗(yàn)證信息。只需將MainActivity.java中的:if(isLoged){//執(zhí)行登錄成功操作tvShow.setText("用戶名和密碼正確,登錄成功!");}else{//執(zhí)行登錄失敗操作tvShow.setText("用戶名或密碼錯(cuò)誤,請(qǐng)重新登錄!");}修改為: AlertDialog.Builderdialog=newAlertDialog.Builder(MainActivity.this);dialog.setTitle("系統(tǒng)登錄");Stringmsg;if(isLoged){msg="用戶名和密碼正確,登錄成功!";}else{msg="用戶名或密碼錯(cuò)誤,請(qǐng)重新登錄!";}dialog.setMessage(msg);dialog.show();第4章1.Android中廣播可分哪些類型,分別有什么特點(diǎn)?答:Android中的廣播可分為兩種類型:標(biāo)準(zhǔn)廣播和有序廣播。標(biāo)準(zhǔn)廣播在發(fā)出后,所有接收器均可接收到廣播消息。各個(gè)接收器之間沒有先后順序之分。標(biāo)準(zhǔn)廣播發(fā)出后,不可能被中斷。有序廣播:有序廣播在發(fā)出后,同一時(shí)間只有優(yōu)先級(jí)較高的一個(gè)接收器接收到廣播消息。只有在優(yōu)先級(jí)較高的接收器處理完廣播消息后,廣播才能繼續(xù)向優(yōu)先級(jí)較低的接收器繼續(xù)傳遞。在當(dāng)前接收器中,可中斷廣播,使后繼接收器無法收到廣播消息。2.簡述一個(gè)廣播接收器類的基本結(jié)構(gòu)。答:一個(gè)廣播接收器類的基本結(jié)構(gòu)如下:publicclass子類名稱extendsBroadcastReceiver{publicBootReceiver(){}@OverridepublicvoidonReceive(Contextcontext,Intentintent){//廣播消息出來邏輯}}3.簡述如何注冊(cè)廣播接收器。答:廣播接收器可以采用靜態(tài)和動(dòng)態(tài)方式進(jìn)行注冊(cè)。靜態(tài)注冊(cè)是指在應(yīng)用程序的清單文件AndroidManifest.xml中添加廣播接收器的注冊(cè)信息。動(dòng)態(tài)注冊(cè)是指在程序中用registerReceiver()方法進(jìn)行注冊(cè)。4.簡述如何使用有序廣播。答:有序廣播接收器可在AndroidManifest.xml中使用<intent-filter>標(biāo)簽的android:priority屬性來設(shè)置廣播接收器優(yōu)先級(jí)。在動(dòng)態(tài)注冊(cè)時(shí)可調(diào)用IntentFilter的setPriority()方法來設(shè)置接收器優(yōu)先級(jí)。發(fā)送有序廣播需要調(diào)用sendOrderedBroadcast()方法,在處理有序廣播消息時(shí),可使用abortBroadcast()方法來終止廣播。第5章1.簡述如何訪問一個(gè)內(nèi)部存儲(chǔ)文件。答:向一個(gè)內(nèi)部存儲(chǔ)文件寫入數(shù)據(jù)的基本步驟如下:(1)調(diào)用Context類的openFileOutput()方法打開指定文件。(2)將openFileOutput()方法返回的FileOutputStream對(duì)象封裝為OutputStreamWriter對(duì)象。(3)使用OutputStreamWriter對(duì)象將字符串存入文件。從一個(gè)內(nèi)部存儲(chǔ)文件讀出數(shù)據(jù)的基本步驟如下:(1)調(diào)用Context類的openFileIntput()方法打開指定文件。(2)將openFileIntput()方法返回的FileInputStream對(duì)象封裝為InputStreamReader對(duì)象。(3)使用InputStreamReader對(duì)象從文件讀取char數(shù)組。2.簡述如何訪問一個(gè)外部存儲(chǔ)文件。答:訪問外部存儲(chǔ)文件與訪問內(nèi)部存儲(chǔ)文件方法類似,不同之處在于:(1)需要為應(yīng)用申請(qǐng)READ_EXTERNAL_STORAGE(讀)或WRITE_EXTERNAL_STORAGE(寫)權(quán)限,并在設(shè)備中允許應(yīng)用訪問存儲(chǔ)器。(2)調(diào)用Environment.getExternalStorageDirectory()方法獲得外部存儲(chǔ)路徑,然后調(diào)用File對(duì)象構(gòu)造方法打開文件。打開文件后,后繼文件操作與訪問內(nèi)部存儲(chǔ)文件相同。3.簡述如何使用SharedPreferences共享存儲(chǔ)。答:SharedPreferences共享存儲(chǔ)采用鍵值對(duì)方式讀寫SharedPreferences文件。保存SharedPreferences數(shù)據(jù)基本步驟如下:(1)獲得SharedPreferences對(duì)象。(2)獲得SharedPreferences對(duì)象的Editor對(duì)象。(3)調(diào)用Editor對(duì)象的方法向文件添加數(shù)據(jù)。(4)提交數(shù)據(jù),完成數(shù)據(jù)存儲(chǔ)操作。讀取SharedPreferences數(shù)據(jù)只需調(diào)用SharedPreferences對(duì)象相應(yīng)方法即可。4.簡述訪問SQLite數(shù)據(jù)庫的基本步驟。答:訪問SQLite數(shù)據(jù)庫的基本步驟如下:(1)創(chuàng)建SQLiteOpenHelper的子類,并實(shí)現(xiàn)onCreate()和OnUpgrade()方法。(2)調(diào)用getWritableDatabase()和getReadableDatabase()方法打開數(shù)據(jù)庫,獲得SQLiteDatabase對(duì)象。(3)調(diào)用SQLiteDatabase對(duì)象的insert()、update()、delete()和query()等方法完成數(shù)據(jù)的添加、更新、刪除和查詢等操作。也可調(diào)用SQLiteDatabase對(duì)象的execSQL()和rawQuery()執(zhí)行SQL命令完成各種數(shù)據(jù)庫操作。第6章1.簡述使用SoundPool播放音效的基本步驟。答:基本步驟如下:第1步:使用SoundPool.Builder或SoundPool構(gòu)造方法創(chuàng)建SoundPool對(duì)象。第2步:調(diào)用load方法加載音頻資源。第3步:調(diào)用play、pause、stop等方法。2.簡述使用MediaPlayer播放音效的基本步驟。答:基本步驟如下:第1步:創(chuàng)建MediaPlay對(duì)象。第2步:調(diào)用setDataSource方法設(shè)置音頻文件路徑。第3步:調(diào)用prepare方法加載音頻。第4步:調(diào)用start、pause、stop、reset等方法。3.簡述使用MediaRecorder記錄聲音的基本步驟。答:基本步驟如下:第1步:在應(yīng)用程序的清單文件AndroidManifest.xml添加RECORD_AUDIO權(quán)限申請(qǐng)使用麥克風(fēng)。第2步:檢查并動(dòng)態(tài)申請(qǐng)用戶授權(quán)。第3步:創(chuàng)建MediaRecorder對(duì)象。第4步:調(diào)用相關(guān)方法設(shè)置音頻來源、輸出格式、輸出文件以及音頻編碼方式等信息。第5步:調(diào)用prepare方法準(zhǔn)備MediaRecorder。第6步:調(diào)用start方法開始采集音頻。第7步:調(diào)用stop方法結(jié)束采集音頻。4.簡述使用攝像頭拍照的基本步驟。答:基本步驟如下:第1步:創(chuàng)建用于保存所拍照片的文件。第2步:創(chuàng)建調(diào)用系統(tǒng)攝像頭拍照程序的Intent對(duì)象。第3步:執(zhí)行startActivityForResult方法啟動(dòng)系統(tǒng)攝像頭拍照程序。第4步:在onActivityResult方法中處理系統(tǒng)攝像頭拍照程序返回信息。第7章1.簡述使用HttpURLConnection完成HTTP請(qǐng)求的基本步驟。答:第1步:創(chuàng)建HttpURLConnection實(shí)例對(duì)象。第2步:調(diào)用setRequestMethod設(shè)置HTTP請(qǐng)求方法。第3步:設(shè)置請(qǐng)求相關(guān)參數(shù)。第4步:從InputStream對(duì)象中獲取HTTP請(qǐng)求返回結(jié)果。2.簡述使用OkHttp完成HTTP請(qǐng)求的基本步驟。答:第1步:需要修改項(xiàng)目的app/build.gradle文件,添加OkHttp庫編譯信息。第2步:創(chuàng)建OkHttpClient對(duì)象。第3步:創(chuàng)建Request對(duì)象。第4步:調(diào)用Request對(duì)象的execute()方法執(zhí)行請(qǐng)求。第5步:從Response對(duì)象中獲得字符串形式的返回結(jié)果。3.簡述使用DOM解析XML的基本步驟。答:第1步:創(chuàng)建DocumentBuilderFactory對(duì)象。第2步:創(chuàng)建DocumentBuilder對(duì)象。第3步:將XML文檔封裝到InputSource對(duì)象中。第4步:使用DocumentBuilder對(duì)象解析InputSource獲得表示XML文檔的Document對(duì)象。第5步:調(diào)用Document對(duì)象的相關(guān)方法獲取XML文檔各個(gè)節(jié)點(diǎn)及其文本。第8章1.請(qǐng)說明如何創(chuàng)建線程。答:有3中方法可以創(chuàng)建線程。方法1:使用匿名類。例如:newThread(newRunnable(){@Overridepublicvoidrun(){//在此編寫線程功能代碼}}).start();方法2:先創(chuàng)建一個(gè)類來實(shí)現(xiàn)Runnable接口。例如:classMyThreadimplementsRunnable{@Overridepublicvoidrun(){//在此編寫線程功能代碼}}然后,按照下面的方式來啟動(dòng)線程。newThread(newMyThread()).start();方法3:先定義一個(gè)類繼承內(nèi)置的Thread類來實(shí)現(xiàn)線程功能。例如:classMyThreadextendsThread{@Overridepublicvoidrun(){//在此編寫線程功能代碼}}然后,按照下面的方式來啟動(dòng)線程。newMyThread().start();2.請(qǐng)問能夠在子線程中改變界面中TextView控件的文本嗎?答:不能直接在子線程中改變界面中TextView控件的文本??梢詧?zhí)行runOnUiThread()方法返回UI線程,或者通過Handler和Message對(duì)象來完成。

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論