Swift

蘋果新出的用於代替OC的高級編程語言!

macOS 使用 atos 命令解析任意崩潰記錄和採樣數據

最近落格輸入法遇到了幾個比較難以復現的問題——關鍵是它不會導致崩潰。這就讓崩潰統計功能根本無效,具體表現為在某些情況下輸入法會突然卡住幾秒,叫人十分惱火。後來我想到,macOS自帶活動管理器中,有個“採樣”功能,可以看到對應進程當前的執行(調用)狀態,那我是不是可以用它來分析錯誤原因呢?

在日本[……]

點擊跳轉以繼續閱讀

Swift Python 互通 Json 數據簽名

最近很流行自簽證書進行 HTTPS 解密,然後就有不少人通過修改蘋果的內購回執實現對 App 的破解。實際上驗證購買應該是 App 連接服務器,服務器來和蘋果的服務器進行通信,然後將結果發送給 App 的——但不少開發者(包括個人開發者以及企業開發者)懶得去專門維護服務器,所以直接用 App 和蘋果[……]

點擊跳轉以繼續閱讀

落格輸入法是如何處理按鍵消息的

要做一款移動設備上的軟鍵盤,那麼怎麼處理用戶的點擊位置,就是你遇到的第一個難題,在這個問題上,我也走了很長的路。

我把落格輸入法開發以來的觸控邏輯大致分類為三個階段,現在分別來講講設計思路,希望能夠對你有所幫助。

第一代觸控引擎

顯然,對於一個初學者來說,沒什麼比系統控件更好用的了,功能全[……]

點擊跳轉以繼續閱讀

Swift 裡的數組去重方案

在使用 Swift 進行開發落格輸入法時,我遇到了一個很有意思的問題——去重

眾所周知,輸入法的候選在計算出來後總會有可能是重複的選項(比如碼表和詞庫中都有某個詞,也許他們編碼不同,但字是一樣的之類),這時候就需要去重,但又要保持候選的先後順序不變。

別人的解決方案

如果你去網上找,那麼[……]

點擊跳轉以繼續閱讀

swift4 url​​Session get和post網絡請求

廢話不多說,直接上代碼。

得到:

POST:

 [……]

點擊跳轉以繼續閱讀

Swift 中如何使用字典類型作為泛型約束

今天學員群裡有人提了這麼一個問題,為什麼把特性的字典類型作為泛型類型約束的時候,就必然報錯?

顯然,說的很明確了,“你不能從一個非協議、非類的類型繼承”。顯然,字典是個泛型結構體……

那麼解決思路也很明確了,創建一個[……]

點擊跳轉以繼續閱讀

NSTextField 文本模糊的解決辦法 canDrawSubviewsIntoLayer

在開發落格輸入法 macOS 的過程當中,我一直被一個奇怪的問題所困擾——文本模糊。

次像素

無論我怎樣調試,落格輸入法的候選文字都無法達到原生文字的那樣清晰和銳利。在請教了大神之後,得到的活久見經驗是——上游次像素渲染 錯誤。

在很多平台都有類似問題,MACOS[……]

點擊跳轉以繼續閱讀

落格輸入法 macOS 是如何處理 ascii 0x01 的兼容問題的-macOS 輸入法如何正確設置 buffer

早在去年,落格輸入法的用戶就有報告說落格輸入法 macOS 在 有道云筆記 的 MarkDown 模式下無法正常鍵入中文,經過測試證明確實如此,體現為打中文字的時候,buffer的刷新會奇怪的刪除掉光標前的一個字符——對,不多不少,就刪一個。

搗鼓了很久未果,最後我沒招了打印出了所有內容,發現[……]

點擊跳轉以繼續閱讀