FirebaseのRealtimedatbaseにchildByAutoIDを使って新しくユーザーが自動追加できる様にし、
autoIDの下にuserLatitudeとuserLongitudeを固定して置き、そこに実際の緯度経度を保存したいです。
しかしRealtimedatabaseを見てみると保存されたデータが"Label"になってしまいます。
アドバイス頂きたいです。お願いします。
ViewController
1import UIKit 2import Firebase 3import MapKit 4import CoreLocation 5 6class ViewController: UIViewController, CLLocationManagerDelegate { 7 8 @IBOutlet weak var mapView: MKMapView! 9 @IBOutlet weak var latitude: UILabel! 10 @IBOutlet weak var longitude: UILabel! 11 let locationManager = CLLocationManager() 12 let user = Auth.auth().currentUser?.uid 13 var ref: DatabaseReference! 14 15 override func viewDidLoad() { 16 super.viewDidLoad() 17 ref = Database.database().reference() 18 locationManager.delegate = self as!CLLocationManagerDelegate 19 post() 20 } 21 //データ書き込み 22 func post() { 23 24 let post = ["userLatitude": latitude.text, "userLongitude": longitude.text] 25 ref.child("users").childByAutoId().setValue(post) 26 } 27 //ロケーションマネージャー通知 28 func locationManager(_ manager: CLLocationManager, didChangeAuthorization status: CLAuthorizationStatus) { 29 switch status { 30 case .notDetermined: 31 locationManager.requestWhenInUseAuthorization() 32 case .authorizedWhenInUse: 33 locationManager.startUpdatingLocation() 34 default: 35 break 36 } 37 } 38 //座標を取得し、labelに表示←これは実装できてます。 39 func locationManager(_ manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) { 40 if let coordinate = locations.last?.coordinate { 41 // 現在地を拡大して表示する 42 let span = MKCoordinateSpan(latitudeDelta: 0.01, longitudeDelta: 0.01) 43 let region = MKCoordinateRegion(center: coordinate, span: span) 44 mapView.region = region 45 } 46 guard let newLocation = locations.last else { 47 return 48 } 49 self.latitude.text = "".appendingFormat("%.4f", newLocation.coordinate.latitude) 50 self.longitude.text = "".appendingFormat("%.4f", newLocation.coordinate.longitude) 51 let location = locations.first 52 let latitude = location?.coordinate.latitude 53 let longitude = location?.coordinate.longitude 54 55 print("latitude: (latitude!)\nlongitude: (longitude!)") 56 } 57 58 59} 60
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/11/22 09:16
2019/11/22 09:19
2019/11/22 09:25
2019/11/22 09:48
2019/11/22 11:56
2019/11/22 12:31 編集
2019/11/23 08:15
2019/11/23 08:17
2019/11/23 09:16
2019/11/23 16:47
2019/11/23 16:57
2019/11/23 17:49