SpeedCam Detector — 讓你不再吃罰單的小工具

小草
海大 SwiftUI iOS / Flutter App 程式設計
3 min readJan 9, 2020

關於

由於我自己開車速度算快(欸 拿到駕照一年多被開了很多次超速罰單…. 有很多測速照相的存在意義真的有點不明,特別是高速公路上某些直線路段,明明也沒有交流道系統⋯⋯。總之,為了不讓自己破產,於是決定動手設計一款測速照相偵測 APP!

它其實是我一年多前開始撰寫研究的 APP。前一個版本使用 StoryBoard + UIKit 以及自己撰寫的Class們(包含了具有動畫的UILabel、UIProgressView、UIViewControllerAnimatedTransitioning)

希望這個 APP 未來可以成功上架,不過因為一些Bug以及效能問題目前這個專案仍然在開發中的階段⋯⋯剛好這次期末可以用上,順便使用SwiftUI翻新一下整個UI/UX ( ̄∀ ̄)

主畫面

執行畫面

  • 即時速度顯示、根據設定的時速改變顏色提示
  • 經緯度顯示
  • 測速照相偵測

地圖顯示測速照相位置

  • 使用 MapKit + UIKit + SwiftUI
  • 點擊可以顯示測速照相資訊
  • 點位有 Clustering

設定

  • 設定單位(km/h or mph)
  • 設定音效
  • 設定速度警示、儀表最高速度
  • 設定會存入 UserDefaults

關於 — 文字動畫

  • 使用 NSTimer 製作的,不過有點小 Bug (整個 Text 會晃動) — 正在解決

簡報 — Gif

使用技術

  • SwiftUI
  • CoreLocation
  • App Group ( UserDefaults )
  • MapKit
  • AVFoundation
  • XGPS Swift Package - 其實這個 Package 也是自己寫的XDD
  • 政府資料開放平臺 API
  • 自定義 APP icon
  • 更多待補上…

GitHub Repo

https://github.com/f-null/SpeedCam-Detector

--

--