原创 iOS13系統App應用圖標發生變化的問題
最近我們App的應用圖標進行了更新,在iOS13系統上,發現一個奇怪的問題,當點擊App的時候App的圖標會變回之前舊版的icon圖標,當App從前臺切換到後臺時,也會看到舊版的icon圖標,大概過0.5秒左右,纔會從舊版的i
原创 iOS中UICollectionView調用reloadData,導致視圖失去第一響應者(失去焦點、鍵盤收起)的解決辦法
需求: 有這樣一個需求,在UICollectionViewCell中有一個UITextField控件,在輸入的過程中實時判斷格式是否正確,如果不正確就如圖二展示的效果,也就是需要在鍵盤彈出的狀態下動態調整Cell的高度。
原创 iOS仿微信聊天輸入框、評論輸入框
最近項目有需求,需要實現一個類似微信聊天輸入框的組件,用在全平臺的評論功能中。大概需求就是輸入的文字佔滿一行時,自動折行並且增大輸入框的高,輸入框的高有默認的最大值。在此,記錄一下遇到的問題。 1、項目中用到了三方庫IQKeyboa
原创 Mac上(iOS項目)用Jenkins做持續集成(CI)注意事項及總結
注意事項: 1、安裝Jenkins一定要從命令行安裝(brew install jenkins),切記不要從Jenkins官網直接下載安裝。因爲後者會默認安裝在Mac的Shared目錄下,之後會遇到很多訪問權限問題。 2、Jenkins默
原创 iOS線上防Crash處理並上傳未發生的崩潰日誌,降低線上APP崩潰率
線上APP的崩潰率一直是衡量APP用戶體驗的重要條件之一,所以,我們很有必要做一些安全防護,讓APP儘可能少的產生Crash,提高用戶體驗。在以前的項目中零零散散做過一些防護,這次專門爲平臺封裝了一個Pod庫,供各個業務線直接引
原创 iOS App在運行過程中佔用系統內存的方法和CPU使用率的計算方法
最近在調研iOS中的OOM(Out-Of-Memory),iOS中存在一些機制,當系統的內存不夠用時或者當前APP的使用內存超過了閾值,就會導致系統強殺當前APP,由於強殺當前APP的進程是系統做的事情,所以,當前APP是無法知
原创 iOS利用Runtime實現自定義類的序列化和反序列化
最近項目中有一個發帖子的需求,就是類似新浪微博中的發文章。現在要求增加草稿箱的功能,不同的帖子都可以將內容存儲到本地。開始我打算用數據庫做本地存儲,但是,由於文本編輯有富文本內容,對應iOS中的NSAttributedString
原创 iOS13系統適配暗黑模式調研總結
背景:iOS13系統提供了暗黑模式,公司各業務線App打算嘗試適配iOS13系統暗黑模式。 一、關於圖片的適配: 1、本地圖片適配:Assets中設置(Any,Dark)類型,可設置兩種模式下分別需要顯示的圖片(可兼容iOS低版本
原创 iOS安全防護---越獄檢測、二次打包檢測、反調試
最近在調研越獄設備的檢測、防止APP被二次打包、防止反調試以及逆向工程,調研期間做了大量的測試來驗證方案的可行性,花費了很多時間。所以,在此將調研結果總結一下,供大家參考。 一、越獄環境下,提高App破解難度的方案: 1
原创 iOS如何判斷APP是在調試器(Xcode上)運行
#include <assert.h> #include <stdbool.h> #include <sys/types.h> #include <unistd.h> #include <sys/sysctl.h> static bo
原创 iPhone手機屏幕尺寸詳細表格、A10和A11處理器介紹
1、屏幕尺寸鏈接地址:點擊查看 補充: iPhoneX系列,也就是帶劉海屏的一系列手機,屏幕寬高比是一致的。 iPhone5、iPhoneSE、iPhone6、iPhone6 Plus等一系列非劉海屏的手機,屏幕寬高比也是一致的。 2
原创 iOS線上防Crash處理並上傳崩潰日誌,降低線上APP崩潰率
線上APP的崩潰率一直是衡量APP用戶體驗的重要條件之一,所以,我們很有必要做一些安全防護,讓APP儘可能少的產生Crash,提高用戶體驗。在以前的項目中零零散散做過一些防護,這次專門爲平臺封裝了一個Pod庫,供各個業務線直接引
原创 iOS中獲取光標位置(解決獲取光標位置無窮大問題)
獲取UITextView光標所在位置的方法: //光標的frame CGRect caretRect = [textView caretRectForPosition:textView.selectedTextRange.start];
原创 Flutter高效率UI渲染方式原理解析
我們知道Flutter在UI繪製方面的效率是幾乎接近原生的,這點比React Native要優秀很多,因爲React Native是通過橋接轉換然後去調用各自平臺的UI系統(如iOS中的UIKit框架)提供的API來完成繪圖。接下來,我們
原创 移動開發跨平臺技術簡介:Flutter、React Native、Weex、Hybrid
最近在學習Flutter,看到了一篇關於移動開發跨平臺技術的總結,感覺寫的不錯。在此,記錄一下,方便之後查看。 文章中介紹了: 1、原生開發與跨平臺技術目前的發展現狀。 2、Hybrid技術簡介(H5+原生混合開發),這是目前跨平臺開