Time of Update: 2018-12-05
Android-電話錄音TelephonyManager telManager = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);//通過電話管理監聽通話狀態(回調機制)telManager.listen(listener,PhoneStateListener.LISTEN_CALL_STATE);listener = new PhoneStateListener(){ public void
Time of Update: 2018-12-05
發表於 2011 年 08 月 11 日 由 wenjianhuaAndroid UI Design Tips是Google官方開發人員部落格上發布的一組PPT,旨在指導設計和開發人員如何構建一個卓越的應用程式。既然是Android他母親寫的,瞭解自己兒子的肯定是自己的父母嘛。沒錯,這幾組PPT確實很精品。因此在網上找了些翻譯資料,大多都只翻譯了前面一小部門,後面的我準備參考其它人的隻言片語,勉強翻譯翻譯,第一次翻譯,水準不高,將就看吧。開始為什麼我們要關心
Time of Update: 2018-12-05
1.readObject的時候報錯:java.lang.ClassNotFoundException。解決辦法:服務端和用戶端的包名一致就好。2.串話之後的對象,如果修改了類,在讀出來會報串化ID錯誤。3.高版本的SDK對網路連接有更高要求,要在onCreate裡面加入代碼:StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder()
Time of Update: 2018-12-05
主要代碼:package eoe.demo;import android.app.Activity;import android.database.Cursor;import android.database.sqlite.SQLiteCursor;import android.os.Bundle;import android.view.Menu;import android.view.MenuItem;import android.view.View;import
Time of Update: 2018-12-05
Android又放下很久了,今天又想起來,將上面的幾個Hello類的小程式調出來運行一下,找找感覺,誰知道,啟動並執行時候,就是不在類比機上顯示。從輸出資訊也看不出來端的,類比機也能啟動,一切都很正常,就是不出現應該運行出來的畫面。鬱悶不已。後來在類比機上胡點,居然發現點menu鍵可以調出程式來,如果一個類比機在沒關的情況下運行了好幾個程式,那每次點menu都會出現最後一個,點掛機鍵可以返回主畫面,而點返回鍵可以一個一個返回上一個程式。這也不知道是我還不理解android程式的運行原理,還是
Time of Update: 2018-12-05
Activity載入模式(android:launchMode): standard//每次啟動都增加一個執行個體{ 建立新執行個體添加到當前Task棧} singleTop//在一個Task棧棧頂只會有一個執行個體{ if ( 當前Task棧.topActivity == thisActiviy
Time of Update: 2018-12-05
Android支援三種位元影像格式:.png(推薦使用)、.jpg(可以接受)、.gif(不推薦)。你可以使用位元影像檔案的檔案名稱作為資源ID來直接引用位元影像檔案,也可以在XML中定義一個資源別名。注意:在程式build的過程中位元影像檔案會被aapt工具自動無損壓縮來最佳化。比如,如果一個全彩的PNG圖片所需要的色彩不超過256色,aapt工具就會使用一個調色盤來將該圖轉換成一張8位的PNG圖。畫面品質並沒有變化,但是所需的儲存空間卻減少了。因此,要注意到在build的過程中這個目錄下的圖
Time of Update: 2018-12-05
最終效果:這個效果是通過繼承Animation類並重寫其相關方法來實現的。 (一)自訂Animation大家都知道,Android動畫裡面有一種動畫叫Tween Animation,有的大師翻譯成“補間動畫“,即我們指定動畫開始的第一幀的樣子和動畫結束時最後一幀的樣子,然後系統就會自動補上中間缺失的那些幀,形成動畫。而自訂Animation,則不是由系統而是由我們自己來手動補上中間缺失的那些幀。我們先來看看官方文檔裡對Animation類的介紹,開啟android.view.animation.
Time of Update: 2018-12-05
下面是架構簡圖:首先調用mediaRecorder.java中的方法比如start方法,會調用jni:也就是調用android_media_recorder.cpp的start方法: 接著到mediaRecorder.cpp,mediaRecorder是由mediaplayerService建立的,而mediaRecoder.cpp和mediaplayerService是通過binder機制來進行進程間的通訊的,這時client端就是通過操作服務端返回的imediaRecorder來對服務端進行
Time of Update: 2018-12-05
Fragment要點Fragment作為Activity介面的一部分組成出現可以在一個Activity中同時出現多個Fragment,並且,一個Fragment亦可在多個Activity中使用。在Activity運行過程中,可以添加、移除或者替換Fragment(add()、remove()、replace())Fragment可以響應自己的輸入事件,並且有自己的生命週期,當然,它們的生命週期直接被其所屬的宿主activity的生命週期影響。設計哲學
Time of Update: 2018-12-05
這裡有個setupVideiEncoder,看來這裡應該是對視頻編碼的地方 根據不同的編碼類別型來設定不同的參數,這個方法代碼有些多直截取部分代碼:來看看關鍵的一句,這裡建立了OMXCodec 然後把建立了的編碼器賦值給MediaSource,這裡的MediaSource可以看作是OMXCodec的封裝,這樣編碼器的準備工作就已經做好了:接著我們回到startMPEG4Recording() 方法,可以看到這裡在對解碼器進行準備之後,建立了metadata,然後調用setupMPEG4MetaD
Time of Update: 2018-12-05
大家好,今天我們要講的是android開發中,比較常用的名令集錦, 在我們開發中難免用到Android命令,有些確實命令確實很有用處。 特別對於一些初學者來說,命令根本沒有想過用也不會用,比如他們想安裝一個.apk檔案到模擬器上面,但是他們不會啟動模擬器,他們只會先啟動Eclipse,然後在啟動模擬器,這樣不但浪費時間,而且Eclipse又佔用你的記憶體。這也是我為什麼總結這篇文章的原因了,希望對大家有所協助。
Time of Update: 2018-12-05
view plaincopy to clipboardprint?<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android">
Time of Update: 2018-12-05
發布時間:2010-08-19 作者:Android開發網原創 Android軟體一般處理大的資源通過sdcard比如線上下載資源到sdcard,而apk中內嵌資源或二進位檔案時一般使用下面的兩種方法: 方法一 res/raw目錄下存放,比如cwj.dat一個二進位檔案,我們可以讀取可以直接 InputStream is=context.getResources().openRawResource(R.raw.cwj);
Time of Update: 2018-12-05
大家好我們今天的教程是在Android 教程中自訂View 的學習,對於初學著來說,他們習慣了Android 傳統的頁面配置方式,如下代碼: view plaincopy to clipboardprint?<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
Time of Update: 2018-12-05
當我們做android用戶端產品的時候為了讓使用者有更好的體驗,我們需要攔截系統的異常彈出事件,並且將這些異常以比較“優雅”的方式反饋給使用者,當然我們還要把這些異常提交到伺服器上以便於程式員分析產生這些異常的原因,更好的維護和晚上這個android用戶端產品.首先在我們的application的oncreat()方法加入以下代碼: MobclickAgent.onError(context); CrashHandler crashHandler =
Time of Update: 2018-12-05
第一步:啟動linux1.Bootloader2.Kernel第二步 android系統啟動:入口為init.rc(system\core\rootdir)1./system/bin/service manager: Binder 守護進程;2.Runtime;3.Zygote :app-process/app-main;4.Start VM;5.Start server6.Start android service:Register to service Manager7.Start Laun
Time of Update: 2018-12-05
當啟動一個Service時,他預設都是運行在主線程的,如果Service將要運行非常耗時或者可能被阻塞的操作時,應用程式將會被掛起,甚至會出現ANR錯誤。為了避免這一問題,應該在Service中重新啟動一個新的線程來進行這些操作。但有一個更好的方法那就是用IntentService
Time of Update: 2018-12-05
大家好,我們這一節講的是Android PopupWindow的使用! 在我理解其實PopupWindow其實類似於一個不能動的Widget(僅從顯示效果來說!)它是浮在別的視窗之上的.下面我將給大家做一個簡單的Demo,類似於音樂播放器的Widget的效果,點擊Button的時候出來PopupWindow,首先我們看一下:下面是核心代碼: view plaincopy to clipboardprint?package com.android.tutor;
Time of Update: 2018-12-05
Android裡的SoundPool類是 android.media 包裡提供的一個用來播放音效檔的類,可以支援同時播放多個音效檔,可以控制每個檔案的迴圈次數。基本上要遵守下面的步驟: 1 實現 SoundPool.OnLoadCompleteListener 介面的 onLoadComplete函數2 New一個SoundPool 的執行個體 sndPool,建構函式的第一個參數指定最多同時播放的檔案個數3 設定 sndPool的 onLoadCompleteListener