Xamarin.iOS で GPS を使ってみます。
ちなみ当方、iOS開発についてはシロートに毛が生えた程度なため、Objective-C でも GPS は使ったことありません。

ので、こちらのサンプルを、Xamarin.iOS で書きなおしてみました。

```c# LocationSample.cs
// LocationManager 的なやつ
private CLLocationManager _man = null;

public override void ViewDidLoad()
{
base.ViewDidLoad();

_man = new CLLocationManager();

// ボタンをタップした時
btnListen.TouchUpInside += (s, _) => 
{
    _man.DesiredAccuracy = 5000; // 希望精度5kmくらい
    _man.LocationsUpdated += (sender, e) => // 位置を受信した時のイベント
    {
        var l = e.Locations[e.Locations.Length - 1];
        
        lblLocation.Text = String.Format("Lat/Lng = {0}/{1}", 
                                         l.Coordinate.Latitude, l.Coordinate.Longitude);
    };
    
	// 受信開始
    _man.StartUpdatingLocation();
}; } ```

簡単すぎるやばい。
Xamarin.iOS のクラスライブラリが CoreLocation をうまくラップしてくれて、LocationsUpdated てなイベントも用意してくれてます。(Android の LocatiomManager にはイベントはなかった)
そして何度も言いますが Obj-C のキモい構文じゃないのでコードが見やすい書きやすい。

もうちょっとちゃんとしたサンプルは公式をみて下さい。

参考

Xamarin
iOS
C#

published

Ads

Read more!

amay077

Microsoft MVP(Xamarin). フルリモートワーカー. Geospatial Mobile app developer. Love C#.

amay077 amay077