原创 Android知識總結:Universal-Imageloader學習筆記1 基本功能與配置

背景 最近換了ImageLoader作爲圖片緩存工具,在使用時,發現這個框架其實可以實現很多圖片處理的功能。在閱讀源碼時也學習到了不少程序設計方面的知識。在實際開發 時,往往自己手中資源很多,很多功能只是自己不瞭解,浪費了大量時間去尋找

原创 Android控件: 仿探探首頁 相冊側滑層疊加載

探探首頁樣式 探探,百合網等神器的首頁有一個相冊加載個控件,通過左滑右滑加載新的照片,同時左滑丟棄這個照片,右滑則表明對這個照片感興趣。 首先介紹一下總體思路,一張一張的“紙”,我們可以用一個佈局來做擴展。爲了方便在“紙”上“畫

原创 Android知識總結:Universal-Imageloader學習筆記4 使用Universal-Imageloader管理本地圖片

ImageLoader管理本地圖片 前面我們討論了ImageLoader在圖片下載與緩存中的一些使用方法,那麼爲什麼我們要用ImageLoader管理本地圖片呢? 考慮以下一些情況 在App中,我們常常會進行位圖的處理,如果我們需要將圖片

原创 Android知識點記錄:支付寶SDK Ali64異常的一種可能原因

最近,以前的一個項目中支付寶網頁支付出現bug,估計本版太舊,於是下載了最新版的支付寶SDK。集成完畢後發現支付時直接出現Ali64異常。 因爲原先版本的支付寶可以使用,所以可以基本排除是公鑰的問題。 經過反覆試驗,發現參數中 “商品

原创 Android知識點總結: setTextSize 與 getTextSize的單位各是什麼

如圖 setTextSize的單位是sp,getTextSize的單位是px,直接從dimen文件中拿到的值也是px。可見setTextSize比較特殊,設置時需要根據實際情況進行轉換。 下圖setTextSize中傳入13,但是ge

原创 Android BLE學習(一): Android搜索BLE設備

背景 總結一下最近ble的學習情況。自從入手ble 51822開發板後就開始不停加班,中途出於好奇,業餘時間寫了一些單片機上json解析相關的東西,妄圖使用藍牙傳輸json數據,不知道是否實用,既然開始寫了,得寫出點樣子,晃晃蕩蕩

原创 單片機JSON生成框架

背景 最近買了51822的藍牙開發板,閒暇之餘進行了一些調試,目前還沒有深究藍牙協議的原理。藉助git上51822的現有安卓例程以及開發板自帶程序,基本可以實現Android手機和開發板間的數據傳遞,那麼,問題來了。 數據用什麼樣的格式傳

原创 Android自定義控件:仿美團下拉菜單及相關代碼優化

背景 最近的項目中用到了類似美團中的下拉多選菜單,在實際開發過程中,也發現了一些問題,主要歸納如下: 1.當菜單較爲複雜時,如果不能設計好代碼邏輯,將造成控件難於維護 2.美團菜單可以連續點擊頂部tab,切換不同菜單,而我使用

原创 Android usb學習筆記:Android AOA協議Android端 流程總結

背景 上篇文章中我們瞭解了嵌入式設備端將Android手機設置爲accessory模式的流程以及嵌入式設備端接收和發送數據的流程,本文將對應介紹Android端accessory模式被激活的過程,以及接下來如何與嵌入式設備端進行通信。本文

原创 NDK學習筆記:java類封裝c++類

背景 在最近的開發中遇到了這樣的一個場景,使用ffmpeg同時解碼多路h264流,之前解碼一路視頻時,可以直接在jni文件中定義一個包裝了ffmpeg解碼功能的c++類的對象,如果繼續採取這種寫法必須在jni中定義多個對象,使得程序很不靈

原创 Android知識總結:圖片放錯mipmap文件夾導致內存泄露的問題

背景 最近開始着手優化app的性能。其中有這樣一個activity,只要手機一開啓內存就會飆升二十多M, 之前認爲可能是其中大的圖片資源解壓導致,但是通過查看記錄內存的.hprof文件,這個activity佈局中一個ImageView中的

原创 視頻學習筆記:Android ffmpeg解碼多路h264視頻並顯示

背景 Android設備上使用ffmpeg解碼多路h264視頻,抽取了一個簡單demo方便日後參考,在此記錄一下。demo中主要涉及以下功能: 1.ffmpeg解碼h264視頻爲yuv幀 2.使用ffmpeg將yuv幀轉換爲可以在畫布上

原创 NDK學習筆記:jni數據類型轉換

背景 隨着Android項目中c++代碼部分功能複雜程度的增加,jni中需要傳遞的數據類型也越來越多,關於jni數據類型轉換網上有不少相關文章,但是在使用時發現這些例子中存在不少謬誤,遂在此重新總結相關內容,並附相關例程,以便日後參考。

原创 JSONObject與java字符串拼接json的區別

背景 事情的起因是這樣的。最近正在調試Socket.io的Android端接口。自己找到的Socket.io的Android的官方資料只是簡單的字符串傳遞,而後臺的接口則是一次性傳遞多組鍵值對參數,考慮到js的字典可以用類似json鍵值對

原创 OpenGLES入門筆記:Rajawali學習(2)場景繪製基本流程

背景 上一篇文章中我們簡單體驗了一下Rajawali的基本功能,現在我們來具體看一下這些物體是如何封裝,最終調用GLES 繪製的。上一篇中通過閱讀代碼我們發現Rajawali的繪製也是類似於Surface和Renderer的機制,Surf