這裡歸納寫一個android網路架構的一般性原理:Http網路請求原理學過《電腦網路》的應該都知道http是一種應用程式層協議,它通過tcp實現了可靠的資料轉送,能夠保證資料的完整性、正確性,而tcp對於資料轉送控制的優點也能夠體現在http上,使得http的資料轉送輸送量、效率得到保證。對於移動開發來說,網路應用基本上都是C/S架構,也就是用戶端/伺服器架構。用戶端通過向伺服器發起特定的請求,伺服器返回結果,用戶端解析結果,再將結果展示在UI上。詳細的互動流程有如下幾步:用戶端執行網路請求,從
最近做的.net項目(Windows Service)需要向Android手機發送推送訊息,真是有點困難,沒有搞過就不停的搜文檔,最後看到了一個開源項目PushSharp,可以在.net平台推送IOS,Android,Windows
主要分析Android ListView滾動過程中圖片顯示重複、錯亂、閃爍的原因及解決方案,順帶提及ListView的緩衝機制。1、原因分析ListView item緩衝機制:為了使得效能更優,ListView會緩衝行item(某行對應的View)。ListView通過adapter的getView函數獲得每行的item。滑動過程中,a. 如果某行item已經滑出螢幕,若該item不在緩衝內,則put進緩衝,否則更新緩衝;b.
最近,製作一個app,需要類比一個電池電量的進度條,根據電量多少來設定百分比,進度條不斷上下滾動,就像平時手機充電一樣的電池電量進度條。我就自訂view實現了電量進度條。修改圖片就可以達到自己想要的效果一、自訂View,Battery.java,迴圈重新整理介面,兩張圖片上下滾動,達到不斷向右移動的效果。挺有意思的package com.example.battery; import android.content.Context;import android.content.
一、安裝java的JDK1、安裝軟體1.jdk_7.0.70.10_windows_x64_XiaZaiBa.RAR下載地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html2、設定(1)、【右鍵我的電腦】--【屬性】--【進階系統設定】--【系統屬性】--【進階】--【環境變數】-- 【PATH】PATH .;%JAVA_HOME%\bin;(2)、建立系統變數JAVA_HOME
以前做過的一個項目,Fragment嵌套高德地圖,當再次進入Fragment的時候,會出現奇怪的現象。嵌套的地圖會出現滑動不動的情況,起先還以為是高德的bug呢,經過一番研究,終確定這是一個坑。先對Fragment做一個簡單的介紹,借用csdn上朋友寫的一段內容。Android在3.0中引入了fragments的概念,主要目的是用在大螢幕裝置上--例如平板電腦上,支援更加動態和靈活的UI設計。平板電腦的螢幕要比手機的大得多,有更多的空間來放更多的UI組件,並且這些組件之間會產生更多的互動。Fra
近年來,互連網電視開始火熱,樂視TV,小米TV,最近愛奇藝也在大肆的招人做愛奇藝電視,當然還有更被關注的蘋果電視。其實,這個趨勢很正常,也很合理,傳統單純的接收電視節目的電視已經太傳統了,是該被革命了。樂視為代表的新一代互連網電視採取互連網的營銷方式,不需要實體店,不需要實體工廠,只需方案,服務,網上預約,直接快遞等方式大大降低了成本,同時也可以控制庫存,預防風險。同時他們都堅持硬體不賺錢,服務收費,更看重電視使用者物件這一潛在價值。使用者多了,幹啥都方便,當然還有更大的智能家居大概念。除了蘋果
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent"
今天學習如何?憤怒的小鳥,用到了JBox2D構建物理世界(這個不是這篇文章重點,但是很謝謝這個開源玩意)一般一個獨立的物體的實體類import org.jbox2d.dynamics.Body;import org.liky.angrybird.util.Globals;import org.liky.angrybird.util.ImageUtils; import android.graphics.Canvas;import
初學者在學android的時候,看到書上的sqlite資料庫編程怎麼有點複雜。初學階段的痛點:建立資料庫表欄位(field)資料類型(text,interge)選擇較多,考慮較多。在activity中資料更新插入要考慮的約束條件好多老是訪問資料庫的資料,每次都要在activity中聲明一個cursor並且通過一大堆代碼來擷取cursor感覺有點繁瑣。對於上述的痛點解決方式如下1.資料類型都用text(除了id編號)2.在activity中無論插入或更新都只用DB檔案中同一個函數實現,並且不需要在
Android應用程式的各個組件使用Manifest(清單)綁定到一起;主要包括1. Activity: 展示層, 使用Fragment和View來布局和顯示資訊, 以及響應使用者動作;2. Service: 運行時沒有UI, 更新資料來源和Activity, 觸發Notification(通知)和廣播Intent;3. Content Provider:用來管理和持久化應用程式資料, 通常會與SQL資料庫互動;4. Intent:可以用來啟動和停止Activity和Service,
Android的應用程式(app)資源儲存在項目層次中的res檔案夾下;資源的類型包括值(value),Drawable,顏色(color),布局(layout), 動畫(animation), 樣式(style), 菜單(menu), XML檔案和原始資源;同時自動建立一個R類型檔案, 包含在項目中每一個資源的引用, 位置:app->build->source->r->debug;Hello_World, 資源如圖:1. 簡單值(Value):簡單值包括:
一、Android應用程式記憶體最佳化在開發Android
Intent的用途是繫結應用程式組件, 並在應用程式之間進行通訊;startActivity(), 傳遞Intent參數, 建立並顯示一個Activity;使用Intent解析(resolution)動態選擇最匹配的Activity.顯示啟動Activity:建立一個Intent, 指定當前的語境(context)和Activity類(class), 然後傳遞給startActivity()進行建立;簡易說明:Intent intent = new Intent
原生動作(Native Activity), 都是Intent類中的靜態字串常量(static final String).在建立隱式的Intent來啟動應用程式內的Activity或者SubActivity時, 可以應用這些動作.Android APIs: http://developer.android.com/reference/android/content/Intent.html主要包括:ACTION_ALL_APPS: 列出所有已安裝程式;ACTION_ANSWER:
Http的URL連結, 會發生錯誤, 主要原因是 在主UI線程中, 使用網路調用(network call), 就拋出NetworkOnMainThreadException異常.版本: API level 11以上.可以使用一個簡單的線程, 在後台(asynctask)調用程式, 可以避免此情況;否則 在getResponseCode()函數處, 拋出異常.Android API :
項目源碼下載https://github.com/Wang-Jun-Chao/AndroidProjects網狀圖片查看器確定圖片的網址發送http請求 URL url = URL(address); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setConnectTimeout();
Android使用Handler進行執行個體化(new)時, 如: private Handler handler = new Handler();會報錯"Handler is abstract, cannot be instantiated.", 提示使用, 其他執行個體化方式.原因: 匯入(import)庫發生錯誤, 使用Android的控制代碼(handler)庫, 不是java的控制代碼庫;使用"import
背景對於ListView、GridView、Gallery、Spinner等等,它是它們的適配器,直接繼承自介面類Adapter的,使用BaseAdapter時需要重寫很多方法,其中最重要的當屬getView,因為這會涉及到ListView最佳化等問題,BaseAdapter與其他Adapter有些不一樣,其他的Adapter可以直接在其構造方法中進行資料的設定:SimpleAdapter adapter = new SimpleAdapter(this, getData(),
Google發布了最新的Android 4.4 KitKat 奇巧巧克力作業系統,不過,該系統的組要打擊對象,並非微軟的Windows Phone 作業系統,而是微軟的 Office辦公套件產品。Android 4.4作業系統整合了著名的移動平台辦公軟體QuickOffice,通過該軟體,使用者可以隨時隨地對微軟Office的文檔、試算表、及PPT簡報進行編輯,完全不需要開啟電腦。整合後,使用者只要完成系統升級便可使用Google的這款辦公套件。每一位使用搭載有Android