Time of Update: 2018-12-08
開始研究android開發,搭建開發環境的時候就出了問題……果然是好事多磨~ 安裝了jdk,配置環境變數,安裝了完整版的adt、建立了helloworld程式,啟動的時候就報錯 “Please ensure that adb is correctly located at 'D:\adt-bundle-windows-x86_64\sdk\platform-tools\adb.exe' and can be
Time of Update: 2018-12-08
在4.5.6節介紹過一個<include>標籤,該標籤可以在布局檔案中引用另外一個布局檔案,並可以覆蓋被引用布局檔案根節點所有與布局相關的屬性,也就是以android:layout開頭的屬性。通過<include>標籤可以將一個非常龐大的布局檔案分解成若干個較小的布局檔案,而且這些小的布局檔案也可以被多次引用,從而達到一個重用的目的。
Time of Update: 2018-12-08
1、Android螢幕常亮/點亮 複製代碼 代碼如下://保持螢幕常亮 PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE); mWakeLock = pm.newWakeLock(PowerManager.FULL_WAKE_LOCK | PowerManager.ACQUIRE_CAUSES_WAKEUP, LOCK_TAG); mWakeLock.acquire(); 複製代碼
Time of Update: 2018-12-08
main.xml:複製代碼 代碼如下:<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent"
Time of Update: 2018-12-08
Android中的翻轉動畫效果的實現,首先看一下運行效果如所示. Android中並沒有提供直接做3D翻轉的動畫,所以關於3D翻轉的動畫效果需要我們自己實現,那麼我們首先來分析一下Animation 和 Transformation。
Time of Update: 2018-12-08
首先第一個是 jar 檔案的製作,Java 裡面直接把 .class 檔案打包到 .jar 檔案裡面就可以了,但是 Android 的 Dalvik VM 是不認 Java 的 byte code 的,所以不能直接這麼打包,而要用 dx 工具轉成 Dalvik byte code 才可以。當然,dx 工具轉了之後,jar 包裡面就不 是 .class 檔案了,而是 .dex 檔案。第二個是,Android 裡面雖然也提供了 URLClassLoader
Time of Update: 2018-12-08
android:theme="@android:style/Theme.Dialog" : Activity顯示為對話方塊模式 android:theme="@android:style/Theme.NoTitleBar" : 不顯示應用程式標題欄 android:theme="@android:style/Theme.NoTitleBar.Fullscreen" : 不顯示應用程式標題欄,並全屏 android:theme="Theme.Light ": 背景為白色
Time of Update: 2018-12-08
自訂控制項(類似按鈕等)的使用,自訂一個SurfaceView。 如某一塊的動態圖(自訂相應),或者類似UC瀏覽器下面的工具列。 如樣本: 自訂類代碼: 複製代碼 代碼如下:public class ImageSurfaceView extends SurfaceView implements Callback{ //用於控制SurfaceView private SurfaceHolder sfh; private Handler handler = new Handler();
Time of Update: 2018-12-08
簡介: 本文介紹如何在 Android 檢測 Cursor 泄漏的原理以及使用方法,還指出幾種常見的出錯樣本。有一些泄漏在代碼中難以察覺,但程式長時間運行後必然會出現異常。同時該方法同樣適合於其他需要檢測資源流失的情況。最近發現某蔬菜手機串連程式在查詢媒體儲存(MediaProvider)資料庫時出現嚴重 Cursor 泄漏現象,運行一段時間後會導致系統中所有使用到該資料庫的程式無法使用。另外在工作中也常發現有些應用有 Cursor 泄漏現象,由於需要長時間運行才會出現異常,所以有的此類
Time of Update: 2018-12-08
1、Service的種類 按運行地點分類: 類別區別 優點缺點 應用本地服務(Local)該服務依附在主進程上, 服務依附在主進程上而不是獨立的進程,這樣在一定程度上節約了資源,另外Local服務因為是在同一進程因此不需要IPC,也不需要AIDL。相應bindService會方便很多。 主進程被Kill後,服務便會終止。 非常常見的應用如:HTC的音樂播放服務,天天動聽音樂播放服務。遠程服務(Remote)該服務是獨立的進程,
Time of Update: 2018-12-08
Intent是Android中一個非常重要的概念,跟這個詞的本意(意圖,目的)一樣,這個類在Android中的作用就是要調用某個組建去做某一件事,比如通過startActivity啟動一個Activity,通過startService啟動一個Service,通過sendBroadcast發送一個廣播等,它相當於各個組建間的一個橋樑。很重要的一點是這個過程是可以跨進程的,比如在應用中可以啟動調用某個播放器組件(系統自身的或者第三方的)來播放一段視頻,啟動照相機程式拍照等等。當我們啟動視頻播放器播放
Time of Update: 2018-12-08
Android系統預設的Toast十分簡潔,使用也非常的簡單。但是有時我們的程式使用預設的Toast時會和程式的整體風格不搭配,這個時候我們就需要自訂Toast,使其與我們的程式更加融合。使用自訂Toast,首先我們需要添加一個布局檔案,該布局檔案的結構和Activity使用的布局檔案結構一致,在該布局檔案中我們需設計我們Toast的布局,例如: 複製代碼 代碼如下:<?xml version="1.0" encoding="utf-8"?> <LinearLayout
Time of Update: 2018-12-08
檔案儲存體: 複製代碼 代碼如下:public class MainActivity extends Activity { EditText mname, mage; TextView mtv; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mname =
Time of Update: 2018-12-08
單例模式定義: Ensure a class has only one instance, and provide a global point of access to it. 動態確保某一個類只有一個執行個體,而且自行執行個體化並向整個系統提供這個執行個體。 如所示(截取自《Head First Design Patterns》一書)。通過使用private的建構函式確保了在一個應用中產生一個執行個體,並且是自行執行個體化(在Singleton中自己使用new Singleton()
Time of Update: 2018-12-08
1、啟動虛擬機器2、我的android sdk在“E:\android\android開發環境\android SDK\platform-tools”把要安裝的apk複製到這個根目錄(和adb.exe同檔案夾)。2、點擊電腦左下角的[開始] 按鈕,輸入cmd然後點擊斷行符號開啟cmd輸入框。3、 (由於我的Android SDK安裝路徑為e盤,所以需要定位模擬器platform-tools目錄) 在cmd命令提示字元中輸入E: 斷行符號,
Time of Update: 2018-12-08
下面的例子為使用自訂的列表適配器來顯示列表。 複製代碼 代碼如下:View Code import android.os.Bundle; import android.app.ListActivity; import android.content.Context; import android.view.View; import android.view.ViewGroup; import android.widget.BaseAdapter; import
Time of Update: 2018-12-08
現象: ... java: 1801: method does not override a method from its superclass @Override... 原因: Eclipse is defaulting to Java 1.5 and you have classes implementing interface methods (which in Java 1.6 can be annotated with @Override, but in Java 1.5 can
Time of Update: 2018-12-08
之前做通訊錄軟體,其中在做撥號盤的時候一直為怎麼實現T9輸入煩惱,上網找了很多文章,都沒有滿意的答案。不過最後終於是實現了,看社區內好像也有不少朋友需要,在此分享一下。這個是在我項目中提取出來的撥號盤案例,功能上完全實現了目前其他通訊錄中撥號盤的功能,但在載入效率上還有不足,請各位大俠指教。有圖有真相:
Time of Update: 2018-12-08
最近一直在調用的API,卻發現一直調用不成功,糾結了好久,各方面找教程,找官方,官方裡的文檔也只是寫得很模糊,說是按三步走。1、申請App_ID 2、填寫包名3、擷取程式簽名的md5值,這三步只要你走對了就能調通,可是大家都不知道有時候我們打包的keystore和我們打包的keystore擷取到的程式簽名的md5是不一樣的。我們在申請的時候填的程式簽名值是正式打包的,但我們在eclipse部署上去的卻是用的我們預設的debug.keystore.而這樣導致的後果就是程式簽名不一樣,會一直調不通。
Time of Update: 2018-12-08
由於一個項目的需要,我研究了一下android的網路通訊方式,大體和java平台的很相似! android平台也提供了很多的API供開發人員使用,請按樣本圖: 首先,介紹一下通過http包工具進行通訊,分get和post兩種方式,兩者的區別是: 1,post請求發送資料到伺服器端,而且資料放在html header中一起發送到伺服器url,資料對使用者不可見,get請求是把參數值加到url的隊列中,這在一定程度上,體現出post的安全性要比get高 2,get傳送的資料量小,一般不能大於2kb,