Time of Update: 2018-12-04
SurfaceFlinger對象建立過程示意1 SurfaceSession的建立用戶端請求建立Surface時,首先在要與SurfaceFlinger建立一個Session,然後再Session上建立一個Connection通過概念返回Bclient對象。WindowManagerService在添加第一個視窗前會檢查SurfaceSession是否建立,如何沒有建立,將會建立立一個執行個體來代表與SurfaceFlinger的一個串連。new
Time of Update: 2018-12-04
如果android的source在android21檔案夾(即Makefile檔案的目錄)下,先執行cd android21,然後可以執行下面的命令;1、make Settings產生Settings.apk的檔案2、 make snod等同於make droid該命令產生一個新的系統映像system.img,速度比make快很多,但不穩定(有的時候不好用)將這個系統映像拷貝至sdk下cp out/target/product/generic/system.img
Time of Update: 2018-12-04
Service是Android系統提供的四大組件之一,它的地位和Activity的並列的,只不過沒有Activity的使用頻率高。顧名思義Service就是運行在背景一種服務程式,一般情況下,很少和使用者互動,最大的特點就是沒有可視化介面。
Time of Update: 2018-12-04
2010-11-13 12:36 511人閱讀 評論(0) 收藏 舉報 圖1 android 的makefile結構 android的編譯檔案主要依賴於mk檔案,其源碼編譯名字是Android.mk,而不我們常見的Makefile檔案。 android目錄下的Makefile檔案,include了build/core目錄下的main.mk檔案。main.mk檔案
Time of Update: 2018-12-04
splash1 :開機畫面,Nandroid備份為splash1.imgrecovery :裝置序號為mtd1,該分區是復原模式(即開機按Home+End進入的介面),Nandroid備份為recovery.imgboot :裝置序號為mtd2,底層作業系統核心開機磁碟分割,掛載 為/目錄,Nandroid備份為boot.imgsystem :裝置序號為mtd3,G1的Android核心平台,掛 載為/system目錄,通常為唯讀,Nandroid備份為system.imgcache
Time of Update: 2018-12-04
文章目錄 使用SharedPreferences儲存資料檔案儲存體資料網路儲存資料總結說明 在前面的2篇文章:Android SQLite解析、Android
Time of Update: 2018-12-04
android中藍牙裝置按鍵的監聽和一般的系統按鍵監聽相同,只不過是處理不同的KeyEvent,這裡說下藍芽發出的上一首,下一首的KeyEvent的值,監聽到並做相應的處理即可。 public boolean onKeyDown(int keyCode, KeyEvent event) { switch (keyCode) { case KeyEvent.KEYCODE_MEDIA_NEXT:// 下一首 // 實現下一首對應的介面
Time of Update: 2018-12-04
轉載請註明文章出處和作者!出處:http://blog.csdn.net/xl19862005作者:大熊(Xandy)一、解調電路
Time of Update: 2018-12-04
一、基礎 1. Android是個多使用者系統2. 預設情況下, Android為每個應用程式指派一個獨立的使用者名稱, 只有Android系統知道這個使用者名稱, 應用系統本身並不知道, Android為這個使用者指派應用所需的許可權。3. 每個應用運行在獨立的VM中,所以不同的應用之間是無法無法訪問的。4.預設情況下, 每個應用程式運行在獨立的Linux進程中, 當應用中的任何組件被執行時,Android將啟動這個進程。 應用之間的互動:1. 兩個應用程式可以被指定共用同一個使用者名稱,
Time of Update: 2018-12-04
兩種解決方案:一、1、首先根據不同解析度擷取不同字型大小。 在RES裡建立values-480x320/strings.xml 裡面設定<dimen name="Text_size">30px</dimen>和 values-800x400/strings.xml 裡面設定<dimen name="Text_size">30px</dimen>分別代表480X320 和 800X400解析度情況下
Time of Update: 2018-12-04
平時我們開發Android應用時可能部分要求由於效能問題需要使用NDK來實現,比如OpenGL、OpenCore這樣的多媒體應用,使用本地C/C++語言可以處理一些效能敏感或複雜的演算法,Android123就我們日常NDK開發中遇到的問題以及技巧逐一總結方便網友查閱。 1. Android NDK編譯的應用可以運行在Android 1.5或更高的作業系統上,在Android平台中本地調用主要通過JNI方式處理,JNI調用開銷不小如果很簡單的操作沒有必要畫蛇添足。 2.
Time of Update: 2018-12-04
1.從google搜尋內容Intent intent = new Intent();intent.setAction(Intent.ACTION_WEB_SEARCH);intent.putExtra(SearchManager.QUERY,"searchString")startActivity(intent);2.瀏覽網頁Uri uri = Uri.parse("http://www.google.com");Intent it = new
Time of Update: 2018-12-04
在Android中錄音可以用MediaRecord錄音,操作比較簡單。但是不夠專業,就是不能對音頻進行處理。如果要進行音訊即時的處理或者音訊一些封裝就可以用AudioRecord來進行錄音了。這裡給出一段代碼。實現了AudioRecord的錄音和WAV格式音訊封裝。用AudioTrack和AudioTrack類可以進行邊錄邊播,可以參考:http://blog.sina.com.cn/s/blog_6309e1ed0100j1rw.html我們這裡的代碼沒有播放。但是有封裝和詳解,如下:pack
Time of Update: 2018-12-04
在網上看到很多基礎教程在模擬器串連PC主機的時候都是以127.0.0.1為PC主機的IP地址,其實這個錯誤的。如果使用這個地址,那就好像我們平時使用PC機來調試一些Web程式時寫的localhost一樣,但是在Android系統中,localhost指向的就是Android系統而已,因此使用127.0.0.1這個地址調試時主機沒有任何反應就是正常的。根據個人開發經驗,Android模擬器串連PC主機調試的正確IP地址應該是:10.0.2.2 安卓4.0以上是不可以在主線程中串連網路,會出現錯誤
Time of Update: 2018-12-04
由於每個應用程式都運行在自己的進程空間,並且可以從應用程式UI運行另一個服務進程,而且經常會在不同的進程間傳遞對象。在Android平台,一個進程通常不能訪問另一個進程的記憶體空間,所以要想對話,需要將對象分解成作業系統可以理解的基本單元,並且有序的通過進程邊界。以下講對如何?AIDL調用進行講解,本文包括AIDL介面調用,回調,以及傳遞複雜資料類型Demo運行Aidl檔案Person.aidlpackage com.archermind.aidl;parcelable
Time of Update: 2018-12-04
Android開發中,開啟一個線程會佔用多少記憶體空間?這個問題我一直沒有測試過,以前在網上看見別人說需要1M記憶體(可能是該網友包含了很多資料),今天對這個問題做了一個測試。為了不影響測試,我使用空線程(線程不做任何事情,也不包含任何資料)。先貼上測試代碼thread_occupy_memory.xml<?xml version="1.0" encoding="utf-8"?><LinearLayout
Time of Update: 2018-12-04
一直覺得android service和thread的功能差不多。service 是android的一種控制項,有可能運行在同一個線程上,也有可能運行在其他線程上。servie是系統的組件,它由系統進程託管(servicemanager);它們之間的通訊類似於client和server,是一種輕量級的ipc通訊,這種通訊的載體是binder,它是在linux層交換資訊的一種ipc。而thread是由本應用程式託管。1). Thread:Thread
Time of Update: 2018-12-04
對於Android NDK版本來說,編譯出來的so檔案對應啟動並執行Android韌體最小版本是有一定要求的,高版本的NDK編譯出的.so檔案由於包含了一些新的特性,新特性可能在低版本的Android韌體上無法運行,目前最新的對著表Android開發網總結如下API Level 1 --- Android 1.0 不支援NDKAPI Level 2 --- Android 1.1 不支援NDKAPI Level 3 --- Android 1.5 NDK 1API Level 4
Time of Update: 2018-12-04
最近要做一個android 2.2平台上的工作管理員,可以前API:restartPackage在2.2上無效。在平台1.5和1.6上restartPackage的api是有效:ActivityManager.restartPackage(pakagename);在2.2上多次測試無效,後來查看framework發現已經給google屏蔽了?可目前沒有找到替代的API 如果有系統許可權的話,1. 使用以下代碼 @SuppressWarnings({ "rawtypes" })
Time of Update: 2018-12-04
客戶要求FM播放時拔出耳機後,FM APP出現“拔出耳機,Fm停止"的提示框,然後自動close修改FMRadioService.java1.添加如下import,以便能顯示toast////AAAAA add startimport android.widget.Toast;////AAAAA add endpublic class FMRadioService extends Service implements