1. 介紹 除了通過Left Join將多個表進行關聯外,也可以通過以下方式進行多表之間的關聯。SELECT FROM Table1,Table2 該種關聯方式可以理解成 T...
1. 介紹 除了通過Left Join將多個表進行關聯外,也可以通過以下方式進行多表之間的關聯。SELECT FROM Table1,Table2 該種關聯方式可以理解成 T...
1. 在GoLand中創建工程 在Go 1.12版本后,不再使用GOPATH來配置項目目錄,而是使用Go Module的方式來管理依賴。所以在創建工程時,需要取消GOPATH...
背景 在運行Android單元測試的過程中遇到了下面問題,提示Mock失敗: 而從Stackoverflow上查找,說是通過PowerMockIgnore忽略掉reflect...
簡述 在使用Go Struct的Json Marshal的時候,通過Json To Go Struct工具可以生成結構體,但是當在結構體中只對部分屬性賦值的時候,Marsha...
背景 在運行Flutter Macos的時候,提示一下問題,沒有找ffi_c.bundle在M1架構處理器下的文件。 解決方案 1.通過gem安裝ffi 2. pod ins...
簡介 在使用Flutter開發的時候,希望在瀏覽器中打開URL,而在pub_env中已經存在url_launcher庫可以實現該功能。 導入url_launcher: ^6....
簡述 Kotlin的操作符重載與C++類似,雖然沒有C++那么強大,但是仍然可以實現Kotlin的操作符重載。 操作符與重載函數 Koltin的操作符和C++一樣,允許操作符...
問題簡述 在某個分支開發Feature過程中,可能在N次前的某個提交中需要修改用戶名,而該分支已經Push到遠端。 此時可以在本地分支通過git rebase -i的方式來指...
背景 遇到要在本地解析一套文件系統,其中有以下特征: 每個文件預計20M,每個文件約10W行數據 日志按日期進行分類,同時按時間順序增加 每行都會有[2021-05-14 1...
android studio 進行Build構建時遇到兩個錯誤 java.lang.NoClassDefFoundError: Could not initialize cl...
簡述 SystemServer中通過Watchdog來檢測UI、IO、Fg等線程是否會阻塞 , 也可以檢測是否發生死鎖. 在SystemServer啟動系統服務后 , 初始化...
原因 在2.3版本Apk安裝時 , 會進行Dexopt , 如果單個Dex中的class過大/method過多 , 就會導致LinearAlloc為Class/Method的...
簡述 從Android 2.1版本到現在的Android 11 , 中間虛擬機變化過三次 : 版本虛擬機類型特性2.1-4.4DalvikJIT+解釋器5.0-7.0ARTA...
dexopt編譯類型 在Android 8.0中 , 一共有5中編譯時機 (或者說原因) , 而dexopt會根據這幾個場景進行不同的編譯過程 , 而對應的過程所使用的編譯方...
簡述 LifeCycle通過在FragmentActivity中會添加ReportFragment用來監聽Activity的生命周期 , 而在注冊LifeCycleObser...
簡述 Android中部分業務會需要監聽前后臺切換 , 而一般前后臺監聽有兩種方案 : 在Application中注冊registerActivityLifecycleCal...
簡述 在APP打包過程中 , 會通過AAPT編譯資源以及生成R.java文件. 一般我們使用以下命令來調用aapt命令 : 優化方向 盡量只讓AAPT處理.9.png圖片 ,...
簡述 窗口接收事件主要分為三步驟 : 窗口與InputManagerService建立連接在InputManagerService初始化的時候會創建InputReader、I...
簡述 在Input子系統中主要分為三個步驟 : 初始化監聽 接收Input事件 分發Input事件給Focus窗口 初始化監聽 在system_server初始化InputM...