Time of Update: 2018-12-03
1、不同的layout Android手機螢幕大小不一,有480x320,640x360,800x480.怎樣才能讓App自動適應不同的螢幕呢? 其實很簡單,只需要在res目錄下建立不同的layout檔案夾,比如:layout-640x360,layout-800x480,所有的layout檔案在編譯之後都會寫入R.java裡,而系統會根據螢幕的大小自己選擇合適的layout進行使用。2、hdpi、mdpi、ldpi
Time of Update: 2018-12-03
以前寫 android ,對事件的處理沒有太深入,只是簡單的 onTouchEvent 就 ok 了,現在寫的 UI ,很多自訂群組件,父 view 和子view 都需要接收事件,然後處理。如果不弄明白它的事件傳遞機制,很難擁有好的使用者體驗。Touchevent 中,傳回值是 true ,則說明消耗掉了這個事件,傳回值是 false ,則沒有消耗掉,會繼續傳遞下去,這個是最基本的。在 View 中跟 Touch 相關的事件有 dispatchTouchEvent ,
Time of Update: 2018-12-03
Android 程式擷取、設定鈴聲和音量 通過程式擷取android系統手機的鈴聲和音量。同樣,設定鈴聲和音量的方法也很簡單! AudioManager mAudioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE); //通話音量 int max = mAudioManager.getStreamMaxVolume( AudioManager.STREAM_VOICE_CALL ); int current =
Time of Update: 2018-12-03
AudioTrack音軌建立:AudioTrack::createTrack1)AudioSystem::get_audio_flinger2)AudioSystem::getOutputSamplingRate3)AudioSystem::getOutputFrameCount4)AudioSystem::getOutputLatency5)audioFlinger->createTrack調用audioFlinger的方法6)sp<IMemory> cblk = track
Time of Update: 2018-12-03
1、調用main函數在gingerbread/bootable/recovery/recovery.c最下面有個main(),這是recovery應用的主入口,當編譯recovery的時候,會產生一個名為recovery的可執行檔,我這邊是放在out/目錄下recovery/檔案系統的/sbin目錄下,調用recovery可執行檔時會傳入參數,這些參數就是main函數的參數,如下intmain(int argc, char **argv){ char tmp[4]; time_t
Time of Update: 2018-12-03
很多Android開發者已經度過了初級、中級,如何成為一個Android高手呢? Android123就各個層級的程式員應該掌握哪些內容作為下面分類。 一、初級 1. 擁有嫻熟的Java基礎,理解設計模式,比如OOP語言的原廠模式要懂得。 2. 掌握Android UI控制項、Android Java層API相關使用。 邁向中級,最好再次更新下Java技術,掌握Java concurrent庫、nio庫,精通xml、json解析,做過socket c/s端的程式。 二、中級
Time of Update: 2018-12-03
Time of Update: 2018-12-03
Download.java中放入的是程式的主體,util包中放入的是一些公用的方法,其中FileUtils.java放入的是對檔案的一些基本操作,HttpDownloader.java中是對下載的一些基本操作。 第一步:先來看看主程式部分package mars.download;import mars.util.HttpDownloader;import android.app.Activity;import android.os.Bundle;import android.util.Log;
Time of Update: 2018-12-03
田海立@CSDN 2012-1-19 Android不同平台在編譯時間,用到的jdk的版本不同,比如:Froyo(2.2)及其以前版本需要jdk5.0;Gingerbread及其之後版本需要jdk6.0。如果在一個環境中要做不同平台項目,就需要安裝不同的jdk,切換項目時要反覆安裝jdk,費時費力。Update-alternatives為這種情況提供瞭解決方案。 本文只是針對《Ubuntu10.10下編譯Android2.2平台》的補充,是筆者在編譯Gingerbread時的解決方案。 1.3.
Time of Update: 2018-12-03
安裝Android SDK的時候,會看到錯誤提示“Java SE Development (JDK) not found”,但是明明已經安裝了好幾遍JDK了!!這是在64bit
Time of Update: 2018-12-03
解析Android訊息處理機制——Handler/Thread/Looper & MessageQueue 田海立@CSDN2011/07/12 Keywords: Android Message HandlerThread Looper UML 本文解析Android如何利用Handler/Thread/Looper以及MessageQueue來實現訊息機制的內部實現。知道了它的內部實現機理之後,以後再遇到使用它們時候的任何問題就駕輕就熟、迎刃而解了。
Time of Update: 2018-12-03
在網上看到一篇關於apk連網升級的博文,講解的比較細緻入理,遂錄在這裡備用。流程圖是:
Time of Update: 2018-12-03
自己的安卓平台在客戶處測試時,有反饋Network Signal Info 這個apk無法安裝,提示缺少共用庫。通過在網上搜尋,確認是少了GMS包的緣故。也就是得自己把add
Time of Update: 2018-12-03
Android 休眠(suspend),在一個打過android補丁的核心中,state_store()函數會走另外一條路,會進入到request_suspend_state()中,這個檔案在earlysuspend.c中。這些功能都是android系統加的,後面會對earlysuspend和late resume 進行介紹。涉及到的檔案:linux_source/kernel/power/main.c
Time of Update: 2018-12-03
Time of Update: 2018-12-03
這裡記錄一種在普通的LINUX或安卓智能手機平台上,用快捷的方法測試MODEM模組的驅動是否正常工作。需要注意的是:程式的運行依賴於交叉編譯器版本,必須是帶串口操作庫函數的編譯器,比如2008q3。編譯完成後執行,即可顯示一系列待輸入選項,進行測試專案。(1)主函數// this is a test about GPRS#include <stdio.h>#include <string.h>#include
Time of Update: 2018-12-03
編寫最簡單的android掃描條碼功能已經有java的第三方開源條碼識別庫(zxing)了,在自己的應用中掃描條碼實際上只需調用該第三方庫的實現即可。寫掃描和識別條碼的android支援庫的時候還沒有g1手機,現在可以試試了。為了能調用zxing,需要先安裝google market中的barcode
Time of Update: 2018-12-03
android掃描商品條碼剛才寫的編寫最簡單的android掃描條碼功能,只能掃描qr二維碼。如果要掃描普通的商品條碼,需要在該程式上座一點兒修改。介面的改動:掃描條碼時的效果:顯示掃描結果(識別速度明顯低於二維碼):代碼的改動:package com.easymorse;import android.app.Activity; import android.content.Intent; import android.os.Bundle; import
Time of Update: 2018-12-03
EditText繼承關係:View-->TextView-->EditText。 EditText的屬性很多,這裡介紹幾個: android:layout_gravity="center_vertical" 設定控制項顯示的位置:預設top,這裡置中顯示,還有bottom android:hint="請輸入數字!" 設定顯示在空間上的提示資訊 android:numeric="integer"
Time of Update: 2018-12-03
安裝步驟:1、下載NDK包,:http://dl.google.com/android/ndk/android-ndk-r4b-linux-x86.zip2、 配置NDKa 將android-ndk-r4b-linux-x86.zip包解壓。我是建個一個工作目錄/workspace/ndk將壓縮包放在此目錄下,$ unzip android-ndk-r4b-linux-x86.zipb 然後改名,名字太長不方便。$ mv android-ndk-r4b ndkr4c