Time of Update: 2018-07-27
Android 開發遇到的坑 作為一個iOS開發人員,突然讓我去接觸Android的開發的內容,其實我的內心是非常不情願的。
Time of Update: 2018-07-27
Android 記憶體流失整理 參考文獻: 1、https://www.ibm.com/developerworks/cn/java/l-JavaMemoryLeak/#icomments 2、http://blog.csdn.net/anxpp/article/details/51325838 3、http://www.jianshu.com/p/ac00e370f83d 4、http://www.jianshu.com/p/c5ac51d804fa 理論
Time of Update: 2018-07-27
一、WebKit簡介WebKit是一個開源的瀏覽器網頁排版引擎,包含WebCore排版引擎和JSCore引擎。WebCore和JSCore引擎來自於KDE項目的KHTML和KJS開源項目。Android平台的Web引擎架構採用了WebKit項目中的WebCore和JSCore部分,上層由Java語言封裝,並且作為API提供給Android應用開發人員,而底層使用WebKit核心庫(WebCore和JSCore)進行網頁排版。
Time of Update: 2018-07-27
本學期開始安卓的學習,更幾篇部落格來記錄一下 首先建立工程,建立兩個empty activity,此處名稱都採用預設的名稱。 目的是:實現從MainActivity傳參數給Main2Activity(value1和value2),然後計算兩個參數的和為sum,之後再返回給MainActivity。activity的轉換通過按鈕觸發事件。 MainActivity.java檔案如下: package
Time of Update: 2018-07-27
private Configuration config;private DisplayMetrics dm;private Resources resources;resources = getResources();// 獲得res資來源物件config = resources.getConfiguration();// 獲得設定對象dm = resources.getDisplayMetrics();button.setOnClickListener(new
Time of Update: 2018-07-27
Java1.8新添了一些特性,比如對lambda運算式的支援,父類推斷等等,這篇文章講述了1.8的新特性,有興趣的同學可以點進去看看。但是由於AndroidStudio並不能直接支援Java1.8,我們需要手動匯入一些外掛程式來支援1.8: 首先在app層的build.gradle的最外層添加外掛程式: apply plugin: 'me.tatarka.retrolambda' 然後找到該build.gradle檔案的dependencies,在這層中加入以下代碼:
Time of Update: 2018-07-27
Java Native Interface (JNI)標準是java平台的一部分,它允許Java代碼和其他語言寫的代碼進行互動。JNI 是本地編程介面,它使得在 JAVA 虛擬機器 (VM) 內部啟動並執行 Java 代碼能夠與用其它程式設計語言(如 C、C++ 和組合語言)編寫的應用程式和庫進行互動操作。 由於Android的應用程式層的類都是以Java寫的,這些Java類編譯為Dex型式的Bytecode之後,必須靠Dalvik虛擬機器(VM: Virtual
Time of Update: 2018-07-27
Date curDate = new Date();String dateStr = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss SSS", Locale.CHINA).format(curDate); JAVA中各種日期表示字母如下: 字母 日期或時間元素 表示 樣本 G Era 標誌符
Time of Update: 2018-07-27
在Android的開發中,經常需要參數的傳遞,從一個Activity傳到另一個Activity,或者從Activity傳到Service,系統自身支援一些java基礎類型的傳遞,但是複雜的自訂類型,就需要序列化以後才可以傳遞。 Serializable public class Book implements Serializable { //這個參數是當類參數有變化時,防止還原序列化失敗。因為系統在進行還原序列化的時候會校正serialVersionUID值是否相同, //
Time of Update: 2018-07-27
最近在從事有關Android Camera開發相關的工作,發現這一塊還是比較複雜,從網路上也得到很多相關資料,但是都比較分散,對於出現的問題很難有個全面地瞭解與定位。 根據我自己的習慣,我比較喜歡把整個架構先大概瞭解一下,再針對某個組件進行認真分析,這樣在出現問題的時候就可以做到有的放矢。 發現系統無法上傳我的圖片,可能是我本地加密的原因 ,只能這樣湊合了 &
Time of Update: 2018-07-27
可以說代理是java十分重要的一種機制,另一個當然是屬於反射了,jdk中單獨講到了反射API(java.lang.reflect),可能有人認為反射對資源消耗比較厲害,確實也是,反射肯定是要消耗資源的,但也不是什麼都要用到反射,所以最佳實驗應該是在資源消耗程度和反射的使用程度之間找到一個平衡點,本文並不打算講反射,關於反射的心得以後再貼出來,自己最近也在折磨折磨 代理可以分為:StaticProxy 和DynamicProxy 比如: Java代碼
Time of Update: 2018-07-27
一、說明 添加視圖檔案的時候有兩種方式:1、通過在xml檔案定義layout;2、java代碼編寫 二、前言說明 1.構造xml檔案 2.LayoutInflater
Time of Update: 2018-07-27
現象 今天在編寫代碼的時候,涉及到兩個Activity通過Intent來傳值的問題。具體描述為:activity A調用startActivityForResult()函數啟動Activity
Time of Update: 2018-07-27
一般的native和framework的通訊是通過jni,但是這一般只是framework調用native,native如果有訊息要怎樣通知上層 呢。android中GSP模組提供一種解決思路,但是實現有些複雜,這裡介紹一種使用socket通訊的方法可以使native和framework自 由通訊,具體實現如下: android中使用jni對linux中的socket進行了封裝。使用起來十分的方便。
Time of Update: 2018-07-27
原文地址: http://blog.csdn.net/zuolongsnail/article/details/6450156 下面是Android Doc中關於BroadcastReceiver的概述:①廣播接收器是一個專註於接收廣播通知資訊,並做出對應處理的組件。很多廣播是源自於系統代碼的──比如,通知時區改變、電池電量低、拍攝了一張照片或者使用者改變了語言選項。應用程式也可以進行廣播──比如說,通知其它應用程式一些資料下載完成並處於可用狀態。
Time of Update: 2018-07-27
如何擷取一個控制項的長和高,相信很多朋友第一眼看見這個問題都會覺得很簡單,直接在onCreate裡面調用getWidth、getMeasuredWidth不就可以獲得了嗎,但是,事實上是並沒有簡單的,不信的話,你可以去試一下,在onCreate裡面,你是無法獲得長寬值的,始終為0。
Time of Update: 2018-07-27
setTag()/getTag() View中的setTag(Onbect)表示給View添加一個格外的資料,以後可以用getTag()將這個資料取出來。 可以用在多個Button添加一個監聽器,每個Button都設定不同的setTag。這個監聽器就通過getTag來分辨是哪個Button 被按下。 import android.app.Activity; import android.os.Bundle; import
Time of Update: 2018-07-27
Restful風格介面基本成了業界主流,Retrofit架構也大火特火,最近項目中也決定更新換代,採用Retrofit。本著學習之餘,也對接下來的學習者有一些協助,於是寫了本文,主要的內容是對官網內容的一個翻譯和補充解釋。 plus:本文假設你對於基本的HTTP協議有所瞭解。 一、Retrofit簡介 Retrofit內部使用OKhttp來進行網路請求, 會把網路請求轉化為一個java介面,使用了編譯階段的註解提高開發效率。如下,在開發中把網路請求定義在一個專門的java介面中
Time of Update: 2018-07-27
註:本文代碼參考了網上的例子,忘了什麼地址了,所以無法提供說明,原作者看到勿怪,可以提醒我加上。 有時候自己匯入DB檔案進行操作,和訪問本機資料庫有點差異。 首先在res下建立一個檔案夾raw,然後把DB檔案匯入進去 然後寫一個方法擷取SQLiteDatabase private static SQLiteDatabase database;public static final String DATABASE_FILENAME = "city.db&
Time of Update: 2018-07-27
AsyncTask和Handler對比 1 ) AsyncTask實現的原理,和適用的優缺點 AsyncTask,是android提供的輕量級的非同步類,可以直接繼承AsyncTask,在類中實現非同步作業,並提供介面反饋當前非同步執行的程度(可以通過介面實現UI進度更新),最後反饋執行的結果給UI主線程. 使用的優點: l 簡單,快捷 l 過程可控