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
Time of Update: 2018-12-03
package com.example.testandroid;import java.util.Vector;import android.Manifest.permission;import android.content.ContentValues;import android.content.Context;import android.database.Cursor;import android.database.sqlite.SQLiteDatabase;import
Time of Update: 2018-12-03
田海立@CSDN2013-3-31 事情的由來:Android很多系統的adb id是固定的,驅動一旦寫好每個裝置的id都是一樣。有些需求要求adb的id每個裝置都不同。adb id即是通過命令adb devices查看到的裝置的id。這在Android4.0中已經實現,而實現的要點如下:1. 核心的Adb
Time of Update: 2018-12-03
田海立@CSDN2012-8-22 本文結合AppWidget的應用情境,分析Android中RemoteViews的內部具體實現。從前文《Android中AppWidget的分析與應用:AppWidgetProvider》和《Android中Launcher對於AppWidget的處理的分析:AppWidgetHost角色》中得知,Android中AppWidget的圖形資源是由AppWidgetProvider通過RemoteViews提供的;而顯示是由AppWidgetHost通過AppW
Time of Update: 2018-12-03
很多時候,我們將手機接入電腦後,會發現一個CR-ROM光碟機類似的盤符,裡面有手機附帶的內容。做法是這樣的:(1)增加手機分區通過調整bootloader(傳參給kernel)或kernel的mtd partition table。增加一個分區,專門存放CDROM鏡像。(2)製作CDROM鏡像並燒寫到該分區將光碟機的內容拷貝入一個linux目錄,用mkisofs -r -o cdrom.iso
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訊息處理機制——Handler/Thread/Looper & MessageQueue 田海立@CSDN2011/07/12 Keywords: Android Message HandlerThread Looper UML 本文解析Android如何利用Handler/Thread/Looper以及MessageQueue來實現訊息機制的內部實現。知道了它的內部實現機理之後,以後再遇到使用它們時候的任何問題就駕輕就熟、迎刃而解了。
Time of Update: 2018-12-03
android3.1多了三個大包:android.hardware.usb 、android.mtp 、android.net.rtp。(1)android.mtp讓串連的camera和其他裝置,可以直接使用PTP(映像傳輸協議)或MTP(媒體傳輸協議)保持串連,上層app可以接收到通知,從而管理這些裝置的檔案和儲存傳輸等。它為我們提供了定義PTP和MTP的MtpConstants,描述USB
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 serial-port-api 串口外接紅外實現掃描槍實現(示範調試,整合到應用中下一篇繼續);安裝SerialPort_0.7.apk 應用,設定:掃描槍需要串口供電,及傳輸速率為9600; 提示許可權問題 在串口控制台輸入chmod 777 /dev/s3c_serial2 就OK!通過掃描槍輸入資料:(金橋 國際 煙 條碼)
Time of Update: 2018-12-03
android在mainfest中給Activity添加一個屬性 android:theme="@android:style/Theme.Dialog",可以使Activity懸浮在其它視窗上面,在布局中可以設定activity的大小,當點擊懸浮Activity邊緣以外地區時,Activity會消失,觀察消失時其生命週期會發現執行了finish()方法從而執行了onDestroy方法。有時我們只是需要將Activity隱藏,並不銷毀,此時可以重寫finish方法,如下:/** *
Time of Update: 2018-12-03
這幾天公司有個裝置需要相容,對於這個資來源目錄的命名方法讓我找了好久,以前都是用的android內建的三個目錄,很少涉及到自訂的解析度。看了半天官方文檔,可惜英語水平不高,還是沒弄出來,但是也知道了個大概。可以參考官方文檔(http://developer.android.com/guide/practices/screens_support.html)
Time of Update: 2018-12-03
今天程式crash了,找了半天不知道是什麼問題,資料居然丟失了,看了log半天,最後想到了是不是應用進程被系統給kill了,android開發中大家都知道有時候系統資源不足時會殺死後台進程,故需要用onSaveInstanceState方法將資料儲存下來,那如何測試資料是否儲存了?如何重現這個bug了,想了半天,查了下資料,突然意識到DDMS的Devices處可以stop進程了,試了下,果然可以,最後發現問題的卻是被系統給殺死導致的資料丟失了,類比系統殺死進程的地方,見:
Time of Update: 2018-12-03
最近想弄android瀑布流的例子,網上找了一些例子,感覺太麻煩了https://github.com/dodola/android_waterfall於是自己寫了一個所謂瀑布流,其實一個最明顯的特點就是每個流的寬度是固定的,所以只需要用幾個linearlayout就可以實現了下面是一個三個流的瀑布:package sam.test.waterfall;import java.io.InputStream;import android.R.integer;import