在Android系統中,您可以使用一系列命令來調查和分析系統資源的使用情況。以下是一些建議的命令和使用方式:
1. **top**: - 這是一個實時監控系統CPU和記憶體使用情況的命令。它會顯示目前消耗CPU資源最多的進程。 - 使用方式:`adb shell top` - 如果想限制顯示的進程數量,可以使用 `-n` 選項,例如:`adb shell top -n 10` 只顯示前10個進程。
2. **dumpsys meminfo**: - 此命令提供了系統記憶體的詳細使用情況,包括各應用程式和系統組件的記憶體使用。
tttt 發表在 痞客邦 留言(1) 人氣(19)
當使用者操作Android應用程式時,若該程式無法即時回應用戶的操作,即稱為ANR(Application Not Responding)。這通常是因為一些長時間運行或阻塞UI線程的操作所引起。以下是一些分析Android ANR問題的方法:
使用DDMS工具:DDMS可用來監視正在運行的Android應用程式,包括UI thread和Memory的使用情況。可以使用DDMS工具來檢查是否有某個線程正在阻塞UI線程,或者是否有任何Memory leak等問題。
查看ANR日誌:當系統發生ANR時,會生成一個ANR日誌文件。可以使用Android Studio或者其他文本編輯器來查看這個日誌文件,以了解發生ANR的原因和具體信息。通常,這個日誌文件會包含ANR發生的時間、應用程式的PID、當前線程的狀態和堆疊跟踪信息等等。
分析ANR堆疊:當應用程式發生ANR時,堆疊跟踪信息中會顯示導致ANR的原因。開發人員可以分析這個堆疊跟踪信息,以找到造成問題的程式碼或者操作。
Memory回收機制:如果應用程式使用大量Memory,就有可能導致ANR。開發人員可以使用Android SDK提供的Memory回收機制,例如手動執行GC(Garbage Collection)或使用Memory快取等方法,以減少Memory使用量,提高應用程式性能。
tttt 發表在 痞客邦 留言(0) 人氣(86)
Android 開發工具包(Android SDK)提供了一系列的工具和資源,用於開發 Android 應用程式。以下是一些常見的 Android 開發工具,包括像 DDMS 的功能:
1. Android Studio:這是一個由 Google 開發的 Android 集成開發環境(IDE),可以用來開發和測試 Android 應用程式。Android Studio 包括許多有用的工具,如代碼編輯器、調試器、模擬器、DDMS、布局編輯器等等。
2. DDMS(Dalvik Debug Monitor Service):DDMS 是一個用於 Android 調試的工具,可以監控正在運行的 Android 應用程式,並提供進程和記憶體信息、文件系統和日誌等資訊。
3. ADB(Android Debug Bridge):ADB 是一個用於和 Android 設備通訊的命令行工具,可以執行各種操作,例如安裝和卸載應用程式、傳輸文件、啟動服務等等。
4. SDK Manager:這是一個用於管理 Android SDK 的工具,可以下載和安裝不同版本的 Android 平台和工具,包括模擬器和系統映像。
5. Layout Editor:這是一個用於編輯 Android 應用程式界面的工具,可以使用拖放界面設計器來設計和排列視圖元素。
6. ProGuard:這是一個用於壓縮和優化 Android 應用程式代碼的工具,可以減少 APK 大小並提高應用程式性能。
除了上述工具之外,還有其他的第三方工具和庫,可以幫助開發人員更高效地開發 Android 應用程式。
tttt 發表在 痞客邦 留言(0) 人氣(520)
tttt 發表在 痞客邦 留言(1) 人氣(23)
In computer programming, a callback is executable code that is passed as an argument to other code. It allows a lower-level software layer to call a subroutine (or function) defined in a higher-level layer.
所謂callback function就是等著被呼叫的function 通常會使用在interrupt handler(中斷處理), 或一些event handler(事件處理)
這些callback function一般會在你的主程式向系統註冊它們的address
當某些硬體或軟體中斷髮生時, 或某些事件發生時
系統就會去呼叫這些callback function
所以, callback function並不是直接讓你的程式呼叫的~ 如果沒有使用callback function的機制, 而需要在某些事件發生時去做一些事 就變成要有一個迴圈一直去監視事件是否發生, 這就會很耗損CPU時間
在Windows的AP或driver很常見到Callback function的使用比如說, timer也是一個callback function~ 而gtk中 event loop 的概念也需要 callback function 來實現 !
參考資料
tttt 發表在 痞客邦 留言(1) 人氣(236)
如果google "gtk reference"
排名第1順位的是:
GTK+ Reference Manual
在官方網站中對於所有可用的函式介紹比較詳盡。
有了正確可供參考的資源後,如果有一些範例介紹,相信會更好。
tttt 發表在 痞客邦 留言(1) 人氣(24)

git(/ɡɪt/[3], 音訊 說明·資訊,吉特)是一個分散式版本控制軟體,最初由林納斯·托瓦茲創作,於2005年以GPL釋出。最初目的是為更好地管理Linux核心開發而設計。應注意的是,這與GNU Interactive Tools[4](一個類似Norton Commander介面的檔案管理器)不同。
tttt 發表在 痞客邦 留言(0) 人氣(60)
Swift 開啟網頁,可以看看下面這幾行
var urlString = "
http://5945.tw"var url = NSURL(string: urlString)
tttt 發表在 痞客邦 留言(0) 人氣(364)