原创 Android自定義輸入車牌號鍵盤、車牌簡稱 | 數字 | 字母鍵盤

爲了便於用戶快捷的輸入車牌號碼便需要自定義個車牌鍵盤,而不是使用系統的鍵盤輸入,上效果圖: 橫屏效果 豎屏效果 一、首先我們要來分析一下需要做哪些東西 默認展示車牌的省份簡稱 特殊車牌(使、領、警、港、澳) 刪除鍵 切換爲

原创 Android採集攝像頭的視頻流數據並使用MediaCodec編碼爲H264格式

前言: 博主在寫這篇文章之前可以說是在音視頻這方面,知識積累與經驗幾乎爲0;所以在實現這個功能上也是費了好一番功夫和精力把它給搞出來了,所以以此篇文章紀念一下。 一、首先就是需要先打開攝像頭,並拿到視頻的每一幀數據 1、相機權限

原创 Android 動態換膚技術原理 | 實踐 及總結

實現的效果圖 動態換膚一般實現的原理 對頁面需要換膚的View進行標記 在Activity#setContentView()加載view時獲取到標記的view(後面會說是要怎麼獲取到) 創建一個Library項目製作我們的皮膚

原创 Android集成高德地圖導航SDK、實現App內進行導航、打開高德App導航

這篇文章就主要來講一下集成高德的導航SDK,實現app內導航;這樣就不用調用高德的App了 一、申請key之類的這裏就不說了自己去申請就ok 高德開放平臺 高德開放平臺—導航sdk 高德開放平臺—導航sdk下載 二、我這下載的

原创 記一次艱難的OutOfMemoryError:Could not allocate JNI Env問題排查

一、出現錯誤的日誌 05-26 21:12:53.131 D/serial_port( 1012): Opening serial port /dev/ttyMT2 with flags 0x2 05-26 21:12:53.13

原创 解決Android SoundPool播放多個音效沒有播放完成回調通知

一、在我們需要播放一些短促的音樂或者音效的時候(播放mp3文件),通常會使用SoundPoolApi來播放因爲可以對音頻文件進行預加載至內存中從而能夠迅速播放出來 二、SoundPool的簡單使用 SoundPool soundP

原创 Netty在Android開發中的應用實戰系列(六)——— 自定義協議進行拆包

之前的文章有寫過Netty的拆包處理Netty在Android開發中的應用實戰系列(四)——— 粘包 | 拆包 處理 一、這篇文章重點講一下Netty中自定義協議的拆包需要怎麼處理,也就是Netty提供的LengthFieldBa

原创 Java實現部標JTT1078實時音視頻傳輸指令——視頻流負載包(RTP)傳輸

一、 說一說實現的思路 1.接收平臺方下發的0x9101命令(實時音視頻傳輸請求) 2.解析下發的0x9101命令,拿到音視頻上傳數據的服務器IP和端口號 3.開始獲取設備攝像頭的每一幀視頻數據,這裏需要注意的是:視頻數據支持的

原创 使用Netty封裝的部標JTT808 | JTT1078 | 渝標協議 數據上傳Android端

使用Netty封裝的 部標JTT808,JTT1078,渝標協議 數據上傳Android端示例 項目地址:GitHub地址 已實現的功能 JTT808 註冊 鑑權 心跳 位置信息彙報 設置終端參數 JTT1078

原创 Android使用AudioRecord錄製PCM音頻、PCM轉AAC、使用MediaRecorder直接錄製AAC編碼音頻

Android爲我們提供了兩個音頻處理的API:AudioRecord和MediaRecorder AudioRecord:偏底層的api MediaRecorder:對AudioRecord進行包裝的api 一、使用AudioR

原创 Viewpager遷移至ViewPager2實現Tab標籤頁面

ViewPager2是什麼呢? ViewPager2 是 ViewPager 的下一代版本,帶來了更強的功能並修復了之前的 bug;也就是解決了ViewPager的bug和不支持RTL佈局等等其他問題,Google同時也放棄對Vi

原创 Netty在Android開發中的應用實戰系列(五)——— 創建Web服務 | 作爲HTTP服務器

閱讀本文建議從第一篇開始往後看 本系列文章 Netty在Android開發中的應用實戰系列(一)——— 搭建服務端與客戶端 Netty在Android開發中的應用實戰系列(二)——— Encoder | Decoder | Ha

原创 Netty在Android開發中的應用實戰系列(三)——— 心跳處理 | 斷線重連

閱讀本文建議從第一篇開始往後看 本系列文章 Netty在Android開發中的應用實戰系列(一)——— 搭建服務端與客戶端 Netty在Android開發中的應用實戰系列(二)——— Encoder | Decoder | Ha

原创 Netty在Android開發中的應用實戰系列(四)——— 粘包 | 拆包 處理

閱讀本文建議從第一篇開始往後看 本系列文章 Netty在Android開發中的應用實戰系列(一)——— 搭建服務端與客戶端 Netty在Android開發中的應用實戰系列(二)——— Encoder | Decoder | Ha

原创 Netty在Android開發中的應用實戰系列(二)——— Encoder | Decoder | Handler 的使用

閱讀本文建議從第一篇開始往後看 本系列文章 Netty在Android開發中的應用實戰系列(一)——— 搭建服務端與客戶端 一、Encoder的作用 將發送的數據進行編碼成需要的數據格式,然後發送出去 二、Decoder的