Time of Update: 2014-01-14
1 RIL_J與RIL_C通訊 上層通常要和RILD通訊,是通過Socket,在RIL_JAVA層實現;沿著這樣代碼流程進行Framework——native: Phone——RIL_JAVA——>RIL_CPP 那麼可不可以直接和RILD(RIL_CPP)進行通訊呢? 肯定是可以的,因為通訊使用的rild socket,只要通過這個socket就可以和RILD進行通訊
Time of Update: 2014-01-14
Android藍芽串口通訊閑著無聊玩起了Android藍芽模組與單片機藍芽模組的通訊,簡單思路就是要手機通過藍芽發送控制指令給單片機,並作簡單的控制應用。單片機的藍芽模組串連與程式暫且略過,此文主要描述Android手機藍芽用戶端遇到的那點破事。進入正題:串連藍牙裝置——藍芽用戶端:Android手機一般以用戶端的角色主動串連SPP協議裝置(接上藍芽模組的數字感應器),用戶端串連流程是:1.使用registerReceiver註冊BroadcastReceiver來擷取藍芽狀態、搜尋裝置等訊息;
Time of Update: 2014-01-14
讓TextView和EditText發出聲音在撥打到電話等應用中很常見,如果採用TTS語音引擎未免太麻煩!所以可以採用MediaPlayer播放語音檔案的形式下面是關鍵代碼:關鍵變數定義private TextView numInput;private int length = 0; //當前字串長度private int beforeLength = 0;//上一次字串長度private MediaPlayer mediaPlayer;private ArrayList mListeners
Time of Update: 2014-01-14
方法說明構造方法 SoundPool(int maxStreams, int streamType, int srcQuality) maxStreams:該參數用於設定同時能夠播放多少音效,如設定為3,則最多同時可以播放3個音效 streamType:音訊類型,在遊戲中通常設定為STREAM_MUSIC srcQuality:音頻檔案的品質,預設設定為0 載入音頻檔案public int load(Context context, int resId, int
Time of Update: 2014-01-14
提供者包含全球系統級的設定裝置的偏好Intent 的 意圖: Intent intent = new Inetnt(Setings);Setings: 1. ACTION_ACCESSIBILITY_SETTINGS : // 跳轉系統的協助工具功能介面 Intent intent = new Intent(Settings.ACTION_ACCESSIBILITY_SETTINGS); startActivity(intent);
Time of Update: 2014-01-14
下面開始實現一個閃屏的效果,首先自訂類繼承於View,然後重寫onDraw方法,之前使用onDraw方法可以繪圖,但是只是繪製一次,那如何?迴圈呢。很容易想到使用invalidate()這個方法,因為使用這個方法它就會調用onDraw方法,這樣就形成了一個死迴圈,不斷重新整理繪製介面。當然還有一個postInvalidate().方法,它與invalidate()的區別在於它用於非UI的線程,invalidate()必須在UI線程使用。所以,代碼可以這樣寫:import
Time of Update: 2014-01-14
在平常android應用開發中,多數只是調framwork中的API進行application layer的coding,而在系統開發中可能會自己添加系統服務;系統服務如任何添加,服務如何調native code,以及service如何被manager調用...這裡我給出一個結果驗證的demo。1、實現編寫native code,framwork/base/services/jni/com_android_server_VirtualInputService.cpp;
Time of Update: 2014-01-14
Transmission是一款開源的跨平台的BT下載用戶端,本人已經將Transmission成功移植到android平台,具體移植方法這裡暫時不作介紹了,這裡發布我在android源碼下移植成功的Transmission源碼:https://github.com/shilingkai/transmission_android源碼下完後如何編譯:將transmission_android根目錄下的transmission目錄拷貝到android源碼根目錄下的external目錄下cd
Time of Update: 2014-01-14
首先Android架構架構圖:(來自網上,我覺得這張圖看起來很清晰) Linux核心啟動之後就到Android Init進程,進而啟動Android相關的服務和應用。啟動的過程如所示:(圖片來自網上,後面有地址) 下面將從Android4.0源碼中,和網路達人對此的總結中,對此過程加以學習瞭解和總結,以下學習過程中程式碼片段中均有省略不完整,請參照源碼。 一
Time of Update: 2014-01-14
大綱:1. Android剖析 Linux核心本地庫(Native Libraries)Android運行時(Android Runtime)應用程式框架 2. Android運行機制 啟動流程層間互動(Layer Interaction) 一、 Android剖析如所示為Android的架構圖 1.
Time of Update: 2014-01-14
Intent應該算是Android中特有的東西。你可以在Intent中指定程式要執行的動作(比如:view,edit,dial),以及程式執行到該動作時所需要的資料。都指定好後,只要調用startActivity(),Android系統會自動尋找最符合你指定要求的應用程式,並執行該程式。下面列出幾種Intent的用法顯示網頁:Uri uri = Uri.parse("http://www.google.com");Intent it = new
Time of Update: 2014-01-13
Android 4.4發布了一個ART運行時,準備用來替換掉之前一直使用的Dalvik虛擬機器,希望籍此解決飽受詬病的效能問題。老羅不打算分析ART的實現原理,只是很有興趣知道ART是如何無縫替換掉原來的Dalvik虛擬機器的。畢竟在原來的系統中,大量的代碼都是運行在Dalvik虛擬機器裡面的。開始覺得這個替換工作是挺複雜的,但是分析了相關代碼之後,發現思路是很清晰的。本文就詳細分析這個無縫的替換過程。
Time of Update: 2014-01-13
SQLite是Android中最方便使用的資料庫了,現在看下如何快速的在SQLite中匯入匯出資料。首先由於是.NET項目轉Android,原有資料庫使用的是SQLSERVER,由於項目相同部分結構還是需要用到原有的資料表結構,為了減少重複勞動,直接將SQLSERVER中的錶轉換成SQLite,當前使用的轉換工具是“Convert SQL Server DB to SQLite
Time of Update: 2014-01-13
轉載請註明出處:http://blog.csdn.net/singwhatiwanna/article/details/18154335Activity是Android中一個很重要的概念,堪稱四大組件之首,關於Activity有很多內容,比如生命週期和啟動Flags,這二者想要說清楚,恐怕又要寫兩篇長文,更何況分析它們的源碼呢。不過本文的側重點不是它們,我要介紹的是一個Activity典型的啟動過程,本文會從源碼的角度對其進行分析。我們知道,當startActivity被調用的時候,可以啟動一個
Time of Update: 2014-01-13
2014年新年伊始,向大家拜個早年兒,祝所有看了這篇貼子的,沒看的,即將要看的和以後有機會能再看到的新老朋友們,道一聲:“新年快樂,和家團圓,萬事如意,心想事成,平安順利!”在過去的一年裡,世界有很多大事發生,我們國家也有很多大事,對於我來說,那麼值得慶祝的,那就是在 2013-12-31 駕駛員考試最後一科考完順利通過。幸福來得太快,有些招架不住。不過
Time of Update: 2014-01-12
Android系統為我們提供了豐富的可視化使用者介面組件,包括菜單、對話方塊、按鈕、下拉式清單等。Android系統借用了Java裡的UI設計思想,包括事件響應機制和布局管理。Android系統中的所有UI類都是建立在View和ViewGroup這兩個類的基礎之上。所有的View的子類稱為“Widge”,所有ViewGroup的子類稱為“Layout”。View和ViewGroup之間採用了組合設計模式(Composite),可以使得“部分-整體”同等對待。ViewGroup作為版面配置容器類在
Time of Update: 2014-01-13
平時我們在使用ViewFlipper的時候一方面感歎ViewFlipper的使用很簡單,另一方面,我們時常感歎ViewFlipper給我們的介面方法太少,很多常用的效果都不好做,很難施展拳腳,這篇文章將詳細介紹ViewFlipper的架構以及它的工作原理,相信看了這篇文章後你會發現ViewFlipper能展現的效果也可以很多,自己也可以根據自己的需求來定製屬於自己的ViewFlipper。類的繼承關係圖:由類的關係圖發現原來其實ViewFlipperpublic void
Time of Update: 2014-01-12
最近在公司,項目不是很忙了,偶爾看見一個兄台在CSDN求助,幫忙要一個自訂的漸層色進度條,我當時看了一下進度條,感覺挺漂亮的,就嘗試的去自訂view實現了一個,廢話不說,先吧! 這個自訂的view,完全脫離了android內建的ProgressView,並且沒使用一張圖片,這樣就能更好的降低程式碼上的耦合性!下面我貼出代碼 ,大概講解一下實現思路吧! package com.spring.progressview;import
Time of Update: 2014-01-12
Android源碼下載完後的目錄如下:整個代碼的大小為:25.559GB。一、構建系統如下用於構建Android源碼樹的指令應用於所有的代碼分支,包括master分支。vcD4KPHA+PGJyPgo8L3A+CjxwPjEu0aHU8bfW1qc8L3A+CjxwPrm5vajPtc2ztcTSu9Cp0qrH88rH08m9q9Kq0aHU8bHg0uu1xNS0tPrC67XEsOaxvr72tqi1xKGjzai5/c341rdodHRwOi8vc291cmNlLmFuZHJvaWQuY
Time of Update: 2014-01-12
大多人都說Android原生不支援Gif圖的動態展示,而我之前也是在這種影響下潛意識認為Android原生不支援Gif圖。但是我今天發現,其實WebView可以完美支援,WebView就是為了Web內容的展示而生,按理來說,所有web元素它都應該支援,而且不存在網上各種自訂GifView存在的效能問題。 廢話少說,下面開始介紹WebView顯示Gif圖的用法。 mWeb.loadDataWithBaseURL(null, "動態顯示Gif表情", "text/html", "utf-