Time of Update: 2013-12-11
[java] <span style="font-size:12px;"> @Override public Object onRetainNonConfigurationInstance() { final List<String> list1 =
Time of Update: 2013-12-11
這一節我們看看整個Laucher的進入點,同時Laucher在載入了它的布局檔案Laucher.xml時都幹了些什麼。我們在原始碼中可以找到LauncherApplication, 它繼承了Application類,當整個Launcher啟動時,它就是整個程式的入口。我們先來看它們在AndroidManifest.xml中是怎麼配置的。1. <application2. android:name="com.android.
Time of Update: 2013-12-11
一、Android應用程式架構當我們安裝好Android到IDE後,我們可以看到如下程式架構,其中:l srcjava原代碼存放目錄l gengen 目錄中存放所有由Android開發工具自動產生的檔案。目錄中最重要的就是R.java檔案。
Time of Update: 2013-12-11
Android 提供了多種儲存資料的方法,其中最簡單的是使用Shared Preferences. Shared Preferences 可以儲存 Key/value 對,Shared Preferences 支援存取 boolean, float ,long ,integer, string ,最常用的使用Shared Preferences是用來儲存一些應用偏好。此外的一個方法是使用onSaveInstanceState(),這是特別用來儲存UI 狀態的。App->Activity-&
Time of Update: 2013-12-11
前面LocalService 主要是提供同一Application中組件來使用,如果希望支援不同應用或進程使用Service。可以通過Messenger。使用Messgener可以用來支援處理序間通訊而無需使用AIDL。下面步驟說明裡Messenger的使用方法:在Service中定義一個Handler來處理來自Client的請求。使用這個Handler建立一個Messenger (含有對Handler的引用).Messenger建立一個IBinder對象返回給Client( onBind方法)
Time of Update: 2013-12-11
當你在開發Android應用時或Android系統時,如果希望自己的產品在全球或多國上市進行銷售時,那麼國際化的工作必不可少。Android系統的國際化需要在應用所在目錄res檔案夾下建立針對不同語言或地區的values檔案夾,那麼具體應該怎樣進行命名,最終結構又是怎麼樣的呢?例:AndroidDemo //應用程式名稱 | |_____res //Android應用資源根目錄
Time of Update: 2013-12-11
mainActivity:[java]package smalt.play.show; import android.app.Activity; import android.os.Bundle; import android.os.Handler; import android.view.View; import android.view.View.OnClickListener; import android.view.
Time of Update: 2013-12-11
push到local/apache上[html]<span style="font-family:Microsoft YaHei;">cd bin chmod 0755 *</span> 添加到bash.bashrc,如果有的話[html] <span style="font-family:Microsoft YaHei;">export PATH=/sd-ext/local/apache/
Time of Update: 2013-12-11
[java] package smalt.music.utils; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.graphics.BitmapFactory.Options; //載入圖片的方法:3種 public class BitmapUntil
Time of Update: 2013-12-11
一、Power、Home、Menu、back以及Vol+、Vol-的處理我們知道,在WindowManagerService建立的時候會聲明一個InputManager的執行個體,這個InputManager又會通過NativeInit實現將mCallbacks、looper等添加到C++中實現建立InputDispatcher和InputReader。然後將這兩個執行個體各加入到InputDispatcherThread和InputReaderThread之中,實現讀取輸入事件並且進行派發。1
Time of Update: 2013-12-11
你能夠使用視圖動畫系統來執行View對象上的補間動畫。補間動畫是用諸如開始點、結束點、尺寸、旋轉以及一些其他的動畫特性來計算的動畫。補間動畫能夠在View對象的內容上執行一個簡單的變換系列(位置、尺寸、旋轉和透明度)。因此,如果有一個TextView對象,就能夠移動、旋轉、放大或縮小文本。如果該TextView對象有一個背景圖片,那麼這個背景圖片會跟文本一起變換。animation包提供了補間動畫中所使用的所有的類。動畫指令序列定義了補間動畫,這些指令既可以用XML來定義,也可以用Android
Time of Update: 2013-12-11
使用內容供應商共用資料如果直接存取磁碟檔案(SDCard|File|SQLite資料庫|喜好設定),需要很多底層的互動細節,但該種方式,只使用url即可對應用程式進行訪問,並統一了資料訪問方式。public class PersonContentProvider extends ContentProvider{//在該生命週期中才能正確得到Content對象。public boolean onCreate(){//...}public Uri insert(Uri
Time of Update: 2013-12-11
if (isConnect(this) == false) { new AlertDialog.Builder( this) .setTitle("網路錯誤") .setMessage(
Time of Update: 2013-12-11
這兩天編程弄Android照相機模組,設定好各種參數後,發現預覽的時候,照片是顛倒了,不是上下顛倒而是顛倒90°。 My Phone是華為U9200,用的Android4.0.3,增加代碼:myCamera.setDisplayOrientation(90); 然後預覽就正常了。但是拍攝的照片在電腦上開啟一看,仍然是傾斜的。傾斜了90°,後來加上這句:myParameters.set("rotation", 90); 這個是讓照片旋轉90°
Time of Update: 2013-12-11
package gongzibai.co.cc;import android.app.Activity;import android.app.Dialog;import android.os.Bundle;public class ProgressBarActivity extends Activity { /** Called when the activity is first created. */ @Override public void
Time of Update: 2013-12-11
Canvas 在一般的情況下可以看作是一張畫布,所有的繪圖操作如drawBitmap, drawCircle都發生在這張畫布上,這張畫板還定義了一些屬性比如Matrix,顏色等等。但是如果需要實現一些相對複雜的繪圖操作,比如多層動畫,地圖(地圖可以有多個地圖層疊加而成,比如:政區層,道路層,興趣點層)。Canvas提供了圖層(Layer)支援,預設情況可以看作是只有一個圖層Layer。如果需要按層次來繪圖,Android的Canvas可以使用SaveLayerXXX, Restore
Time of Update: 2013-12-11
---------------------------main.xml<?xml version="1.0" encoding="utf-8"?> <AbsoluteLayout xmlns:android="http://schemas.android.com/apk/res/android"
Time of Update: 2013-12-11
01public void getSingInfo() {02 try {03 PackageInfo packageInfo =
Time of Update: 2013-12-11
接下來幾篇文章,學習JNI開發,主要是學習《JNI詳解》,將裡面的執行個體通過Android平台實現,首先由一個經典執行個體引出 – HelloWorld!!HelloWorld是經典的,一想起學編程,就想起那些年我們一起寫過的HelloWorld。這裡用HelloWorld來講解JNI的開發過程。這個過程大致可通過來說明:1) 建立一個HelloWorld工程;2) 建立一個帶有native方法的類Helloworld.
Time of Update: 2013-12-11
因為首先是個人開發人員,而不是團隊開發。開發的過程中就沒有那麼規範,沒有詳細的需求,沒有介面設計,也沒有詳細的開發計劃等。所以一個應用程式的開發要經過很多次蛻變才能變得完美或者說取得更好的使用者體驗。當然了,這一切都是根據自己的開發技巧和技術層次而定的。 下文是我在開發過程中遇到的一些有意思也很無奈的事。是看客的笑話也好,共鳴也好,我也都願意將它記錄下來,以饗看客。