Time of Update: 2018-12-03
下面簡單介紹一下中的各個Layer:*藍色部分-使用者空間應用程式應用程式層,其中包括Android應用程式以及架構和系統運行庫,和底層相關的是系統運行庫,而其中和顯示相關的就是Android的Surface Manager, 它負責對顯示子系統的管理,並且為多個應用程式提 供了2D和3D圖層的無縫融合。*黑色部分-HAL層,在2.2.1部分會有介紹*紅色部分-Linux kernel層Linux
Time of Update: 2018-12-03
(摘錄一本書中的部分章節,對理解整個Android系統的架構有協助,轉載如下。) 1.1.1 Android 的系統構架 要深入學習 Android,首先需要學習 Android的系統構架。Android的系統構架和其作業系統一樣,採用了分層的構架,層次非常清晰,因此要掌握它的構架並不難。為為Android 的系統構架圖,如果你對該圖已經不陌生,並且理解圖中所示的構架,那麼你可以跳過這部分內容(或者快速探索)
Time of Update: 2018-12-03
每次啟動android系統之後都要在設定那裏手動啟動開啟usb偵錯模式,太麻煩了。於是修改了init.rc 檔案和default.prop檔案實現開機自動開啟USB偵錯模式和配置android為USB OTA模式。這樣就方便多了。在init.rc 裡面加入如下幾段內容:on property:persist.service.adb.enable=1 write /sys/bus/platform/drivers/usb20_otg/force_usb_mode 2 start
Time of Update: 2018-12-03
在安卓應用中經常看到比如一串連網路 某個應用就在狀態列上更新一些資訊今天花了一個下午研究下貼上代碼:package com.example.study;import android.app.Activity;import android.content.Context;import android.content.Intent;import android.net.ConnectivityManager;import android.net.NetworkInfo;import android.
Time of Update: 2018-12-03
轉自:http://www.3lian.com/edu/2012/11-27/46405.html 為解決Android裝置片段化,引入一個概念density,也就是密度.它指的是在一定尺寸的物理螢幕上顯示像素的數量,一般使用dpi(dots per
Time of Update: 2018-12-03
中文:立波進程管家應用支援/官方網站:http://www.weibo.com/souappemail:souapp@163.com應用官方下載連結:http://www.souapp.com/site_media/SOUAPP_ProgressManager.apk應用描述:立波進程管家
Time of Update: 2018-12-03
最近很多同學問我SPS和PPS在那裡設定,其實這篇文章只是我 上篇文章的一個簡單實現 具體情況情看看上一篇 http://blog.csdn.net/zblue78/archive/2010/12/15/6078040.aspx 這裡只用HTC的G7做了H264的程式,諒解! csdn的資源慢了 粘代碼算了 資源 http://download.csdn.net/source/2918751 歡迎大家經常訪問我的blog http://blog.csdn.net/zblue78/
Time of Update: 2018-12-03
1. addview in a layoutsetContentView(R.layout.activity_tab_trade);LinearLayout mainLayout = (LinearLayout) findViewById(R.id.layout_tab_trader);RelativeLayout layout = (RelativeLayout) findViewById(R.id.layout_tab_tradertitle);String[] strLeft = new
Time of Update: 2018-12-03
Android對硬體的調用,google推薦使用HAL的方式進行調用,對於Andriod HAL的寫法,可以參考android源碼裡的hardware目錄下幾個模組的模版。在看HAL的編寫方法的過程中,會發現整個模組貌似沒有一個入口。一般說來模組都要有個入口,比如應用程式有main函數,可以為載入器進行載入執行,dll檔案有dllmain,而對於我們自己寫的動態連結程式庫,我們可以對庫中匯出的任何符號進行調用。問題來了,Android中的HAL是比較具有通用性的,需要上層的函數對其進行載入調用,
Time of Update: 2018-12-03
Binder是Android系統中實現處理序間通訊的核心機制,其本質是一種Proxy模式的具體實現,就像COM,CORBA一樣。 Proxy模式的基本思想是用戶端程式通過某種方式得到伺服器端的代理對象,所有對伺服器端的服務要求都發送給該代理對象,該代理對象負責同伺服器端進行通訊。從用戶端的角度看,訪問代理對象就如同訪問其它本機物件一樣;伺服器代理對象則屏蔽了所有的處理序間通訊細節。
Time of Update: 2018-12-03
最近因為項目的原因需要實現一個來電監聽,且產生一個懸浮視窗提示相關資訊(具體什麼資訊不方便透露哈)。現把我的思路及實現方法大致說下哈。 想要監聽來電首先需要要manifest中申明"android.permission.READ_PHONE_STATE"許可權 Xml代碼 <uses-permission android:name="android.permission.READ_PHONE_STATE"/> <uses-permission android:name="
Time of Update: 2018-12-03
在這篇文章中,我們將深入剖析一下如何向系統註冊Service。 在第一篇文章的例子中,ExampleService通過如下語句向系統註冊服務。// File: ExampleService.cppint r = defaultServiceManager()->addService(String16("byn.example"), new ExampleService());
Time of Update: 2018-12-03
通過地址查詢座標JSON格式:http://maps.google.com/maps/api/geocode/json?address=地點名稱&sensor=falseJSON格式:http://maps.googleapis.com/maps/api/geocode/json?address=地點名稱&sensor=false&language=zh-CNXML格式:http://maps.google.com/maps/api/geocode/xml?address
Time of Update: 2018-12-03
先說說所有的檔案DesktopView.java是地圖檔案,用來畫出案頭的檔案Food.java食物類檔案Rock.java石頭類檔案Snake.java蛇類檔案SnakeActivity.java主要ActivitySnakeView.java畫出蛇的檔案事先聲明,這個程式只是實現了最簡單的功能,下面是介面。好了,開始放代碼。package mars.com;import android.app.Activity;import android.os.Bundle;import android.
Time of Update: 2018-12-03
異常情境:經常在應用中需要處理一些耗時的工作,諸如讀取大檔案、訪問網路資源等。為了避免因程式假死而帶來的糟糕使用者體驗,通常我們可以通過線程+Handler或者Android提供的AsyncTask來解決該問題,並一般以ProgressDialog等提示性控制項來告知使用者當前的程式進度。而標題中描述的異常則會常常出現在這樣的情境中,並且往往掩蓋了導致異常的真正的罪魁禍首。 問題原因:從異常描述中,大致的意思是存在視窗控制代碼泄露,即未能及時銷毀某個PhoneWindow。而這往往誤導了我們,把
Time of Update: 2018-12-03
布局檔案就不貼了,很簡單的兩個xml檔案。我盡量把代碼的注釋寫清楚。package com.example.demofilebrower;import java.io.File;import java.io.IOException;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;import android.app.Activity;import
Time of Update: 2018-12-03
最近研究Lancher,從簡訊Mms的架構中過度到Launcher的bug和需求修改中,下面對launcher最簡單的主畫面程式的程式的布局的詳解,給讀者一個入門的感覺,android的主畫面一共分為5個螢幕,從左至右依次是:0,1,2,3,4。所以想在那個主畫面放哪些程式或者widget都可以在布局檔案中實現,下面我就說說這個布局檔案default_workspace.xml。這是對主畫面進行排列的布局檔案,在這裡面寫好,程式運行後就可以實現哪個螢幕放那些特定的程式或widget了。下面先看,
Time of Update: 2018-12-03
一個是在raw檔案夾下public String getFromRaw() {String result = "";try {InputStreamReader inputReader = new InputStreamReader(getResources().openRawResource(R.raw.a));BufferedReader bufReader = new BufferedReader(inputReader);String line = "";while ((line =
Time of Update: 2018-12-03
廢話不多說直接上代碼,十分簡單package com.example.demogame;import java.io.File;import java.io.FileInputStream;import android.app.Activity;import android.os.Bundle;import android.view.View;import android.widget.Button;import android.widget.EditText;import
Time of Update: 2018-12-03
自訂的Checkbox在布局的時候各種不服帖,試了很多方法都沒辦法把CheckBox框置中,主要是我不想讓checkbox的事件用LinearLayout接管,所以我把Checkbox的範圍放的很大。最後用了一種解決辦法: <CheckBox android:id="@+id/downloadlist_cell1_cb" android:layout_width="52dp"