Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
iOSアプリで測る!名古屋駅までの 方向と距離
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Ryu-nakayama
April 26, 2025
Programming
0
280
iOSアプリで測る!名古屋駅までの 方向と距離
Nagoya.swift #1の登壇資料です
Ryu-nakayama
April 26, 2025
Tweet
Share
More Decks by Ryu-nakayama
See All by Ryu-nakayama
日本だけで解禁されているアプリ起動の方法
ryunakayama
0
380
iOSアプリでフロントエンドと仲良くする
ryunakayama
0
130
「ジェン文字」使ってますか?
ryunakayama
0
50
Health Kit × Foundation Models でAIコーチを作ってみた
ryunakayama
0
330
iOSの画面の状態のアレコレを調査してみた
ryunakayama
0
69
作文ツール(Writing Tools)をアプリから制御する
ryunakayama
0
47
「ジェン文字」をアプリ内で使ってみよう
ryunakayama
0
170
SwiftDataと連携したWidgetを作ってみた
ryunakayama
1
180
Swift Macroでメソッドの実行時間を計測できるようにしてみた
ryunakayama
1
220
Other Decks in Programming
See All in Programming
CS教育のDX AIによる育成の効率化
niftycorp
PRO
0
140
Codexに役割を持たせる 他のAIエージェントと組み合わせる実務Tips
o8n
4
1.4k
社内規程RAGの精度を73.3% → 100%に改善した話
oharu121
13
8.2k
Angular-Apps smarter machen mit Gen AI: Lokal und offlinefähig - Hands-on Workshop!
christianliebel
PRO
0
120
コーディングルールの鮮度を保ちたい / keep-fresh-go-internal-conventions
handlename
0
210
20260315 AWSなんもわからん🥲
chiilog
2
160
GC言語のWasm化とComponent Modelサポートの実践と課題 - Scalaの場合
tanishiking
0
120
SourceGeneratorのマーカー属性問題について
htkym
0
200
脱 雰囲気実装!AgentCoreを良い感じにWEBアプリケーションに組み込むために
takuyay0ne
3
280
AI駆動開発の本音 〜Claude Code並列開発で見えたエンジニアの新しい役割〜
hisuzuya
4
520
RAGでハマりがちな"Excelの罠"を、データの構造化で突破する
harumiweb
9
2.9k
今からFlash開発できるわけないじゃん、ムリムリ! (※ムリじゃなかった!?)
arkw
0
110
Featured
See All Featured
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
680
sira's awesome portfolio website redesign presentation
elsirapls
0
190
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Producing Creativity
orderedlist
PRO
348
40k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
The Cult of Friendly URLs
andyhume
79
6.8k
Exploring anti-patterns in Rails
aemeredith
2
290
Technical Leadership for Architectural Decision Making
baasie
3
290
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
310
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
First, design no harm
axbom
PRO
2
1.1k
A Modern Web Designer's Workflow
chriscoyier
698
190k
Transcript
iOSアプリで測る!名古屋駅までの 方向と距離 コミュニケーションプラットフォームディビジョン プロダクトユニット iOSアプリ開発グループ 中山 龍 2025年04月26日 Nagoya.swift #1
自己紹介 中山 龍 (なかやま りゅう) • 株式会社kubell ◦ 新卒3年目のiOSエンジニア(22) ◦
「Chatwork」アプリの開発を担当 • 愛知県在住 • ひとこと ◦ @ryu_develop せっかくのNagoya.swiftということで 位置情報ネタを選んだけど、他の方と 少しネタ被りしてるかも?
今日、この会場に来るまでに名古屋駅を 使った方いらっしゃいますか?
名古屋駅が 分かりますか? • 何km先にあるか • どの方向にあるか
名古屋駅が 分かりますか? • 何km先にあるか • どの方向にあるか これをiOSアプリで測ってみましょう
01 | 距離を測る
距離を測る 現在地から目的地の距離を測る ↓ 二点の座標がわかると距離を測れそう ↓ 現在地と目的地の座標がわかるようにしてみましょう! 7
現在地の座標を取得する
現在地の座標を得るには 端末の現在地の座標を取得する方法 Core Locationを使う 9
現在地の座標を得るには(1) 1. Core Locationをimportする 2. CLLocationManagerのインスタンスを作成 3. CLLocationManagerDelegateに準拠した型を作成する • CLLocationManagerインスタンスのdelegateに代入する
10
現在地の座標を得るには(2) 4. 位置情報取得の許諾を得るための処理を記述する 5. 位置情報の更新を開始する 11
現在地の座標を得るには(3) 6. didUpdateLocationsのメソッド内で現在の緯度・経度が取得できる • 新しい位置情報が利用できる時に呼ばれる 12
現在地の座標を得るには(3) 6. didUpdateLocationsのメソッド内で現在の緯度・経度が取得できる • 新しい位置情報が利用できる時に呼ばれる 13 これで現在地が取得できた
目的地の座標を取得する
目的地の座標を得るには 今回は目的地の指定に MapKitを使う 15
目的地の座標を得るには(1) 1. MapKitをimportする 2. MKMapViewDelegateに準拠した型を作成する • MKMapViewのdelegateに代入する 16
目的地の座標を得るには(2) 3. didSelectのメソッド内で選択された緯度・経度が取得できる • MKMapViewで地点がタップされた時に呼ばれる 17
目的地の座標を得るには(2) 3. didSelectのメソッド内で選択された緯度・経度が取得できる • MKMapViewで地点がタップされた時に呼ばれる 18 これで目的地が取得できた
02 | 方向を測る
端末の方向を得るには 端末の向いている方向を取得する方法 Core Locationを使う 20
端末の方向を得るには 1. 「現在地の座標を得るには」の1〜5の手順で、CoreLocationで位置情報を取得 できるようにする 2. didUpdateHeadingのメソッド内で端末の向き(北からの角度)が取得できる • 新しい端末の向きの情報を受けたときに呼ばれる 21
端末の方向を得るには 1. 「現在地の座標を得るには」の1〜5の手順で、CoreLocationで位置情報を取得 できるようにする 2. didUpdateHeadingのメソッド内で端末の向き(北からの角度)が取得できる • 新しい端末の向きの情報を受けたときに呼ばれる 22 これで端末の方向が取得できた
03 | 名古屋駅はどっちに何km?
名古屋駅はどっちに何km? 現在地の座標と目的地の座標がわかったので、 • 現在地→目的地の距離(ここから名古屋駅までの距離) • 現在地から目的地への方角 が計算できます! そして、端末の向いている方向(方角)もわかるので、 • 目的地のある方向
もわかります! 24
そして、この会場から名古屋駅へは... [実演] 実際にアプリで測る 25 000
まとめ
まとめ • Core LocationとMapKitを使用することで、現在地から名古屋駅までの距離と 方向を知ることができた! • Core Locationを使用すると、端末の「位置」「向き」などが取得できる ◦ 情報の取得には許可が必要
• MapKitを使用すると、選択した任意の地点の「位置」などが取得できる • 位置情報など、モバイルアプリならではの機能を使い、よりよいサービス・体 験を作り出すことができそう!! 27
働くをもっと楽しく、創造的に 28