Just My Life & My Work

Posts tagged ‘teach’

[Mac] 更改截圖的儲存位置、預設名稱、檔案類型

又到了換新電腦時候,習慣截圖工作記錄的我,總是會截取許多螢幕上的資料,Mac 預設將截圖儲存在桌面,一開始懶得移動截圖位置的我,不久就會佔滿整個螢幕桌面⋯⋯

只好這一次把做法記錄下來,下次再換新電腦就能快速完成此設定!也希望未來的我,每年都能換一台新筆電,如此讓我的生產力持續保持最好的狀態唷~😃

(繼續閱讀…)

[Flutter] 學習路線圖 (Flutter Roadmap)

Flutter 最近幾年開始火熱起來,由於它優越的特性(UI/UX 與原生一致、開發效率快等),讓我對它有所期待,比起我曾嘗試的 XamrinIonic 還要有潛力和遠景。

那麼要怎麼開始學習 Flutter 呢?因為每個人的背景基礎都不太一樣,肯定不能照同一套路進行。像我從 2012 年開始開發 iOS App,已經非常熟習 Native 語言來開發,無論什麼 App 只要有心都能獨自一人完成!那麼對我來說,大致上會需要去學習新的程式語言 Dart、設計架構、調試方法等等,同時也需要去接觸另一平台 Android 的相關技術。

(繼續閱讀…)

[iOS] 判斷 NaN

進公司兩年,還是有一些 Bug/Crash 未解,不是我不想解,只是不知道如何「重現」。偶然間我終於可以持續重現狀況,趕緊放下手邊工作,接上手機編譯 App,在 Xcode 設中斷點,便能知道前後變數當前的值,推敲源頭是什麼~😗

當我重複進出某頁,就會 Crash🤪
(繼續閱讀…)

呼叫 API 的 URL 過長問題

最近在整合 API,需要附加大量的參數,使用 Get 方式呼叫,發生:

Request failed: requested URL too long (414)

搜尋一下問題,原因如下:

Two options to resolve the problem for 414 response code:

  1. By POST request: Convert query string to json object and sent to API request with POST
  2. By GET request: Max length of request is depend on sever side as well as client side. Most webserver have limit 8k which is configurable. On the client side the different browser has different limit. The browser IE and Safari limit to 2k, Opera 4k and Firefox 8k. means the max length for the GET request is 8k and min request length is 2k.
    If exceed the request max length then the request truncated outside the limit by web server or browser without any warning. Some server truncated request data but the some server reject it because of data lose and they will return with response code 414.

最後我改成 Post 方式呼叫,就再也沒有此問題!😃

iOS 回傳

Error Domain=com.alamofire.error.serialization.response Code=-1011 “Request failed: requested URL too long (414)" UserInfo={NSLocalizedDescription=Request failed: requested URL too long (414), 

Chrome 回傳

Request-URI Too Large
The requested URL’s length exceeds the capacity limit for this server.
Apache/2.2.15 (CentOS) Server at upload.tintint.com Port 443

參考:414 (Request-URI Too Long)

[Git] 搜尋 Commit 中特定程式碼

收到任務,要把周邊商品 A 上架,請我協助修改 API。🤔

修改這種既定邏輯是沒啥問題,問題是要怎麼找到關鍵的地方,這些地方散落各處,過去沒有或鮮少經手,一時之間要找挺是花時間呢~

好在總會有一些懶人做法,我搜尋 Git 用法,有個符合我期望的功能,就是能找到過去增修 code 的 commit,我要做的是把舊的周邊商品 B 的關鍵字輸入到指令。令人驚艷地,那些相關增修的地方全都跑出來啦~

指令的用法如下:
git log -p --all -S 'search string'

我僅要替換「search string」,比如我想找 Happy Boy:
git log -p --all -S 'Happy Boy'

其它進階用法,可再查參數之功用。

身為一個資深 iOS 工程師,偶爾還是要協助修改 API,畢竟公司每個同事都相當忙碌,而且趁這時候學新的技術,讓任務更容易完成!😗

參考:

How to grep (search) committed code in the Git history

[Flutter] Flutter 簡介

要進入 Flutter 之前,就先來了解它為何會誕生,接著明白其特色與優缺點。讓我們能對它抱持著希望與期待,於日後開發 App 增添信心。🤗

Flutter 是 Google 推出並開源的行動應用開發框架,主打跨平台、高保真、高性能。開發者可以透過 Dart 語言開發 App,一套程式碼能夠同時執行在 iOS 和 Android 平台。Flutter 提供了豐富的套件、介面(接口),開發者可以很快地為 Flutter 新增 Native 擴展。同時 Flutter 還使用 Native 引擎渲染視圖,這相信能為用戶提供良好的體驗。

廣告
(繼續閱讀…)

[Flutter] 原生與跨平台 (Native and Hybrid)

最近踏入跨平台開發,過去有開發過 Xamarin 和 Ionic 的我,原先對跨平台不屑一顧,不過在遇到 Flutter 之後,開始有不一樣的期待!為什麼呢?

第一,開發效率比其他跨平台程式語言還要好;第二,成果效能不輸給原生開發。

在此節錄高手的電子書內容,跟著前人的腳步學習,代表好的開始~😀

其實在幫忙維護公司產品時,覺得花太多時間在編譯上,每次編譯動輒一分鐘以上,若不小心動到核心檔案,編譯時間可能將近 5 分鐘,等待的過程我會滑手機,或是想著下一步要怎麼改動程式碼,行雲流水的思緒被中斷,實在不是很爽快呢~

因緣際會接觸了 Flutter 跨平台開發,第一次聽到 Flutter 是在港商公司,我的 Leader 耳聞 Google 最新跨平台技術誕生,就跟老闆提議可考慮用此技術來改善 UI/UX 不平衡的狀況。不久,老闆就裁掉 50 多人的 IT 部門,很快再招募新一批人馬,使用 Flutter 快速迭代開發,我看到上架到 App Store,下巴差點沒掉下來⋯⋯

如今已過兩年,Flutter 發展得比 React Native 還要蓬勃,想必是其有過人之處!😌

(繼續閱讀…)

[iOS] 蘋果私人電子信箱中繼服務 (Apple Private Email Relay Service)

我公司整合 Apple Login 已滿一年,開始有大量的 @privaterelay.apple.com 註冊我們家服務,每到一個促銷活動或節慶,我們都會寄送 EDM 給用戶,看後台數據發現 @privaterelay.apple.com 開信率是 0%!😭

此時就要了解蘋果私人電子信箱中繼服務 (Apple Private Email Relay Service),來增加我們觸及用戶的機會!

(繼續閱讀…)

[Flutter] GridView.count

最近對 Flutter 開始感興趣,研究起來格外順暢,也許是因為我本身開發 iOS App,所以背景知識技術足夠跨越門檻。

這篇來展示我學習 GridView.count 的紀錄,實際上功能很類似 iOS 的 Collection View,GridView.count 在用法比較容易實作,真的很快!

開發階段,我還可以透過 Chrome 來 debug,比起要花時間編譯到實機或模擬器,Chrome 跑起來奇快無比呢~看來有 Google 老大哥扶持,很多事情都被簡化囉~😁

先來看一下我實現的畫面~

廣告
(繼續閱讀…)

[iOS] Apple 推播通知服務憑證更新

現在推播憑證期限為13個月(多一個月讓你心理準備XD),不過這次才過了半年就發生問題,實際上是可以發出推播,但是手機收不到推播,那到底是什麼問題呢?

追查後發現,原來是我們家的Server太舊,還沒支援HTTP/2,原以為Apple沒有公告,後來找到了,印象中有看過這一通知,但是我沒太留意,畢竟我不曉得我們家Server沒支援HTTP/2呀⋯⋯😝

升級HTTP/2有何好處?可以讓你的網站瀏覽起來更快、更安全、SEO加分!比較 HTTP/1.1 和 HTTP/2 的速度差異,這在圖多的情況最為明顯~

HTTP/2 TECHNOLOGY DEMO

技術總是要與時俱進呀~套一句話,技術如逆水行舟,不進則退~也就是你若保持在原地,其實就是退步,因為他人一直在往前!😙

廣告
(繼續閱讀…)

標籤雲

%d 位部落客按了讚: