原创 打造ReactNative腳手架工程 - Jest單元測試

前言 單元測試(unit testing),是指對軟件中的最小可測試單元進行檢查和驗證,一般針對的是函數、類或單個組件,不涉及系統和集成。單元測試是軟件測試的基礎測試,進行充分的單元測試,是提高軟件質量,降低開發成本的必由之路。對

原创 Android-x86-6.0定製之路 - 動態顯示、隱藏狀態欄和導航欄(廣播方式)

需求確立 描述 當 App 進入 kiosk 模式,要求隱藏底部虛擬鍵、禁止下拉出現狀態欄,這樣保證我們的 App 一直處於系統前臺運行。 1. 通過getWindow().getDecorView().setSystemUiVi

原创 打造ReactNative腳手架工程 - 代碼規範

前言 代碼規範,也算是個老生常談的問題。如何寫出優秀漂亮的代碼,是每個程序員的必修課。得益於開源偉大思想,許多大廠都制定了一系列的代碼規範併發布在市場上。正所謂"前人栽樹,後人乘涼",我們就不必去大費周章的去定義代碼規範,只要做到

原创 打造ReactNative腳手架工程 - 目錄結構

前言 上節我們簡單的對工程初始化作了些補充,這節我們來思考下工程文件的劃分以及命名。可能我們平常開發中不會太多注重這些,但是對於有代碼潔癖的我來說這是不能容忍的,我們現在來簡單討論下。 什麼是文件夾? 文件夾以什麼命令合適?

原创 打造ReactNative腳手架工程 - 集成Typescript

前言 思來想去,還是用Typescript來編寫腳手架工程吧。 爲什麼使用Typescript呢? Typescript 是 Javascript 的超集 Typescript 讓抽象清晰可見 Typescript 使代碼更容易

原创 打造ReactNative腳手架工程 - 初始化工程

搭建環境 關於 RN 的環境搭建這裏就不再贅述了。詳情參考官方文檔 新建工程 使用Facebook提供的react-native-cli工具新建工程, 步驟如下: 執行react-native init rndiy,生成空的工

原创 Flutter的首次嘗試,小獨App

PeaceRead 仿製小讀,使用 Flutter 語言開發 知識 dart 語法 dart 事件循環機制 dart 編程規範 material、cupertino 控件的使用 動畫系統的使用 自定義控件 setState 的理

原创 C語言學習筆記 - 變量、常量和存儲類

變量 在C中,變量的名稱是由字母、數字和下劃線字符組成。它必須以字母或下劃線開頭,並且C中變量是區分字母大小的。 在C中除了可以定義char int float double void基本變量類型,還可以定義枚舉、指針、數組、結

原创 C語言學習筆記 - 數據類型

C數據類型 C中類型可分爲以下幾種: 序號 類型與描述 1 基本類型:它們是算術類型,包括兩種類型:整數類型和浮點類型。 2 枚舉類型:它們也是算術類型,被用來定義在程序中只能賦予其一定的離散整數值的變量。 3

原创 Android-x86-6.0定製之路 - 以太網靜態iP功能

需求確立 描述 Android-x86-6.0 僅支持以太網動態獲取 IP(DHCP),現在客戶要求設置靜態 IP,即手動填寫 ip 地址、網關、子網掩碼、dns 服務器等信息。首先還是去 Settings.apk 查看是否支持此功能

原创 Android-x86-6.0定製之路 - 屏幕旋轉功能

需求確立 描述 Android-x86-6.0 屏幕默認橫屏展示,像 kiosk 模式的點餐機通常是立着的,也就是說需要豎屏展示。對於這個問題,以對 Android 的瞭解就是去設置裏查找是否有支持屏幕旋轉的功能,很遺憾 Androi

原创 Android-x86-6.0定製之路 - 繞過USB權限彈窗實現靜默授權

需求確立 描述 1. 我們的 App 要求接入多個外部設備,像打印機、掃碼器、讀卡器和 POS 機等,其中打印機和掃碼器就是使用 USB 連接的。遇到的問題是,我先接入打印機,再接入掃碼器,發現打印機就連接不了,必須重新插拔下才行,但

原创 Android-x86-6.0定製之路 - 廣播方式動態顯示、隱藏系統欄(狀態欄和導航欄)

需求確立 描述 當 App 進入 kiosk 模式,要求隱藏底部虛擬鍵、禁止下拉出現狀態欄,這樣保證我們的 App 一直處於系統前臺運行。 1. 通過getWindow().getDecorView().setSystemUiVisi

原创 Android-x86-6.0定製之路 - 永不休眠功能

需求確立 描述 一般, Kiosk 模式下不管處於什麼界面,都要求屏幕保持常亮的。雖然在 App 內可以通過代碼實現屏幕常亮,但是現在的需求是在系統設置裏增加永不休眠的功能,可勾選的實現動態修改。涉及到系統 Apk 的修改,沒辦法只能

原创 Android-x86-6.0定製之路 - 如何管理源碼

前言 終於完成了 android-x86-6.0 源碼的編譯工作,經過簡單的測試,系統正常工作,接下來就是閱讀和修改源碼了。爲了方便修改、提交、測試源碼,想着應該將源碼上傳到 git,但是源碼過於龐大,如果將整個源碼作爲單個項目上傳