Time of Update: 2018-12-03
最近在研究Laucher應用,今天寫了一下四組件中的壁紙(WallPaper),關於靜態壁紙的實現,比較簡單,在此就不再描述. 參考了系統原始碼之後,我自己做了一個簡單的動態壁紙:氣泡流動效果. 圖案比較簡單,但基本原理可在此例子上加以擴充,比如3D動畫效果,複雜的觸摸改變動畫事件,有興趣的朋友可以試一試.大概效果如下,最開始得時候,會從四個角落的方向浮出四個氣泡,然後以一定的路線移動,當移出螢幕時重新開始以新的座標浮出,以此實現了一個簡單的氣泡浮動的效果:實現的思路
Time of Update: 2018-12-03
很多時候我們開發的軟體需要向使用者提供軟體參數設定功能,例如我們常用的QQ,使用者可以設定是否允許陌生人添加自己為好友。對於軟體配置參數的儲存,如果是window軟體通常我們會採用ini檔案進行儲存,如果是j2se應用,我們會採用properties屬性檔案或者xml進行儲存。如果是Android應用,我們最適合採用什麼方式儲存軟體配置參數呢?Android平台給我們提供了一個SharedPreferences類,它是一個輕量級的儲存類,特別適合用於儲存軟體配置參數。使用SharedPrefer
Time of Update: 2018-12-03
在進行開發時,我們可能需要知道手機上某些服務,如簡訊和連絡人等等的provider 中的主機名稱 ,因此需要使用GIT工具下載安卓程式的原始碼,以下是簡單的介紹:GIT工具:http://code.google.com/p/msysgit/如:擷取原始碼步驟:1.在上述網站進行GIT工具的下載2.
Time of Update: 2018-12-03
1. 下列哪些語句關於記憶體回收的說明是正確的? (b ) A、 程式員必須建立一個線程來釋放記憶體 B、記憶體回收程式負責釋放無用記憶體 C、記憶體回收程式允許程式員直接釋放記憶體 D、記憶體回收程式可以在指定的時間釋放記憶體對象 2. 下面異常是屬於Runtime Exception 的是(abcd)(多選) A、ArithmeticException B、IllegalArgumentException
Time of Update: 2018-12-03
ContentProvider簡介及其好處簡介:ContentProvider 在android中的作用是對外共用資料,也就是說你可以通過ContentProvider把應用中的資料共用給其他應用訪問,其他應用可以通過ContentProvider 對你應用中的資料進行添刪改查。關於資料共用,以前我們學習過檔案操作模式,知道通過指定檔案的操作模式為Context.MODE_WORLD_READABLE
Time of Update: 2018-12-03
作為Android應用開發人員,不得不面對一個尷尬的局面,就是自己辛辛苦苦開發的應用可以被別人很輕易的就反編譯出來。Google似乎也發現了這個問題,從SDK2.3開始我們可以看到在android-sdk-windows\tools\下面多了一個proguard檔案夾proguard是一個java代碼混淆的工具,通過proguard,別人即使反編譯你的apk包,也只會看到一些讓人很難看懂的代碼,從而達到保護代碼的作用。在工程的"default.properties"中添加這樣一句話“progua
Time of Update: 2018-12-03
如果你想監聽自己或者別人接收到的簡訊,設定黑名單等功能,那麼就需要以下功能監聽簡訊,並進行提示或者響應的處理:當系統收到簡訊時,會發出一個廣播Intent,Intent的action名稱為android.provider.Telephony.SMS_RECEIVED,該Intent存放了系統接收到的簡訊內容,我們使用名稱“pdus”即可從Intent中擷取到簡訊內容:public class IncomingSMSReceiver extends BroadcastReceiver
Time of Update: 2018-12-03
一、Handler的定義: 主要接受子線程發送的資料, 並用此資料配合主線程更新UI. 解釋: 當應用程式啟動時,Android首先會開啟一個主線程 (也就是UI線程) , 主線程為管理介面中的UI控制項,進行事件分發, 比如說, 你要是點擊一個 Button ,Android會分發事件到Button上,來響應你的操作。 如果此時需要一個耗時的操作,例如: 連網讀取資料,
Time of Update: 2018-12-03
服務--ServiceAndroid中的服務和windows中的服務是類似的東西,服務一般沒有使用者操作介面,它運行於系統中不容易被使用者發覺,可以使用它開發如監控之類的程式。服務的開發比較簡單,如下:第一步:繼承Service類public class SMSService extends Service { }第二步:在AndroidManifest.xml檔案中的<application>節點裡對服務進行配置:<service
Time of Update: 2018-12-03
使用Activity的openFileOutput()方法儲存檔案,檔案是存放在手機空間上,一般手機的儲存空間不是很大,存放些小檔案還行,如果要存放像視頻這樣的大檔案,是不可行的。對於像視頻這樣的大檔案,我們可以把它存放在SDCard。
Time of Update: 2018-12-03
要實現電話監聽,需要監聽電話的狀態,方法如下. ListenReceiver類: 收到電話廣播時開啟監聽電話的服務public class ListenReceiver extends BroadcastReceiver { public void onReceive(Context context, Intent intent) { context.startService(new
Time of Update: 2018-12-03
Pull解析器是一個開源的java項目,既可以用於android,也可以用於JavaEE。如果用在javaEE需要把其jar檔案放入類路徑中,因為Android已經整合進了Pull解析器,所以無需添加任何jar檔案。android系統本身使用到的各種xml檔案,其內部也是採用Pull解析器進行解析的。 Pull解析器的運行方式與 SAX 解析器相似。它提供了類似的事件,如:開始元素和結束元素事件,使用parser.next()可以進入下一個元素並觸發相應事件。跟SAX不同的是,
Time of Update: 2018-12-03
正常關閉應用程式:當應用不再使用時,通常需要關閉應用,可以使用以下三種方法關閉android應用:第一種方法:首先擷取當前進程的id,然後殺死該進程。
Time of Update: 2018-12-03
安裝ApkTool工具,該工具可以解碼得到資源檔,但不能得到Java源檔案。安裝環境:需要安裝JRE1.61> 到http://code.google.com/p/android-apktool/下載apktool1.3.2.tar.bz2 和apktool-install-windows-2.2_r01-3.tar.bz2 檔案。解壓兩個檔案,然後把解壓後的檔案放在一起,如:c:\apktool2> 在系統變數PATH中添加進aapt.exe,如:;c:\apktool\aapt.
Time of Update: 2018-12-03
本貼為轉載,沒找到原作者地址。第零步:配置android工程產生器#1用記事本之類編輯器開啟cocos2d-x目錄下的create-android-project.bat#2編輯以下三個變數第一步:建立android工程#1運行cocos2d-x目錄下的create-android-project.bat#2然後首先輸入包名和項目名。注意有坑!會刪除和覆蓋你在cocos2d-x安裝目錄下同名檔案夾,如果你建立了一個同名項目(有的話一般是win32的)的話。#3然後輸入支援系統版本,android
Time of Update: 2018-12-03
AsyncQueryHandler簡介:非同步查詢操作協助類,可以處理增刪改(ContentProvider提供的資料)使用情境:在一般的應用中可以使用ContentProvider去操作資料庫。這在資料量很小的時候是沒有問題的,但是如果資料量大了,可能導致UI線程發生ANR異常(超過5秒)。當然你也可以寫個Handler去做這些操作,只是你每次使用ContentProvider時都要再寫個Handler,必然降低了效率。因此當資料量較大時,最好還是使用Android已經封裝好的非同步查詢方塊架
Time of Update: 2018-12-03
Android平台api沒有特意為換膚提供一套簡便的機制,這可能是外國的軟體更注重功能和易用,不流行換膚。系統不提供直接支援,只能自行研究。
Time of Update: 2018-12-03
先簡單說說Widget的原理。Widget是在案頭上的一塊顯示資訊的東西,也通過單擊Widget跳轉到一個程式裡面。而系統內建的程式,典型的Widget是music,這個Android內建的音樂播放小程式。這個是典型的Widget+app應用。就是一個程式既可以通過Widget啟動,也可以通過App啟動。Widget就是一個AppWidgetProvider+一個UI介面顯示(預先綁定了好多Intent),介面上的資訊可以通過程式控制而改變,單擊Widget,上的控制項只能激發發送一個Inten
Time of Update: 2018-12-03
線程系統的分類1.1 作業系統核心實現了執行緒模式(核心型線程)- Windows - 線程與進程的多對多模型線程效率比較高Window Thread結構如所示:1.2 作業系統核外實現的線程(使用者進程)- Linux 部分 Unix 線程與進程的一對一,一對多模型,線程的調度者在核外Linux Thread結構如所示:Linux 線程的實現和調度:2.6之前使用的是LinuxThreads,2.6之後是NPTL.(Native Posix Thread
Time of Update: 2018-12-03
通過應用程式內建資源實現換膚,典型的應用為QQ空間中換膚的實現. 應用情境為: 應用一般不大,且頁面較少,風格相對簡單,一般只用實現部分資源或者只用實現背景的更換. 此種換膚方式實現的思路: 1. 把幾套皮膚放在res/drawable目錄裡,然後用SharedPreferences來記錄當前皮膚的資源id.然後在程式啟動時載入Activity背景。 2. 主要的實現在皮膚管理器SkinManager類中. 將皮膚資源的ID加入集合中.