Time of Update: 2018-12-05
1.Demo說明與示範該Demo示範onSaveInstanceState(BundlesavedBundle) 來保持UI狀態效果如2.視頻講解http://www.eyeandroid.com/thread-10735-1-1.html3.Demo分析 本例是通過onSaveInstanceState(Bundle savedBundle) 來實現保持UI狀態。 和onPause,onResume不同的是,onSaveInstanceState不是Activity Life
Time of Update: 2018-12-05
1.主要內容本講講解onSaveInstanceState與onRestoreInstanceState的使用。2.視頻講解http://www.eyeandroid.com/thread-11391-1-1.html3.翻譯參考存在一些情況,由於普通的程式行為,你的activity會被銷毀,比如,當使用者點擊Back按鈕,或者自己調用finish()方法。另外,如果activity被停止了並且很久沒被使用,或者前台的系統需要更多的資源,系統也可能會銷毀你的activity。 當你的activi
Time of Update: 2018-12-05
腳盆原創,轉載請註明出處。Android 1.5之後將調節亮度的api隱藏了,不過android的源碼中依然有方法可以實現,如下: IPowerManager power = IPowerManager.Stub.asInterface(ServiceManager .getService("power")); if (power != null) {
Time of Update: 2018-12-05
前幾天有需要在java代碼中調用二進位程式,就在網上找了些資料,寫點東西記錄下。Android 也是基於linux的系統,當然也可以運行二進位的可執行檔。只不過Android限制了直接的方式只能安裝運行apk檔案。雖然有NDK可以用動態連結程式庫的方式來用C的二進位代碼,但畢竟不方便。至少我們可以調用linux的一些基本命令,如ls,rm等。第一種方法:Runtime.exec(String[]
Time of Update: 2018-12-05
屏是LANDSCAPE的,要讓它預設顯示為PORTRAIT.1.kernel裡要旋轉FrameBuffer. 啟動參數裡加入fbcon=rotate:1 (0:正常屏; 1:順時鐘轉90度; 2:轉180度; 3:順時鐘轉270度;)最後產生的autoconf.h裡有類似項:#define CONFIG_CMDLINE "console=ttySAC0,115200
Time of Update: 2018-12-05
http://blog.csdn.net/knock/article/details/5511255為了調試,必須要將log怎麼列印的搞清楚,於是有了以下的分析。我們通常在程式中插入LOGD(..),LOGE(..)之類的語句,但什麼情況下可以查看這些列印訊息呢?首先,來到定義處:system/core/include/cutils/log.h,在開頭就可以看到#ifndef LOG_TAG#define LOG_TAG NULL#endif所以程式中#include
Time of Update: 2018-12-05
本文從代碼的角度來分析Android多媒體架構中mediaplay是如何調用opencore的。一 摘要 對於Android 多媒體架構,Google 在 Android 2.2中就已經實現了stagefright,但還是保留了opencore;在新推出的2.3版本中,正式拋棄了opencore,而採用stagefright。網上關於Android opencore架構的文章有很多,例如下面的連結:http://www.360doc.com/content/10/0207/22/15597
Time of Update: 2018-12-05
一、編譯環境搭建Ubuntu Linux (64-bit x86)This has not been as well tested. Please send success or failure reports to android-porting@googlegroups.com .The Android build requires a 32-bit build environment as well as some other tools:Required Packages:Git,
Time of Update: 2018-12-05
Android 是基於Linux 核心的,對於喜歡研究底層的朋友來說,自然不會放過搞明白Linux 層面上一些東西的機會。當然,最終目的還是要搞清楚 Linux 是如何和上層lib以及虛擬機器結合的,但是這得等Google完全開源Android 之後了。很多關於Linux啟動並執行細節,都可以通過adb 的shell來看到。 首先用emulator console來啟動模擬器並進入shell介面,試一試,發現雖然很多命令不能用,比如find,但是ls之類的基本操作還是可以的。然後echo
Time of Update: 2018-12-05
一:update.zip包的製作 1:建立一個目標,在此目錄下準備好需要的檔案,如system目錄檔案、boot.img、recovery.img等. mkdir testupdate cp system/ testupdate/ -tf 註:如果檔案是system.img鏡像可以用unyaffs解壓出來得到system 2:用make-update-script工具產生update-script指令碼,如下 cp make-update-script
Time of Update: 2018-12-05
1、android檔案系統的結構android源碼編譯後得到system.img,ramdisk.img,userdata.img映像檔案。其中, ramdisk.img是emulator的檔案系統,system.img包括了主要的包、庫等檔案,userdata.img包括了一些使用者資料,emulator載入這3個映像檔案後,會把 system和 userdata分別載入到 ramdisk檔案系統中的system和
Time of Update: 2018-12-05
Android上替換Launcher有兩種方法,一種是將img燒到裝置上時,將Launcher打進去,另外也可以試著替換Launcher。這裡先測試第二種。想修改替換以下Android裡的Launcher, 但是Laucher所在的目錄/system/app是唯讀。需要先通過remount將其設定為rw。具體操作:lixinso@lixinso-desktop:~$ adb devices List of devices attached emulator-5554
Time of Update: 2018-12-05
由於工作的需要,今天研究了在android下建立檔案夾和修改其許可權的方法,需要瞭解的是每個應用程式套件組合都會有一個私人的儲存資料的目錄(類似檔案夾),只有屬於該包的應用程式才能寫入該目錄空間,每個包應用程式的私人資料目錄位 於Android絕對路徑/data/data/<包名>/目錄中。除了私人資料目錄應用程式還擁有/sdcard目錄(即SD Card的寫入許可權,但不可以修改sd card下檔案的存取權限)。檔案系統中其他系統目錄,第三方應用程式是不可寫入的。
Time of Update: 2018-12-05
package com.android.image.demo;import java.io.InputStream;import android.app.Activity;import android.content.Context;import android.graphics.Bitmap;import android.graphics.BitmapFactory;import android.graphics.Canvas;import
Time of Update: 2018-12-05
官方編譯環境: Ubuntu 10.04 64bit 64-bit Sun JDK本文編譯環境: Ubuntu 10.04 32bit 32-bit Sun JDK參考:http://source.android.com/source/download.html安裝java1.6met issues 1:issue "You are attempting to build on a 32-bit system"How to fix: $ vim
Time of Update: 2018-12-05
from:http://code.google.com/p/android/issues/detail?id=25467Reported by Lars.Vo...@gmail.com, Feb 13, 2012If I add a ShareActionProvider to my application it works file on a real device but not on the emulator. If I press the Share button in the
Time of Update: 2018-12-05
. Android內核Porting相關背景知識1.1 運行平台Google 的Android平台到20020227為止,應用部分還是以二進制的 Binary形式發佈的,其編譯的目標平台 ARM926EJ-S的CPU是屬於ARMV5T的版本,所以ARMV4架購的CPU平台無法使用其二進制代碼。關於這點,可以參考下面這篇文章,Benno在此做了詳細的理論分析和代碼測試:http://benno.id.au/blog/2007/11/21/android-neo1973 .
Time of Update: 2018-12-05
Android 2.1 |-- Makefile |-- bionic (bionic C庫) |-- bootable (啟動引導相關代碼) |-- build (存放系統編譯規則及generic等基礎開發包配置) |-- cts (Android相容性測試套件標準) |-- dalvik (dalvik JAVA虛擬機器) |-- development (應用程式開發相關) |-- external (android使用的一些開源的模組) |-- frameworks (
Time of Update: 2018-12-05
1、Android模擬器介紹Android中提供了一個模擬器來類比ARM核的行動裝置。Android的模擬器是基於QEMU開發的,QEMU是一個有名的開源虛擬機器項目(詳見http://bellard.org/qemu/),它可以提供一個虛擬ARM行動裝置。Android模擬器被命名為goldfish,用來類比包括下面一些功能的ARM SoC:* ARM926ej-S CPU* Thumb support* MMC* RTC* Keyboard* USB Gadget* framebuffer*
Time of Update: 2018-12-05
Layout對於迅速的搭建介面和提高介面在不同解析度的螢幕上的適應性具有很大的作用。這裡簡要介紹Android的Layout和研究一下它的實現。 Android有4種Layout:FrameLayout,LinearLayout,TableLayout,RelativeLayout。 放入Layout中進行排布的View的XML屬性: 4種Layout中Item所共有的XML屬性: (1)layout_width