中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

關于Android學習要問的一些問題

發布時間:2020-05-17 11:13:29 來源:網絡 閱讀:354 作者:Sesedese 欄目:移動開發

1.什么是Android?

Android是一個以Linux為基礎的開放源代碼移動設備操作系統,

由Google領導和開發,目前世界上市場占有率最高,

它的創始人是Andy Rubin。


2.請說一下Android的系統架構(Android Architecture Layers)。

  • Android的系統架構有四層:Applications、FrameWork、Libraries、Linux Kernel。

  • "Applications層"就是平時我們用手機時看到的那些已經裝在手機上的應用,比如聯系人、短信、日歷這些。

  • "FrameWork層"用于提供開發應用時所需要用到的API,包含Activity Manager、Content Providers、Resource Manager等等服務。

  • "Libraries層"包含兩個方面,分別是Native Libraries 和 Android Runtime。Native Libraries通過一些C/C++庫為Android系統提供SQLite、OpelGL 3D繪圖、Webkit瀏覽器內核等等主要特性的支持,供Android系統的各個組件使用,這樣開發者就可以在FrameWork層使用這些特性;Android Runtime提供一些核心庫(Core Libraries),這樣開發者就可以用Java語言來編寫Android應用。每一個Android應用程序是Dalvik虛擬機中的實例,運行在他們自己獨立的進程中。

  • "Linux Kernel層"用于為Android設備的各種硬件提供底層驅動,包含Display Driver、Camera Driver、USB Driver、Power Management等等。


關于Android的系統架構,可以參考兩張圖:

關于Android學習要問的一些問題

關于Android學習要問的一些問題


3.什么是Activity?請說一下Activity的基本用法。


Activity是一種包含用戶界面的組件,主要用于和用戶進行交互,

當Android應用運行的時候,它的Activity一般會充滿把手機屏幕的空間都占滿,

不過有的Activity也會以浮窗或者嵌入到其他Activity的形式呈現。


說起Activity的基本用法,我的印象就是以下內容:

  • 手動創建Activity:新建Android Project - 在向導中讓系統不要幫忙創建Activity - 在src目錄的包中新建一個繼承Activity類的子類 - 重寫onCreate方法 - 在res/layout目錄中創建自己的視圖文件activity_main.xml - 在Activity中setContentView(R.id.???) - 最后在AndroidManifest.xml文件中注冊這個Activity -  運行應用即可

  • 綁定自定義視圖:調用setContentView(),傳入一個布局文件的id作為參數,即可給當前的Activity加載一個布局

  • 在當前Activity中啟動另一個Activity:使用 startActivity(new Intent(當前Activity.this,目標Activity.class)); 啟動另一個Activity


4.請說一下Activity的生命周期。


參考連接:官方Activity的描述


Android系統用"棧"來管理應用的Activity,棧是后進先出的數據結構,

當啟動一個新的Activity它就會變成當前所要呈現的Activity(running Activity)而入到棧頂,

前一個Activity就會在它的下層,當例如按下Back鍵這個新的Activity出棧后,

前一個Activity又會變回running Activity回到棧頂。


一個Activity在它的生命周期中最多會有四種狀態:運行(running)、暫停(paused)、停止(stopped)、被干掉(銷毀,destroyed)。

  1. 正常顯示出來的、用戶看到的Activity就是running,也就是在棧頂的Activity;

  2. 如果突然來了個短信,以小彈窗的形式把running的Activity遮住了,失去了焦點,這時那個Activity就會變為paused;

  3. 如果在running的Activity點擊一個按鈕后,啟動了一個新的Activity,徹底覆蓋了在棧頂running的這個Activity,它就會變為stopped;

  4. 如果Activity處于stopped或paused狀態,而系統又很需要內存,系統就有可能根據需要終止這樣的Activity,就會被干掉。

備注:最后一個狀態因為官方文檔沒有一個很明確的字眼描述,只是說是這樣的情況,所以我自己理解為被干掉吧。


關于Activity的生命周期有七個方法貫穿其中:

 public class Activity extends ApplicationContext {
     protected void onCreate(Bundle savedInstanceState);

     protected void onStart();

     protected void onRestart();

     protected void onResume();

     protected void onPause();

     protected void onStop();

     protected void onDestroy();
 }


在Activity顯示的過程依次會調用onCreate() - onStart() - onResume(),

銷毀的過程依次會調用 onPause() - onStop()- onDestroy()。

示意圖如下:

關于Android學習要問的一些問題


5.說一下Activity的生命周期七個方法的作用。


6.說一下Activity的啟動模式。































向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

临江市| 万载县| 霍州市| 西盟| 诏安县| 绵竹市| 巴楚县| 盐山县| 辽中县| 南陵县| 北京市| 株洲市| 巴林左旗| 平乐县| 台东市| 营口市| 宜城市| 宁南县| 工布江达县| 吉安县| 津市市| 正安县| 乡城县| 紫阳县| 阳东县| 武宣县| 郑州市| 孙吴县| 屯门区| 嵩明县| 青岛市| 吉木萨尔县| 宽城| 吉安县| 阳原县| 都匀市| 白城市| 广德县| 水城县| 克东县| 凤山县|