綁定帳號登入

Android 台灣中文網

tag 標籤: 元件

相關帖子

版塊 作者 回覆/查看 最後發表
兩韓若有事 被動元件要留意 時事新聞 游幃翔 2013-5-22 0 75 游幃翔 2013-5-22 18:08
台被動元件Q2產值 估微增 時事新聞 游幃翔 2013-5-22 0 72 游幃翔 2013-5-22 18:13
☆安卓白牌軍☆My Android Tools(Pro) v1.2.8.6 元件禁用 attachment Android 軟體下載 HAO_KO 2016-3-14 0 378 HAO_KO 2016-3-14 19:23
☆安卓白牌軍☆My Android Tools(Pro) v1.2.9.6 + Xposed v0.8 元件禁用 attachment Android 軟體下載 HAO_KO 2016-5-16 0 840 HAO_KO 2016-5-16 09:43
全新 Mio MiVue M555 金剛王Plus 快速安裝版 SONY感光元件行車記 出售市場 kimitw 2017-8-11 0 707 kimitw 2017-8-11 20:25
資料老舊,停止分享。 - [閱讀權限 50]attach_img Windows 軟體下載 匿名 2020-3-8 24 4331 slingsj 2020-4-11 09:33
資料老舊,停止分享。 - [閱讀權限 50]attach_img Windows 軟體下載 匿名 2020-6-6 10 1896 Teshuva 2018-7-25 20:21
驅動一鍵修復 DirectX Repair(OL) 4.0.0.35152【中文免費版】 attach_img Windows 軟體下載 cyy001 2020-6-23 11 3714 seajeanbbs 2021-8-20 23:42
. 正在下載韌體升級元件   一直停在100%   ... Galaxy R I9103 squall3083 2012-10-15 1 891 leanhua 2011-7-16 23:21
有人知道Chain fire 3D 這元件可安裝在NOTE2上嗎? GALAXY Note2 N7100 inrex 2012-10-18 12 1961 fox1699 2013-2-20 15:13
關於元件問題 attach_img Android 軟體設計 aa3522 2013-4-14 2 676 sky1988a 2013-4-14 13:23
被動元件有起色 拚單季轉盈 時事新聞 游幃翔 2013-4-15 0 144 游幃翔 2013-4-15 18:00
台積電、Altera合作55奈米領域 生產下一代可程式元件 時事新聞 游幃翔 2013-4-16 0 102 游幃翔 2013-4-16 18:22
NFC出運 測試被動元件受惠 時事新聞 游幃翔 2013-5-4 0 289 游幃翔 2013-5-4 16:07
☆安卓白牌軍☆My Android Tools(Pro) v1.2.7.8 元件禁用 attachment Android 軟體下載 HAO_KO 2015-11-6 2 848 chi67 2015-11-8 02:43
☆安卓白牌軍☆My Android Tools(Pro) v1.2.7.9 元件禁用 attachment Android 軟體下載 HAO_KO 2015-11-13 2 590 gg12306 2015-11-26 17:25

相關日誌

分享 Android四大元件
qwertylee 2017-12-19 16:29
一、 Activity 是四個元件中最基本的模組,每一個 Activity 就代表著一個畫面,可以把它當成是 User Interface 。系統中的每一個 Activity 會藉由堆疊來進行管理,若有新的 Activity 被啟動,會加入至堆疊的最上層。 Activity 的狀態如下: a. Runing :代表該 Activity 在前景中執行,使用者可以看到的狀態。 b. Paused :該 Activity 處於透明的狀態,使用者仍然看的見,此時的狀態為暫停,該 Activity 仍然存在,若使用者重新啟動該程式,原本所輸入的內容仍然存在。除非手機上的記憶體嚴重不足,則有可能遭到關閉。 c. Stopped :畫面完全被其它 Activity 給覆蓋掉,就代表該 Activity 為停止,仍保留使用者原先輸入之內容,但使用者已經完全看不到這個畫面。除非手機上的記憶體嚴重不足,則有可能遭到關閉。 d. Restarted :若 Activity 處於 Stopped 狀態的話,系統可以進行關閉的動作或要求該 Activity 完成其工作。若要重新顯示時,就必需重新啟動並恢復到之前的狀態。 二、 Service 可以讓程式於背景執行,如播放音樂時就可以透過 Service 來處理,而一般的 Activity 要與 Service 溝通就會透過 IPC 。 1、 IPC IPC 的方法有兩種,分別是 Intent 和 Binder ,就是為了 Activity 與 Service 溝通而建立出來的輕量級 IPC 框架。 基於 Linux 的 Android 系統不支援當前程序訪問其它程序的資料,因此會透過特定的方法來實現, Android 藉由 Binder 來達到程序間的通訊。 2、 Intent 最常使用的時機,是用來喚起其它 Activity ,是最常使用的 IPC 機制,若要透過 Intent 來忽叫 Service ,則必需在 AndroidManifest 檔案中對接收此 Intent 的 Service 做說明,只要附合 Intent 就可以和此 Service 做關聯。但是 Intent 只能攜帶一些資料來開啟另一個 ctivity 或 Service ,沒辦法在程序運行時進行資料的交換。 3、 Binder 最主要是將各個不同的 Service 連結起來,就像是 Service 的中心。以實例來說, Service 就像是一輛車,而 Binder 就像是停車場。藉由此機制,我們得以取得其它 Service 的介面。 一般 Service 分成兩種,一種是自行定義的 Service 、一種是系統已建立好的 Service( 如聽音樂 ) ,若我們想播放音樂,不可能從最底層開始實作,而是採用 SDK 提供的 API ,如下圖所示。 此圖說明所建立的 OurService 會呼叫 SDK 的 MediaPlayer API ,此 API 會透過 JNI(Java Native Interface) 來呼叫底層的 c++ 函式,圖中也可看出, Binder Driver 紀錄了所有的 Service 的接口,可由此找出 MediaPlayerService 所在的接口並進行呼叫。當然, Binder 所紀錄的不只有系統 Service ,而是包含自行定義的 OurService 皆有紀錄。 撰寫 Service 時會複寫一名為 onBind() 的函式,這是與 Binder 相關的函式,這裡會先談到 Service Managerment 。若 Binder 是停車場,則 Service Managerment 便是停車場管理員,它本身也是一個 Service 。當程式想透過 Binder 與 Service 溝通時,皆會先向 Service Managerment 請求,取的目標的 Binder 物件,再透過 Transact() Method 將訊息傳送過去。 Binder 和 Intent 的差別在於, Intent 是屬於上層的資料交換,若使用 Binder 時則是透過 JNI 與底層的 Binder 互動,一般狀況下使用 Intent 是較簡單的方式,但溝通的目標若是屬於較底層的 Service ,則採用 Binder 較為合適。 4、 AIDL 是幫助實現 Binder 通信的一種工具,只要用簡單的函數設定,就會自動產生一個 JAVA 檔案,其包含了 Proxy 與 Stub 的訪問接口。 Proxy 用於使用者端的程、 Stub 用於 Service 的程序,這些程式也可以自行建立, AIDL 只是提供一個產生的工具。 三、 Broadcast Receiver 不同於 Activity 沒有顯示的介面,共分為廣播接收與廣播發送兩大類,廣播實際上指的就是 Intent ,發送者可以藉由 Context.sendBroadcast 接口發送廣播,接收者通過 Context.registReceiver() 動態註冊,或經由 AndroidManifiest.xml 來進行靜態註冊。 ( 當應用程式發送廣播時,會將發送的 Intent 與系統註冊的 BroadcastReceive 進行配對,若配對成功則執行 onReceive 的函式進行接收 ) 動態與靜態註冊差別 a. bindService 的使用 : receive 註冊的廣播,在 onReceive 結束後就不存在,所以不能在其中給自己進行異步傳輸, bindService 只能使用 startService 、想跟 Service 交互可使用 peekService 。 b. 手動控制: 若採用動態註冊,可以隨時註冊或取消註冊;若是採用靜態註冊,系統開機後就會自動掃描,開機後一直運行。 c. 資源消耗不同: 由於動態註冊可以手動控制,因此可以適當的註冊或取消,以節省資源。 d. 有效期限不同: 透過動態註冊時,若對其進行註冊的 Context 對像被關閉或是運行了 unregisterReceiver 方法時就失效了;而靜態註冊時,只要該程式未被關閉,就一直存在。 e. 使用情況不同: 自己發送與接收的廣播可以採用動態註冊;若是系統常用的廣播可以用靜態註冊。 生命周期方面, BroadcastReceiver 在 onReceive 函數執行結束後就會被釋放掉,不適合做一些異步操作 ( 如下載檔案 ) ,有可能在完成前就被系統關閉。同時由於 ANR 限制 BroadcastReceiver 的 onReceive 必需在主程序進行,因此不適合用於耗時的操作。 1、 分類 BroadcastReceive 又分為普通和有序兩類,藉由 Context.sendBroadcast 發送的廣播接收到的順序是不固定的,而經由 Context.sendOrderedBroadcast 的廣播則是有序廣播, 接收者是有順序的接收到資訊,並且可以對廣播進行修改再往下傳送 。 四、 Content Provider Android 提供了四種資料存取機制: Preferences 、 Files 、 SQLite 與 Network 。但這四種皆屬於一個應用程式,其它程式無法共享。而 Content Provider 就是可以讓一個應用程式分享他的資料給其它應用程式,且是以資料庫的型式來呈現資料。例如系統中的通訊錄、系統設定等,就是以 SQLite 資料庫的方式來儲存,而每一個應用程式都可以建立自己的資料庫,其它的程式想要取用,就必需要有 Content Provider 開放出來才可以存取。
1 次閱讀|0 個評論