原创 ReactNative code-push更新後重新打開回退問題

問題: 使用code-push更新以後,關閉app重新打開會回滾到更新之前的版本,查看日誌發現有這麼一句話 Update did not finish loading the last time, rolling back to

原创 使用FFmpeg實現rtmp播放和音視頻同步

使用FFmpeg4.2.2實現本地視頻和rtmp直播流的播放,實現了音視頻同步 git地址

原创 Android不同CPU架構下so文件兼容問題總結

一、Android 設備的CPU類型通常分以下幾種 armeabiv-v7a: 第7代及以上的 ARM 處理器,目前主流版本,大部分Android設備都使用它。 arm64-v8a: 第8代、64位ARM處理器。 armeabi

原创 FFmpeg4.2.2和RTMP結合編譯

一、編譯librtmp 下載librtmp源碼,在GitHub上下載: 可以用git下載: git clone https://github.com/yixia/librtmp.git 編譯librtmp腳本: #!/bin/

原创 Linux命令

對照Linux 命令大全 | 菜鳥教程 搜索查看詳細介紹

原创 展示組件和容器組件的區別和應用

在使用React中,你是否會出現過一個文件的代碼很多,既存在應用數據的讀取和處理,又存在數據的顯示,而且每個組件還不能複用。 首先我們來看一個容器組件和展示組件一起的例子吧。 class TodoList extends Reac

原创 ReactNative 線上JS層錯誤統計解析

一、前言 開發APP,通常都會接入一些第三方的錯誤統計工具,例如友盟、bugly等,而這些第三方提供的SDK目前來看,只支持Native層的統計。對於ReactNative項目來說,反饋的錯誤日誌無法直接看出具體錯誤信息,如下是友

原创 ReactNative pod install卡在boost-for-react-native

在ios目錄下pod install時,總是會卡在boost-for-react-native,因爲國內用戶拉GitHub的代碼會卡住,一直失敗 解決辦法: 在ios目錄下Podfile文件中,加入以下代碼,再pod insta

原创 React Native 0.60以上集成code push熱更新

安裝 CodePush CLI 管理 CodePush 賬號需要通過 NodeJS-based CLI。只需要在終端輸入 npm install -g code-push-cli,就可以安裝了。 安裝完畢後,輸入 code-pus

原创 Glide實現原理解析

一.Glide緩存機制 Glide採取的多級緩存機制,能夠較爲友好地實現圖片、動圖的加載。其主要有 內存緩存+磁盤緩存 ,當然他們的作用也有不同,其中內存緩存主要用於防止將重複的圖讀入內存中,磁盤緩存則用於防止從網絡或者其他地方

原创 ARouter原理解析

ARouter 是一個用於幫助 Android App 進行組件化改造的框架 —— 支持模塊間的路由、通信、解耦 https://github.com/alibaba/ARouter/blob/master/README_CN.

原创 Android動態換膚實現原理解析

換膚分爲動態換膚和靜態換膚 靜態換膚 這種換膚的方式,也就是我們所說的內置換膚,就是在APP內部放置多套相同的資源。進行資源的切換。 這種換膚的方式有很多缺點,比如, 靈活性差,只能更換內置的資源、apk體積太大,在我們的應用Ap

原创 裝箱/拆箱和類型轉換之間的區別是什麼?

裝箱是指將不可爲空的值類型轉換爲引用類型,或將值類型轉換爲它實現的某個接口(例如int to icomparable)。 拆箱是指從對象顯式轉換爲不可爲空的值類型,將接口類型轉換爲不可爲空的值類型(例如,IComparablet

原创 Android面向切面編程(AOP)

一、簡述 1.AOP概念 AOP爲Aspect Oriented Programming的縮寫,意爲:面向切面編程,通過預編譯方式和運行期動態代理實現程序功能的統一維護的一種技術。一句話概括:在運行時,動態地將代碼切入到類的指定方

原创 EventBus源碼分析

概述 EventBus可以代替Android傳統的Intent、Handler、Broadcast或接口函數,在Fragment、Activity、Service線程之間傳遞數據。具體使用方式參考github,本文我們將通過源碼看