訊息推送,現在越來越火,現在百度也提供的有訊息推送的服務,大家可以去搜尋 關於伺服器端向Android用戶端的推送,主要有三種方式: 1、輪詢,應用程式應當階段性的與伺服器進行串連並查詢是否有新的訊息到達,你必須自己實現與伺服器之間的通訊,例如訊息排隊等。而且你還要考慮輪詢的頻率,如果太慢可能導致某些訊息的延遲,如果太快,則會大量消耗網路頻寬和電池;
為了提高高效性,我們可以使用viewHolder,在這裡,把viewHolder的常用操作保留一下,忘記的時候可以回來看看一、首先建立viewHolderprivate class ViewHolder{ TextView tv_type; TextView tv_date; TextView tv_body; }二、使用viewHolder來尋找控制項holder = new ViewHolder();
記憶體流失也稱作“儲存滲漏”,用動態儲存裝置分配函數動態開闢的空間,在使用完畢後未釋放,結果導致一直佔據該記憶體單元。直到程式結束。即所謂記憶體流失。 記憶體流失簡單地說就是申請了一塊記憶體空間,使用完畢後沒有釋放掉。它的一般表現方式是程式已耗用時間越長,佔用記憶體越多,最終用盡全部記憶體,整個系統崩潰。由程式申請的一塊記憶體,且沒有任何一個指標指向它,那麼這塊記憶體就泄露了。
在開發中我們經常需要把我們的應用設定為全屏,這裡我所知道的有倆中方法,一中是在代碼中設定,另一種方法是在設定檔裡改!下面我簡單的介紹一下各種設定的方法一、在代碼中設定:java代碼:public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //設定無title requestWindowFeature(Window.FEATURE_NO_TITLE);
轉載自:http://orgcent.com/android-app-intent-share-list/ | 蘿蔔白菜的部落格 在Android系統中如何給應用增加分享功能,怎樣將應用加入系統的分享挑選清單?Intent.createChooser()方法用來彈出系統分享列表。查看Intent對應的組件是否存在,可查看Android判斷Intent是否存在,是否可用1、應用增加分享功能1234567public static void shareText(Context context,
1.建立一個Android工程,可在菜單中依次點擊File->New->Android Project。2.在彈出的對話方塊中出現的項目意思依次為: “Project name:”,此處填入工程名稱; “build target:”,選擇建立的Android項目的構建目標,在本文中為兩個選項,分別是“Android2.1-update1”和“Google APIs”,前者表示目標環境為Android2.1,後者表示目標環境在Android2.1的基礎上增加了Google
想要使用Android SDK中的代碼和工具開發Android應用,你需要一個合適的開發機器和環境,如下所述。環境:windows 2003首先:安裝 JDK6(jdk-6-windows-i586.exe)安裝完JDK後,在安裝MyEclipse(在這裡我安裝的是MyEclipse 6.0)(也可以安裝Eclipse,區別是Eclipse 要裝比較多的外掛程式,而MyEclipse就不用那麼麻煩。當然MyEclipse是要錢的。題外話)安裝完這些後開始部署Android的環境了(參看一下步驟)
1.1版本的emulator在設定好環境變數後,直接在命令列中輸入 emulator就可以啟動了,但是1.5版本中加了個所謂的AVD(Android Virtual Device),AVD就相當於是一個模擬器的,不過你可以利用AVD建立基於不同版本的模擬器,然後使用emulator-avd avdName命令啟動不同的模擬器,下面就介紹如何建立AVD:1.查看當前支援版本(在列出的版本中我們需要記住id值,這個值在第2步中使用): android list targets2.建立AVD(最後的2
原文:http://topic.csdn.net/u/20110614/16/8B3ED0D6-1B02-43B0-98AC-ABA16295407A.html資源清單:dbank:http://dl.dbank.com/c0ru0p201q#[android.開發書籍 高清PDF].Apress.Pro.Android.Media.Dec.2010 - ORIETech[android.開發書籍 高清PDF].Hello.Android.3rd.Edition [android.開發書籍
一.安裝開發環境 1.所需資源 JDK, Eclipse, SDK, ADT 2.注意 所有資源儲存的路徑不要包含中文 模擬器路徑通過建立環境變數android_sdk_home修改, 可以指定任意目錄, 但不能包含中文. 重啟Eclipse之後生效. 二.撥打到電話 1.介面 使用TextView, EditText, Button進行布局
一.Junit 1.什麼是Junit Junit是一種測試的方法, 當寫完一個業務方法時, 我們最好對其進行測試, 以保證這個方法在各種情況下都可以正常運行. 2.怎麼使用Junit 配置AndroidManifest.xml 在<manifest>節點下配置<instrumentation>節點, 指定使用的測試類別和要測試的工程
這裡介紹兩種方法:一種把每個activity記住,然後逐一幹掉;另一種思路是使用廣播。方法一、用list儲存activity執行個體,然後逐一幹掉上代碼:import java.util.LinkedList;import java.util.List;import android.app.Activity;import android.app.AlertDialog;import android.app.Application;import
在我們的應用中,有時候一進入一個頁面, EditText預設就會自動擷取焦點。彈出IME框,使用者體驗很不好,那麼如何取消這個預設行為呢?在網上找了好久,有點監聽軟鍵盤事件的方法,有調用 clearFouse()方法,但是測試了都不行!在對應的 xml中也找不到相應的屬性可以關閉這個預設行為。後來研究了一下,在其父控制項下,添加如下的屬性,就可以完美解決:android:focusable="true" android:focusableInTouchMode="true"舉例如下:<
好多時候,我們都要使用選擇連絡人的操作,自己寫的話 很麻煩,倒不如直接調用系統的通訊錄,這樣來的直接,來的方便 下面我們來看需求: 需求: 一個EditText 點擊button的時候轉到系統通訊錄,選中其中一個通訊錄item返回當前介面且把 選中的連絡人號碼使用者名稱顯示在EditText 上。 直接上代碼:import android.app.Activity;import android.content.ContentResolver;import
public void insert() {SmsManager smsManager = SmsManager.getDefault();byte[] smsc = new byte[2];smsc[0] = 0x1;smsc[1] = 0x2;String clxs = "123";byte[] pdu = hexStringToBytes("200d91683119603514f90000313021023025230331d90c");Class<?> c;try {c =
apk的資源套件中當螢幕density=240時,使用hdpi 標籤的資源 當螢幕density=160時,使用mdpi標籤的資源 當螢幕density=120時,使用ldpi標籤的資源。 不加任何標籤的資源是各種解析度情況下共用的。 布局時盡量使用單位dip,少使用px dp與px換算公式:pixs =dips * (densityDpi/160). dips=(pixs*160)/densityDpi /** * 根據手機的解析度從 dp 的單位 轉成為 px(像素)
一.擷取網路文本 1.Java代碼 建立URL對象 調用openConnection()方法得到一個HttpURLConnection對象 設定逾時時間 setConnectionTimeOut() 擷取響應碼 getResponseCode() 擷取輸入資料流 getInputStream() 讀取資料 轉為字串 2.
一.資料庫 1.另一種增刪改查 ***** insert() 指定表名和包含資料的一個Map集合(ContentValues), 為了避免集合為空白拋出異常的情況還可以指定一個列名. 插入後返回id delete() 指定表名和查詢條件, 刪除後返回受影響的記錄數 update() 指定表名, 資料集合和查詢條件, 更新後返回受影響的記錄數 query() 指定表名, 查詢的列名, 查詢條件,
平時我們在偵錯工具的時候,總是需要列印各種的log資訊,有些人,圖省事,直接用system out的方法來列印日誌資訊,殊不知這些資訊,在我們程式發布的時候,是不允許列印到控制台上的,相反,如果在病毒與反病毒中,這些列印的資訊,可能會給壞人留下可乘之機 我們在開發的時候,所以就要選擇log列印日誌的方式,那麼有沒有一種方法,合理的管理log呢?在開發的時候列印出來,在發布的時候,把所有的log日誌全部關掉?
一、JNI(Java Native Interface,JAVA原生介面) 使用JNI可以使Java代碼和其他語言寫的代碼(如C/C++代碼)進行互動。問:為什麼要進行互動?|- 首先,Java語言提供的類庫無法滿足要求,且在數學運算,即時渲染的遊戲上,音視頻處理等方面上與C/C++相比效率稍低。|- 然後,Java語言無法直接操作硬體,C/C++代碼不僅能操作硬體而且還能發揮硬體最佳效能。|-