原创 地圖尋路搜索

項目中集成了高德開放平臺地鐵圖 JS API 傳送門,經過長期的功能迭代,甲方提出了各種定製化需求來優化體驗,而使用這種第三方SDK就很難滿足;因此如果自己開發一套地鐵線路圖引擎,從功能和體驗上達到完全可控,可完美滿足用戶需求;

原创 codepush支持多bundle更新重構

codepush實現原理 梳理下關鍵節點 前端獲取serverURL、appVersion、deploymentKey 請求serverURL查詢deploymentKey對應的包是否需要更新,appVersion作爲匹配條件

原创 仿高德地鐵圖 JS SDK

仿高德地圖 JS SDK 倉庫地址 程序目錄 . ├── README.md #說明文檔 ├── dist │├── bscroll.js #better-scroll庫 ├── gy-subway-data.json #地鐵線

原创 RN實現百度地圖、線路規劃、POI檢索

因公司甲方要求,需要在APP中直接集成百度地圖公交路徑規劃功能,方便用戶出行;當然用戶也可以直接用百度、或高德去查詢,但作爲交通出行類的工具類型APP,如果能直接提供輔助型的核心功能,再配合運營工具,不僅能提高用戶粘性,還能對用戶

原创 codepush熱更新包減小體積-圖片資源優化

場景 codepush更新包需要上傳bundle+assets,當需要上傳資源包體積比較大的情況下,會消耗大量用戶流量且有下載失敗風險,如出現緊急情況熱更新下發率低下會造成極大的影響;那麼如何減少更新包體積呢? 改造方案 如使用

原创 靈活輕便的Table控件,適合複雜樣式的內容排版

github倉庫地址 https://github.com/gaoyangclub/GYTableViewController 前言 TableView是在項目開發的時候經常用到的組件,幾乎百分之八十以上的頁面都需要使用,一個最基

原创 簡潔高效的一套iOS列表框架GYTableViewController

之前做項目一直使用自己封裝TableView框架,最近把他整理了下(不要臉的)開放出來。如果您用的比較爽的話請點擊右上角的star關注下,也可以隨時發送issues吐槽給我,我會隨時發現並解決。 github倉庫地址 技術特點

原创 RN拆包解決方案(一) bundle拆分

前言 本文是基於react-native 0.55, react 16.3.1版本展開 目的 減少業務包體積(app瘦身) 節省熱更新流量 提升模塊加載速度 實現方式 打通用包,包括react-native框架、cod

原创 jenkins + fastlane 持續化集成交付、OTA分發

jenkins 項目中測試組專用服務器上安裝jenkins方便持續集成和交付。 jenkins是一個開源軟件項目,是基於Java開發的一種持續集成工具,用於監控持續重複的工作,旨在提供一個開放易用的軟件平臺。安裝流程請戳 fast

原创 RN拆包解決方案(二) bundle加載

前言 本文跟隨上一篇RN拆包解決方案(一) bundle拆分,已打出common.bundle和patch.bundle文件爲前提,引入工程項目中 iOS原生加載流程 RCTBridge開放私有方法 @interface RCTB

原创 微信小程序技術分享

小程序是什麼? 官方稱爲"小程序",可理解爲鑲嵌在微信的App 與訂閱號、服務號和企業號屬於同級體系。由此,小程序、訂閱號、服務號、企業號形成了並行的微信生態四大體系。 小程序優勢 性能比WebApp好 無需安裝,不佔內存,

原创 RN拆包解決方案(三) RCTBridge緩存

場景 目前項目中RN模塊已經改造成了拆包方式,每次在初始化的時候先加載common代碼,然後進入相具體業務頁面加載business代碼,雖然business的代碼只有幾十k左右,但是沒有預加載的情況下,等待加載完畢也需要一些時間,

原创 iconfont技術分享

提問 提需求的人圖標樣式(顏色)要換? 圖標如何滿足不同的分辨率以及清晰度? 圖標太多導致項目體積越來越大,如何瘦身? 按鈕狀態切換隻用一個圖標,例如點擊和鬆開,甚至更多的狀態? 用字體來代替圖標 阿里iconfont 輕

原创 UI組件模塊設計思路

模塊設計思路 功能職責細分 UI組件 組件類型 如何創建組件 菜單獲取 菜單緩存管理 菜單路由跳轉 組件流式佈局 下拉刷新動畫 自定義導航 首頁、我的業務 廣告組件 UI組件 組件如何設計? 思路1 - UI組件中包含具體業務

原创 iOS性能檢測和優化

卡頓原因分析 用戶在使用APP的過程中,客戶端要在持續60fps左右的幀率情況下才能保證流暢度,低於40fps就有明顯的卡頓情況;那麼在什麼情況下才會導致幀率下降呢? 我們都知道APP需要在主線程進行渲染操作,同時還有很多業務功