原创 OpenGL ES 【Opaque 屬性在 CAEAGLLayer 中的配置詳解】

UIView 的 alpha、hidden 和 opaque 屬性之間的關係和區別 UIView的這幾個屬性讓我困惑了好一陣子,通過翻看官方文檔和stackoverflow等網上資源,對它們有了一定理解,現分享出來。如理解有誤,還

原创 PJSIP 【編譯多平臺支持的靜態庫】

好久沒有寫博客了,這也算是我步入新工作後的第一篇技術博文吧。在進入新公司前,早就有了技術層進入下一個迭代的準備,但很多事情是意想不到的,就像我以 C# 程序員的身份面試入職的,而今卻是一個全職的 IOS 開發。從 C# 到 Object

原创 Swift 【記一次Swift4.1→Swift4.2語法過渡】

  背景 WARNING ITMS-90725: "SDK Version Issue. This app was built with the iOS 11.3 SDK. Starting March 2019, all iOS ap

原创 Git 【Pull requests】

近日,朋友問起我來,Git 直接使用語句,或者是使用一些常用的 Git 管理工具(Github Desktop、SourceTree)如何進行代碼管理,因爲之前他們使用的是 Xcode 自帶的 Git 管理工具。其實具體的用法很簡單,和

原创 SQL 【INNER JOIN 關鍵字】

      inner join (等值連接) 只返回兩個表中聯結字段相等的行        left join (左連接)返回包括左表中的所有記錄和右表中聯結字段相等的記錄        right join (右連接)返回包括右表中的

原创 iOS 【你的項目內存溢出了嗎?】

在 App 的開發中,內存溢出、野指針滿天飛是很常見的現象。合理的規避內存溢出風險是我們需要做得。常見的,如數組越界,可造成程序的閃退崩潰。但一般這種類型的內存泄露比較容易定位,也容易解決。最近項目中遇到了一些很奇怪的現象,我拿來分享一下

原创 iOS 【在 RSA 加密中遇到的一些坑 - 安卓/iOS 所需私鑰不同】

在之前的開發項目中遇到了 RSA 加密,也有人私下問我,爲什麼他們的項目中安卓客戶端上傳的密文可以通過後臺密鑰進行解密,但是iOS端上傳的密文卻解密失敗。在兩個平臺上,其實是不同的: openssl genrsa -out private

原创 iOS 【一篇文章引發的思考 —— 異步/同步/併發/串行】

逛到 stackoverflow 上面一篇提問,引起了我的深思,寫了這麼久的代碼,反過頭來去看最最基本的東西,卻又覺得十分有趣。不廢話了,直接上鍊接: https://stackoverflow.com/questions/1918066

原创 iOS 【自適應長度標題欄-類似於滴滴打車】

最近在做的項目屬於打車平臺類型。上面設計了一個簡易好看的自適應長度標題欄,類似於滴滴打車這款 App 首頁的一個標題欄,如下: 於是自己也寫了一個類似的導航條,自定義程度較高,具體的展示 gif 圖和源代碼均在 GitHub 上有

原创 iOS 【自適應拆分換行評論 UILabel 列表-類車主評論頁面】

一款自適應拆分換行評論列表,用於項目中評論欄的搭建,可自動根據寬度進行換行,定製性極高。 下面是項目中用到的評價模塊: 現提供關鍵部分代碼,供大家學習集成,效果如下: 大家可以去我的 GitHub 下載源碼: Adaptiv

原创 iOS 【RSA 非對稱加密】

首先介紹一下什麼是 RSA 加密: 1977年,三位數學家Rivest、Shamir 和 Adleman 設計了一種算法,可以實現非對稱加密。這種算法用他們三個人的名字命名,叫做RSA算法。從那時直到現在,RSA算法一直是最廣爲使用的"

原创 AR 【WWDC2017 ARKit 技術理論】

蘋果在 WWDC2017 中推出了 ARKit,通過這個新框架可以看出蘋果未來會在 AR 方向不斷髮展,本着學習興趣,對此項新技術進行了學習,並在團隊進行了一次分享,利用業餘時間把幾周前分享的內容整理成文檔供大家交流學習。本文並不是簡

原创 Xcode 【Treating Unicode character as whitespace 警告】

在我們 copy 一些文本到 Xcode 裏面的時候會有 Treating Unicode character as whitespace 的警告,此時認真檢查你 copy 的文本部分,回車、空格是否有問題。當然一般檢查不出來,直接刪除回

原创 iOS 【使用 dSYM 符號集對線上 App 進行崩潰修復】

前言 之前發過一篇博客是捕捉崩潰日誌的,然後上傳到公司服務器,大家可以參照: Xcode 【發佈狀態下如何捕獲崩潰日誌上傳到服務器】 這個方式可以讓我們自己去管理我們的錯誤日誌,而非去集成一些第三方 SDK 來操作,讓代碼更加的簡單。

原创 Swift 【成了?成了!】

  背景 WARNING ITMS-90725: "SDK Version Issue. This app was built with the iOS 11.3 SDK. Starting March 2019, all iOS ap