Swift Practice # 156 Firebase geopoint 資料格式

Dogpa Chen
May 19, 2022

--

上一篇研究了一題LeetCode的Easy題目,慢慢的累積自己對於LeetCode邏輯與演算法的知識。

這篇則要將自己的side project的地理位置資料放在Firebase的Firestore上讓使用者讀取,原本是想使用兩個值存放經度與緯度,在個別組合起來成為CLLocationCoordinate2D,但在Firestore內看到了geopoint的資料格式。

從上圖來看可以得知Firestore已經提供了一種經緯度座標的資料格式,但是問題來了,Swift內沒有所謂的geoPoing,那彼此間要怎麼溝通?上網搜尋了一下,原來Firestore已經幫我們處理好了。

關於Firebase的前置環境與存取資料方式,可以參考下面的連結。這篇來探討關於geopoint就好。

建立地理資料:

透過Firebase Firestore建立資料格式,內含GeoPoint的資料類型。

Model:

透過FirebaseFirestore取用GeoPoint就可以了,想不到這麼簡單QQ。還以為是多麽困難的狀況,可以知道Firebase Firestore已經幫你完成。

ViewModel:

仿造Swift Practice 150 的 ViewModel,只要取得資料就好,確認GeoPoint的類型可以使用。

View:

測試結果:

從上面可以看到資料可以顯示,原來以為很困難的資料,簡單的處理就好了。看來side project的資料可以順利存入使用了。持續加油!

--

--