見出し画像

【IT技術】【Swift】デバッグ時に現在位置を任意の場所に変更する

こんにちは。ラフアンドレディ(株) iOS大好き 春蔵です。

今回はデバッグ時に現在位置を任意の場所に変更する方法をご紹介したいと思います。

本記事で作成するgpxファイルは「【Swift】指定した場所の近くでアラームを起動する」で作成したサンプルアプリに含まれます。


デバッグ時に位置情報の変更を許可

プロジェクト → Edit Schemeを選択
RUN → Options → Allow Location Simulation をチェック

gpxファイルを作成

デバッグ時に現在位置を変更する場合に使用する位置情報のファイル(gpx)を作成します。

XCodeのメニューよりFile → New → File → gpxの名称で抽出
ファイル名に任意の値(場所名がわかりやすいため、お薦め)を設定しCreateボタンを押下

gpxファイルを修正

gpxファイル内のlet(latitude:緯度)、lon(longitude:経度),name(デバッグ時に表示される任意の名前)を修正します。

<?xml version="1.0"?>
<gpx version="1.1" creator="Xcode">
    
    <!--
     Provide one or more waypoints containing a latitude/longitude pair. If you provide one
     waypoint, Xcode will simulate that specific location. If you provide multiple waypoints,
     Xcode will simulate a route visiting each waypoint.
     -->
    <wpt lat="35.6890091" lon="139.7007075">
        <name>Sinjyuku</name>
        
        <!--
         Optionally provide a time element for each waypoint. Xcode will interpolate movement
         at a rate of speed based on the time elapsed between each waypoint. If you do not provide
         a time element, then Xcode will use a fixed rate of speed.
         
         Waypoints must be sorted by time in ascending order.
         -->
        <time>2014-09-24T14:55:37Z</time>
    </wpt>
    
</gpx>

緯度、経度の調べ方は別の記事「【Swift】MapKitを使用した場所のサジェスト表示、座標情報の取得」で添付したサンプルアプリで調べられます。

現在位置の変更

サンプルアプリをデバッグ実行し、以下の手順を行います。

Debug → Simulate Location → 作成したgpxファイルを選択
Mapアプリでの現在位置(gpxファイルの選択前)
Mapアプリでの現在位置(gpxファイルで新宿駅を選択後)


コードサンプル

今回紹介したgpxファイルが含まれたサンプルの全コードです
※「【Swift】指定した場所の近くでアラームを起動する」のサンプル同様

アプリケーション

今回紹介した位置情報の技術を利用したiOSアプリです。

さいごに

今回のデバッグ方法は実機でも使用できるため、自分のリアルの位置をごまかす方法としても使用できますが、嘘は必ずバレるものです。
悪用はやめましょう(笑)

それではまた!楽しいSwiftライフを!

───-- - - - 

フォロー Me!
↓ ↓
Twitter : @RandR_inc

◆───-- - - - 

ラフアンドレディでの採用はこちら ↓ ↓ ↓

ラフアンドレディでは、みんなのびのびと仕事をしています!エンジニアが長く幸せに活躍できる環境で、仲間と楽しく働いてみませんか?

いいなと思ったら応援しよう!

この記事が参加している募集