卒業論文
Firebase を用いた
位置情報共有システム
提出者
半田勝之
提出年 月日
平成 31 年 1 月 25 日
指導教 員
金子邦彦 教授
Firebase を用いた
位置情報共有システム
情 報 工 学 科 半 田 勝 之研 究 概 要
現 在 ,スマートフォ ンの 位 置 情 報 は ,カーナビゲーショ ンや 地 図 などのアプ リ ケーショ ン ,宅 配 の 現 在 地 表 示 サービス など様 々な目 的 で利 用 されている . 本 研 究 では,スマートフォ ンの位 置 情 報 やマーカー,チャ ット などの情 報 を グ ロ ー バ ル で 共 有 し , コ ミ ュ ニ ケ ー シ ョ ン を 取 る こ と が で き る 位 置 情 報 共 有 シ ス テ ム を 試 作 し た .Firebase と 連 携 し た ア プ リ ケ ー シ ョ ン の 機 能 の 動 作 と , Firebase 内 のデータベースの動 作 を調 べた.目 次
1. ま え が き ... 1 2. Firebase ... 2 3. 位 置 情 報 共 有 シ ス テ ム ... 3 3.1 データベース ... 3 3.2 iOS アプリケーション内 での GPS の取 得 ... 4 3.3 iOS アプリケーション内 での Firebase の利 用 ... 4 3.4 アプリケーションの基 本 機 能 ... 5 ユーザ ... 5 マーカー ... 6 チャット ... 8 4. 評 価 実 験 ... 9 4.1 基 本 機 能 の実 験 概 要 ... 9 4.2 基 本 機 能 の実 験 結 果 ... 11 4.3 大 学 構 内 の探 索 ,調 査 への応 用 (概 要 ) ... 15 4.4 大 学 構 内 の探 索 ,調 査 への応 用 (結 果 ) ... 15 5. む す び ... 17 付 録 ... 19- 1 -
1. ま え が き
現 在 ,スマートフォンの GPS 機 能 は,地 図 アプリケーションや,カーナビア プ リ ケーショ ン ,コミ ュ ニケーショ ンツ ールな ど様 々な 用 途 で 活 躍 し ている. 地 図 アプリケーショ ンは ,GPS に合 わせて地 図 上 に常 に自 分 の位 置 や向 きが 表 示 さ れ る . 目 的 の 建 物 の 位 置 に 加 え て , そ こ に 到 達 す る ま で の 経 路 を 自 分 の 位 置 と 合 わ せ て 知 り た い 場 合 に 便 利 で あ る . ま た , 自 分 の 位 置 情 報 だ けではなく, 地 図 上 で 他 人 と位 置 情 報 を 共 有 し てコミュニケーシ ョ ンを 取 るこ とができる機 能 やアプリケーションも複 数 存 在 している. 位 置 情 報 を 共 有 する アプ リ ケーショ ンや 機 能 を 利 用 する 場 合 , 電 話 番 号 , LINE の ID,Google アカウントなどの個 人 識 別 符 号 を介 して共 有 すること が 考 え ら れ る .そ の 場 合 , 第 三 者 が そ れら の個 人 情 報 と 位 置 情 報 を 結 び つ けるのを 防 ぐた めに , 公 開 す る相 手 を 限 定 する必 要 があ る . 安 全 で は あ るが , 個 人 識 別 符 号 を共 有 したくない場 合 は不 便 である.また ,限 定 された相 手 と の 共 有 で あ る た め , 個 人 が 地 図 上 に 追 加 し た 案 内 マ ー カ ー な ど の 情 報 を , 不 特 定 多 数 と共 有 し たい場 合 に も 向 いていない. 相 手 を 限 定 せず,より多 く の 人 と 地 図 上 で 様 々 な 情 報 を 共 有 で き れ ば , さ ら に 便 利 と な り 社 会 的 意 義 がある. 本 論 文 で は , 個 人 識 別 符 号 を 必 要 と せ ず , 公 開 さ れ た 地 図 上 で 位 置 情 報 や地 図 上 の案 内 マーカーなど の共 有 が行 える,位 置 情 報 共 有 システム に ついて説 明 する.本 論 文 での 位 置 情 報 共 有 システムは,ある特 定 の利 用 者 グループにのみサービスを提 供 するシステムである.個 人 識 別 符 号 や認 証 な どでデータアクセス制 限 を制 御 することは行 わない.このとき,位 置 情 報 共 有 システムを いかに 簡 単 に 立 ち上 げることができるか ,そし て,個 々の利 用 者 グ ループ の要 望 や特 性 を反 映 し たアプリケーショ ンを いか に 簡 単 に 制 作 できる か が 課 題 に な る . そ の 課 題 の 解 決 を 目 指 し て , 位 置 情 報 共 有 シ ス テ ムの 試 作 に取 り組 んだ.このとき,リアルタイムで情 報 を共 有 できるデータベースを構 築 する 必 要 があ る.し か し ,そのよ う な デー タ ベース を 一 か ら 構 築 し よ う とす る と, サーバ の 構 築 も 必 須 とな り ,サーバ の 構 築 後 の 運 用 やアプ リケーショ ンと の連 携 の複 雑 な設 定 などが 負 担 になるという課 題 がある.そこで ,システムを 簡 単 に開 発 することに焦 点 を当 て,データベースに MBaaS である,Google 社 の 提 供 する「Firebase」を利 用 した.Firebase のデータベースが複 数 の 利 用 者 機 器 で簡 単 にリアルタイム共 有 でき,アプリケーションをいかに簡 単 に- 2 - 制 作 できるかの確 認 に取 り組 んだ.
2.
Firebase
位 置 情 報 共 有 システムのデータベースとして MBaaS である Firebase を 利 用 した.MBaaS とは Mobile Backend as a Service の略 であり,モバイ ルアプリケーション開 発 向 けにバックエンドで動 く機 能 を提 供 する クラウドサー ビスの こ とで ある . こ れに よ り , アプ リ ケ ー ショ ンを 開 発 す る際 にサーバ の構 築 を することなく, 通 信 を 利 用 し た 機 能 を 実 装 することができ ると いう 良 さが ある .
Firebase とは Google が提 供 している MBaaS である.Firebase の提 供 する主 なサービスを以 下 に示 す.
(1) Cloud Functions
専 用 サーバーの管 理 や拡 張 を行 うことなく,カスタムのバックエンドコードで アプリを拡 張 する機 能( 3)がある.
(2) 認 証
認 証 の 機 能 で あ る Firebase Auth では , メー ル やパ ス ワー ド ,Google や Facebook などのサードパーティのプロバイダ,既 存 のアカウントシステム を直 接 使 用 するなど、複 数 の方 法 によって認 証 を行 う機 能( 3)がある. (3) ホスティング ウェブアプリ専 用 に作 成 されたツールを使 用 して, 静 的 な Web ホスティン グを行 う機 能( 3)がある. (4) クラウドストレージ 画 像 ,音 声 ,動 画 ,また はその他 のユーザーが生 成 し た コンテンツ を 保 存 できるクラウドストレージの機 能(3 )がある. (5) Realtime Database ホスティ ングされた NoSQL データベースを使 用 して,リアルタイムで ユー ザーと端 末 の間 での同 期 を行 う機 能( 3)がある. 位 置 情 報 共 有 シス テ ムの 試 作 に あた っ て , 位 置 情 報 の ほ か に 名 前 や ID などの文 字 の情 報 を端 末 間 で共 有 させるために Realtime Database を利 用 し た . ま た , 写 真 を 共 有 さ せ る た め に ク ラ ウ ド ス ト レ ー ジ を 利 用 し た . 詳 し く は,3 章 で説 明 する.
- 3 -
3. 位 置 情 報 共 有 シ ス テ ム
位 置 情 報 共 有 システムは,iOS アプリケーションとデータベースから成 る. データベースとアプリケーションの詳 細 をそれぞれ分 けて後 述 する.
3.1 デ ー タ ベ ー ス
Firebase の Realtime Database を利 用 し,JSON 形 式 のリアルタイム データベースを構 築 した.JSON 形 式 のデータベースは,すでに,位 置 情 報 の 共 有 以 外 に も ,さま ざまな 目 的 で利 用 さ れており,利 用 例 は ,Twitter に 投 稿 さ れた テキ スト や 位 置 情 報 な ど の 複 数 の情 報 の 管 理( 1)や , 地 図( 2)な ど がある. データベースの構 築 手 順 は以 下 の通 りである. 1. Google アカウントを作 成 . 2. Firebase にサインイン. 3. 「プロジェクトを追 加 」をクリックでプロジェクトを追 加 . 4. 「データベースを作 成 」をクリックでリアルタイムデータベースを作 成 . 5. テストモードで運 用 を開 始 .
6. 「iOS アプリに Firebase を追 加 」をクリックし,Google API を発 行 す る.アプリのバンドル ID を入 力 し,「GoogleService-Info.plist」ファイ ルをダウンロード.
以 上 は,Web ブラウザで操 作 した.
構 築 したリアルタイムデータベースを iOS アプリのプログラムであるプロジェ ク ト フ ァ イ ル と 結 び つ け る た め に ,Mac 上 でソースコード に Google API と GoogleServie-Info.plist ファイルを設 定 した.
詳 しい手 順 は以 下 の通 りである. 1. Xcode プロジェクトを作 成
2. 「 pod 'Firebase/Core' 」の コマンド を 「タ ーミ ナル」 で実 行 し , Podfile にポッドを追 加 する.
3. 「pod install」でポッドをアプリのプロジェクトにインストールする. 4. プロジェクト内 に GoogleServie-Info.plist を追 加 する.
5. プロジェクト内 の UIApplicationDelegate に import Firebase と FirebaseApp.configure()の2つのプログラムを追 加 する.
- 4 - 図 1 は,Web ブラウザ上 のデータベースの管 理 画 面 であり,データベース の構 造 を示 している.プロジェクト名 を親 とし,そこから 目 的 ごとに複 数 の子 に 派 生 させ, データ を 格 納 し た . 「Chat」はユーザがチャットに投 稿 した内 容 を 格 納 す るノ ード で ある . 「Latest」は最 後 に更 新 したユーザの位 置 情 報 を格 納 するノードである.「GPS」は「Latest」の緯 度 経 度 を格 納 するノードである. 「Marker 」 は ユ ー ザ が 設 置 し た マ ー カ ー の 情 報 を 格 納 す る ノ ー ド で あ る . 「userName」はユーザの ID や名 前 ,コメントなどの情 報 を格 納 するノードで ある.各 ノードのさらに深 い階 層 については,機 能 ごとに後 述 (節 3.5)する. 図 1 データベースの管 理 画 面 3.2 iOS ア プ リ ケ ー シ ョ ン 内 で の GPS の 取 得 ユーザの位 置 情 報 は,iOS 端 末 に搭 載 されている GPS センサーから 5 秒 に 1 回 の 間 隔 で取 得 している.図 2 は ,緯 度 ・経 度 を取 得 し た後 ,変 数 latitude,longitude に代 入 しているコードである. 図 2 端 末 の位 置 情 報 を取 得 するコード 3.3 iOS ア プ リ ケ ー シ ョ ン 内 で の Firebase の 利 用 アプリケーションとサーバの通 信 処 理 の実 装 は,図 3,図 4 のようなコード で行 っている.図 3 は Firebase から情 報 をダウンロードするコードである. pick_json という変 数 にダウンロードした JSON データを代 入 している.図 4
- 5 - は Firebase に情 報 をアップロードするコードである.「lastnode」はデータベ ー ス の パ ス を 示 す.updateChildValues() の中 に アップロー ドす る情 報 であ る,JSON の配 列 を指 定 している.コードの詳 細 は付 録 に示 している. 図 3 データベースからの情 報 をダウンロードするコード 図 4 データベースに情 報 をアップロードするコード 3.4 ア プ リ ケ ー シ ョ ン の 基 本 機 能 位 置 情 報 共 有 システムを iOS アプリケーションとして試 作 した.アプリケー ションで扱 う情 報 は,データベースを介 して他 の端 末 と共 有 される. ユ ー ザ 次 の機 能 を実 現 するにあたって,データベースの「Latest」と「userName」 のノードを用 いている. ・ 自 分 自 身 の位 置 をマーカーと青 い円 で 地 図 上 に表 示 する機 能 . ・ 他 の ユ ー ザ が 最 後 に 更 新 し た 位 置 を マ ー カ ー で 地 図 上 に 表 示 す る 機 能 . ・ マーカーの下 にユーザ名 を表 示 する機 能 . ・ マーカーをタップすると編 集 可 能 な名 前 ・コメントを表 示 する機 能 . 図 5 は「Latest」ノードの構 造 を示 している.ユーザごとにノードを追 加 して おり,その中 に,緯 度 ・経 度 ,タイ ムスタ ンプ などの 情 報 が 格 納 されている.こ こか ら , 各 端 末 が 位 置 情 報 を ダ ウ ン ロ ー ド ・ ア ッ プ ロ ード し , 地 図 上 の ユ ーザ
- 6 - を示 すマーカーに反 映 する. 図 6 は「userName」ノードの構 造 を示 している.ユーザごとにノードを追 加 し ており,その 中 に ,ユーザの名 前 や コメ ントの情 報 が格 納 さ れている .端 末 がこのユーザの名 前 をデータベースからダウンロードし,地 図 上 のユーザの 位 置 を示 すマーカーの下 に表 示 する名 前 に反 映 する. 図 5 Latest の構 造 図 6 userName の構 造 マ ー カ ー 次 の 機 能 を 実 現 す る に あた っ て , デ ータ ベ ー ス に「Marker」ノードを用 い ている.画 像 ファイルは JSON 形 式 に変 換 せずに,Firebase のクラウドスト レージで管 理 している. ・ タップした場 所 にマーカーを設 置 する機 能 . ・ 設 置 し た マーカ ーを タ ップ すると編 集 可 能 な名 前 ・紹 介 文 ・ 写 真 を 表 示 する機 能 . ・ マーカーに追 加 された写 真 を保 存 する機 能 . ・ 削 除 する機 能 .
- 7 - 図 7 は「Marker」ノードの構 造 を示 している.設 置 されたマーカーごとにノ ードを追 加 しており,各 ノードには,マーカーの色 を RGB で表 した「color」や, 掲 載 している画 像 名 を表 す 「image_name」のほかに緯 度 ・経 度 や名 前 ,コ メ ント な ど の 情 報 を 格 納 し て い る . こ こか ら , 各 端 末 が 情 報 を ダ ウ ンロ ー ド ・ ア ップロードし,地 図 上 のマーカーに反 映 する. 図 8 は, Web ブラウザでクラウドストレージにアクセスしている画 面 である. マーカーに掲 載 する画 像 を蓄 積 ・管 理 する. 画 像 ファイル名 が重 複 すると上 書 きされてしまうため,ファイル名 は,マーカーの ID とした.マーカーの ID は マーカーを作 成 するときに自 動 的 に付 与 され,他 と重 複 することはない. 図 7 Marker の構 造
- 8 - 図 8 Web ブラウザで管 理 する Storage の画 面 チ ャ ッ ト 次 の機 能 を実 現 するにあたって,データベースの 「Chat」ノードを使 用 して いる.画 像 ファイルはクラウドストレージで管 理 している. ・ グローバルなチャットルームにテキスト・写 真 を投 稿 する機 能 . ・ チャット内 の投 稿 された写 真 を保 存 する機 能 . 図 9 は「Chat」ノードの構 造 を示 している.チャットに投 稿 されたメッセージ ご と に ノ ー ド を 追 加 し て い る . そ の 中 で , 投 稿 し た 画 像 名 で あ る 「image_URL 」 や メ ッ セ ー ジ の 内 容 で あ る 「 message 」 , 投 稿 し た ユ ー ザ の ID やタイムスタンプなどの情 報 を格 納 している.
- 9 - 図 9 Chat の構 造 これらの機 能 を実 装 したソースコードは付 録 の枠 の部 分 に示 した.
4. 評 価 実 験
4.1 基 本 機 能 の 実 験 概 要 実 験 は 2 台 の iOS 端 末 で行 った.それぞれの端 末 で地 図 アプリを操 作 し,節 3.4 で説 明 した機 能 が動 作 するかを,アプリケーションを実 行 している 端 末 とデータベースを表 示 している Web ブラウザの画 面 を通 して確 認 した. データ ベースを テスト モード で運 用 し ており ,公 開 し てい る状 態 になっ てい る . そ の た め , 実 験 で は , アプ リ ケ ー ショ ン 内 の ユ ーザ 名 や コ メ ン ト , チ ャ ッ ト ・ マーカーのテキ ストや 写 真 にプラ イベートな情 報 は付 与 せず, 個 人 を 特 定 で き るよ う な 情 報 を 位 置 情 報 と 一 緒 に デ ータ ベー ス へア ッ プ ロ ード し な いよ う に 配 慮 した. ・ユーザ ①自 分 自 身 の位 置 をマーカーと青 い円 で地 図 上 に表 示 する機 能 . ②他 のユーザが最 後 に更 新 した位 置 をマーカーで地 図 上 に表 示 する機 能 . ③マーカーの下 にユーザ名 を表 示 する機 能 . ④マーカーをタップすると編 集 可 能 な名 前 ・コメントを表 示 する機 能 .- 10 - ・チャット ⑤グローバルなチャットルームにテキストを投 稿 ・表 示 する機 能 . ⑥グローバルなチャットルームに写 真 を投 稿 ・表 示 する機 能 . ・マーカー ⑦タップした場 所 にマーカーを設 置 する機 能 . ⑧設 置 したマーカーをタップすると編 集 可 能 な名 前 ・紹 介 文 ・ 写 真 を表 示 する機 能 . ⑨マーカーを削 除 する機 能 . 実 験 の手 順 は以 下 の 通 りである.実 験 に使 用 した端 末 を端 末 A,端 末 B とする. (1) ホーム画 面 にある試 作 したアプリケーションのアイコンをタップし,起 動 する. (2) ①から③は自 動 で行 われるため,操 作 せずに確 認 する. (3) 端 末 A と端 末 B を示 すマーカーをタップして表 示 し,テキストを編 集 す ることで④を確 認 する. (4) 画 面 右 端 を 左 に スワ イ プ することで, チャ ット を 開 く.テキ スト 入 力 後 , 投 稿 ボタンを押 し,⑤を確 認 する. (5) 写 真 選 択 ボタンを押 し,端 末 内 の写 真 を選 択 後 ,投 稿 ボタンを押 すこ とで⑥を確 認 する. (6) マーカー作 成 ボタンを押 した後 ,地 図 上 の任 意 の場 所 をタップすること で⑦を確 認 する. (7) 作 成 されたマーカーをタップし,名 前 ・紹 介 文 ・写 真 が表 示 されるか確 認 する. (8) 名 前 ・紹 介 文 のテキストを変 更 した.写 真 選 択 ボタンを押 し,写 真 選 択 後 投 稿 ボタンを押 し,⑧を確 認 する. (9) マーカーをタップした時 に表 示 される削 除 ボタンを押 し,⑨を確 認 する. ま た , デ ー タ ベ ー ス は 各 操 作 の 度 に , ア プ リ ケ ー シ ョ ン の 情 報 が 反 映 さ れ ているか Web ブラウザの画 面 を通 して確 認 する.
- 11 - 4.2 基 本 機 能 の 実 験 結 果 2 つの iOS 端 末 の画 面 を通 して,①から⑨までの機 能 が正 常 に動 作 して いたのを 確 認 した.また, 位 置 情 報 やテキ スト,写 真 などの データがデータベ ースに反 映 されているか web ブラウザ上 で確 認 できた. 図 10 は節 4.1 の手 順 の(3)を行 った時 の 2 端 末 の画 面 である.節 4.1 に 示 した,①②③④の機 能 が正 常 に動 作 していることが確 認 できた. 図 11 は節 4.1 の手 順 の(4)と(5)を行 った時 の 2 端 末 の画 面 である.節 4.1 に示 した,⑤⑥の機 能 が正 常 に動 作 していることが確 認 できた. 図 12 は地 節 4.1 の手 順 の(6)を行 った時 の 2 端 末 の画 面 である.節 4.1 に示 した,⑦の機 能 が正 常 に動 作 していることが確 認 できた. 図 13 は節 4.1 の手 順 の(7)を行 った時 の 2 端 末 の画 面 である. 図 14 は節 4.1 の手 順 の(8)を行 った時 の 2 端 末 の画 面 である.図 13, 図 14 から節 4.1 に示 した,⑧の機 能 が正 常 に動 作 していることが確 認 でき た. 図 15 は節 4.1 の手 順 の(9)を行 った時 の 2 端 末 の画 面 である.節 4.1 に 示 した,⑨の機 能 が正 常 に動 作 していることが確 認 できた.
図 16,17,18 は Firebase の Realtime Database を Web ブラウザ上 で管 理 している画 面 である.各 ノードにアプリケーションの機 能 によってアップ ロードされたデータが反 映 される様 子 が確 認 できた. 図 19,20 はクラウドストレージを Web ブラウザ上 で管 理 している画 面 であ る . ア プ リ ケ ー シ ョ ン の 機 能 に よ っ て ア ッ プ ロ ー ド さ れ た 写 真 が 反 映 さ れ る 様 子 が確 認 できた. 端 末 A の画 面 端 末 B の画 面 図 10 ユーザを示 すマーカーをタップした時 の画 面
- 12 - 端 末 A の画 面 端 末 B の画 面 図 11 チャット機 能 によるテキストと写 真 の投 稿 ・共 有 端 末 A の画 面 端 末 B の画 面 図 12 地 図 をタップして,マーカーを設 置 した時 の画 面 端 末 A の画 面 端 末 B の画 面 端 末 A の画 面 端 末 B の画 面 図 13 設 置 したマーカーをタップして,名 前 ・テキストを表 示 している画 面
- 13 -
端 末 A の画 面 端 末 B の画 面
図 14 名 前 ・テキスト・写 真 が変 更 されたマーカーを表 示 している画 像
端 末 A の画 面 端 末 B の画 面 図 15 マーカーをタップすると表 示 される削 除 ボタンで削 除 した画 面
- 14 -
図 16 Chat に投 稿 されたデータ 図 17 最 新 のユーザ情 報
図 18 Marker 内 のマーカー情 報 が更 新 される様 子
- 15 - 4.3 大 学 構 内 の 探 索 , 調 査 へ の 応 用 ( 概 要 ) 福 山 大 学 構 内 の探 索 ,調 査 を 2 人 で実 施 した.このとき,既 存 の地 図 に マ ー カ ー を 設 置 し ,要 所 の 名 前 ・ 写 真 ・ 紹 介 文 の 情 報 を マ ー カ ー に 掲 載 す る作 業 を行 った.使 用 した機 材 は,iPhone6 と iPhoneX の 2 端 末 である. 1 つずつ端 末 を持 ち,別 々に行 動 し,アプリ ケーションの機 能 を使 用 して地 図 を完 成 させた.目 的 は,実 際 に使 う場 面 で意 図 した 通 りに機 能 するのかを 確 認 することである. 4.4 大 学 構 内 の 探 索 , 調 査 へ の 応 用 ( 結 果 ) 図 21 のように要 所 にマーカーを設 置 し,名 前 ・紹 介 文 ・写 真 を掲 載 する ことが できた .その 情 報 を 他 の端 末 で確 認 することが できた .また ,事 前 に調 査 区 域 を 分 けていな か った が,お互 いの位 置 や,追 加 し た マーカ ーがリアル タ イ ム で 把 握 で き た た め , 探 索 ・ 調 査 に 便 利 だ っ た . こ の よ う に し て , 実 際 に 地 図 を 製 作 する際 に も 意 図 し た 通 りに機 能 し ,問 題 な く地 図 を 製 作 すること ができた.
- 16 -
端 末 A 端 末 A
端 末 B 端 末 B 図 21 大 学 構 内 に追 加 した案 内 マーカーの画 像
- 17 -
5. む す び
Firebase を利 用 した データベースの構 築 が容 易 であり,特 に課 題 なく iOS アプ リと連 携 し , 位 置 情 報 共 有 システムである,グロ ーバ ルな 地 図 アプ リ ケー ショ ンの 製 作 ,機 能 の実 装 が できた . チャ ットや位 置 情 報 の 共 有 によ るコミ ュ ニケーションと案 内 マーカーを使 ったグローバルな地 図 の製 作 が機 能 的 には 行 える. 今 後 の 課 題 は , 通 信 量 を 減 ら す た め に ,チ ャ ッ ト や マ ー カ ー な ど で 扱 う 画 像 ファイルのサイズを小 さくすることである.画 像 ファイルをアップロードする際 に,圧 縮 することで実 現 できると思 われる. また ,セキ ュリティ 面 は研 究 し ていな いので,データ ベースが安 全 とは言 い 切 れない.位 置 情 報 共 有 システムが 製 作 できたとはいえ,セキュリティを考 慮 すると世 界 に 向 けてアプリケーションをリリースするレベルには達 していないの で今 後 の課 題 としたい.謝 辞
本 研 究 の実 施 に あた り,卒 業 論 文 指 導 教 員 の 情 報 工 学 科 ・金 子 邦 彦 教 授 にご 指 導 を 賜 りまし た.金 子 邦 彦 研 究 室 の飯 塚 氏 ,井 上 氏 ,田 坂 氏 には, 実 験 の協 力 , 研 究 室 や実 験 の場 での議 論 等 を 通 し て, 知 識 や 示 唆 の提 供 を いた だきまし た .こ こに 感 謝 の 意 を 表 し ます. 本 研 究 は 科 研 費 ( 15H05708 ) の助 成 を受 けたものである .参 考 文 献
(1) 影 澤 秀 明 ,廣 井 慧 ,奥 矢 淳 ,香 取 哲 志 ,加 藤 朗 ,砂 原 秀 樹 :「Twitter を 用 いた センシングシステムの提 案 と考 察 」, マルチメディ ア,分 散 ,協 調 と モバイル(DICOMO2014)シンポジウム 平 成 26 年 7 月 .(2) Mingzhao Li,Zhifeng Bao,Farhana Choudhury,Timos Sellis: “Supporting Large-scale Geographical Visualization in a Multi-granularity Way” WSDM '18 Proceedings of the Eleventh ACM International Conference on Web Search and Data Mining, pp.767-770, 2018.
- 18 - (3) Google Firebase ホームページ,
https://firebase.google.com/?hl=ja (4) Apple Developer Documentation
https://developer.apple.com/documentation
(5) 浮 田 弥 ,山 本 大 介 ,高 橋 直 久 :「逆 進 検 知 機 能 を有 する案 内 粒 度 変 更 可 能 な音 声 経 路 案 内 システム」,DEIM Forum,2017 I3-4
- 19 -
付 録
位 置 情 報 共 有 システムの,地 図 アプリケーションのプログラムは 1. AppDelegate.swift 2. ViewController.swift 3. SideMenu.swift の 3 つのファイルに分 かれている. 付 録 では,「2.」を載 せる. 1. 節 4.1 の機 能 ①②③の処 理 を実 装 したソースコード- 23 -
- 24 -
- 26 -
4. 節 4.1 の機 能 ⑦の処 理 を実 装 したソースコード