プライバシーポリシー
iOS アプリ「ここだけ」(以下「本アプリ」)における個人情報および位置情報の取り扱いについて定めます。
1. 運営者
本ポリシーの対象は、iOS アプリ「ここだけ」(Bundle ID: jp.em0omg.kokodake)です。
本アプリは YOSHIKI KOKUBO(個人)が運営しています。本ポリシーに関するお問い合わせは em0818.omg@gmail.com までご連絡ください。
2. 基本方針
本アプリは、利用開始時に氏名・メールアドレス・電話番号・生年月日などの登録を求めません。投稿は匿名で、表示名やプロフィールの機能もありません。投稿本文や写真に個人情報を含めないでください。メールでお問い合わせいただいた場合は、送信元のメールアドレスとお問い合わせ内容を対応のために利用します。
広告 SDK・トラッキング SDK は組み込んでいません。利用者の行動を他社のサービスや他のアプリをまたいで追跡することはありません。アプリの改善のため、利用状況の計測(Google Analytics for Firebase)を使います。内容は 3.7 と 5.1 に記載します。
3. 取得する情報
3.1 投稿に関する情報(サーバに保存します)
メッセージを投稿したとき、次の情報をサーバ(Google Firebase の Cloud Firestore、日本リージョン asia-northeast1)に保存します。
| 本文 | 入力されたテキスト(300 字まで) |
|---|---|
| 写真 | 添付した画像(1 枚まで、任意) |
| 投稿位置 | 投稿した地点の緯度・経度。地図上のどこにメッセージがあるかを示すために必要です |
| 場所の名称 | 投稿位置から得た町名などの大まかな地名 |
| 投稿日時 | 投稿した日時 |
| 匿名 ID | Firebase の匿名認証が端末ごとに発行するランダムな識別子。投稿と結び付けて保存します |
投稿位置は、他の利用者の地図に、その人の現在地からの距離に関係なく点(広い範囲では件数のまとまり)として表示されます。本文・写真・投稿日時は、投稿位置から 500m 以内にいる利用者にだけ表示されます(投稿者本人を除きます)。
利用者の匿名 ID に氏名やメールアドレスの登録情報を結び付ける仕組みはありません。この ID は、自分の投稿の判定、規約同意、ブロック・通報、投稿回数の制限、違反時の利用停止に使います。連投防止のため、短時間の投稿日時と本文から作った照合用の値も保持します。
自分の投稿は、現在地に関係なく「自分の投稿」の画面で見返せます。この画面では、自分の投稿の本文・写真・投稿位置・投稿日時・地名(町名・市区町村・都道府県)・国名を端末に返します。他の利用者の投稿は含みません。国名は投稿位置の座標からサーバの中で判定し、この判定のために座標を外部のサービスへ送ることはありません。
3.2 現在地と地図の表示範囲(サーバに保存しません)
地図を表示するあいだ、端末の現在地(緯度・経度)と、地図に表示している範囲(範囲の四隅の緯度・経度)をサーバへ送ります。これは次の 3 つのために必要です。
- どのメッセージが 500m 以内にあるかをサーバ側で判定するため
- 500m 以内のメッセージと、近く(3km まで)の枠の外の点の位置と件数を返すため
- 地図に表示している範囲にある枠の外の投稿の位置を、現在地からの距離に関係なく返すため(広い範囲では、近くの投稿をまとめた件数と、そのまとまりの位置だけを返します)
この現在地と表示範囲は判定と応答のためだけに使い、サーバに保存しません。移動の履歴や、地図で見た範囲の履歴を記録することもありません。また、サーバのログには緯度・経度(地図の表示範囲の四隅を含む)・メッセージ本文・写真のパス・写真のダウンロード URL を出力しない設計にしています。
位置情報は本アプリを使用しているあいだのみ取得します(iOS の「Appの使用中のみ許可」)。バックグラウンドでの常時取得は行いません。
3.3 写真と EXIF
写真は端末の中で EXIF(撮影日時・機種・GPS 座標などの付加情報)を完全に除去して再エンコードしてから、Google Firebase の Cloud Storage(米国リージョン us-central1)へアップロードします。撮影場所の GPS 情報がサーバに送られることはありません。
3.4 通報の記録
メッセージを通報したとき、通報した人の匿名 ID・対象のメッセージ・通報日時を保存します。重複した通報を数えないため、および不正な大量通報を防ぐためです。1 人あたり 24 時間で 20 件までという上限があります。
3.5 ブロック(投稿者の非表示)の記録
「この投稿者を非表示」を選んだとき、ブロックした側の匿名 ID に紐づけて、ブロックされた投稿者の匿名 IDを保存します。以後、その投稿者のメッセージは表示されません。この記録は本人にしか使われず、ブロックされた側に通知されることはありません。
現在のバージョンには、アプリ内でブロックを解除する機能がありません。解除をご希望の場合は em0818.omg@gmail.com までご連絡ください。
3.6 端末内にのみ保存するもの
次の情報は端末の中(iOS の UserDefaults)にだけ保存され、サーバには送られません。アプリを削除すると消えます。
- 「非表示」にしたメッセージの ID
- 地図タイルの設定(スタイル定義)のキャッシュ
- 位置情報の許可を一度でも尋ねたかどうかのフラグ
3.7 利用状況の計測
アプリの改善のため、Google Analytics for Firebase で次の利用状況を記録します。今の版の規約とプライバシーポリシーに同意したあとにだけ記録を始めます。
- 起動、表示した画面の種類、操作の種類(投稿した・メッセージを開いた・メッセージの場所をシェアした・枠の外の点を選んだ・枠の中にメッセージが無い表示になった・位置情報の許可に答えた・規約に同意した)と、その日時
- 写真つきかどうか、投稿がすぐ公開されたか確認に回ったか、などの区分
- Google Analytics がアプリのインストールごとに発行するランダムな識別子(App Instance ID)
- 端末の機種・OS のバージョン・言語、通信元の IP アドレスから推定されるおおよその地域(国・地域レベル)
メッセージ本文・写真・投稿位置・現在地の緯度経度・距離・匿名 ID・メッセージの ID は計測に送りません。計測の識別子は匿名 ID と結び付けず、広告識別子(IDFA)や広告のパーソナライズにも使いません。
4. 利用目的
- いまいる場所から 500m 以内のメッセージを表示するため
- メッセージを地図上の正しい場所に表示するため
- 自分の投稿を現在地に関係なく見返せるようにするため
- 自分の投稿を削除できるようにするため
- 通報・ブロックを処理し、不適切な投稿に対応するため
- 不正利用(大量投稿・大量通報など)を防ぐため
- 利用状況を集計し、アプリを改善するため(3.7 の情報)
取得した情報を、上記の目的以外に使うことはありません。利用者の情報を第三者に販売・提供することもありません。ただし、本アプリの提供に必要な以下の委託先サービスの利用と、法令に基づく開示請求があった場合を除きます。
5. 利用する第三者サービス
5.1 Google Firebase
本アプリはバックエンドに Google Firebase を利用しています。使用しているのは Authentication(匿名認証)・Cloud Functions・Cloud Firestore・Cloud Storage・App Check・Google Analytics for Firebase です。投稿・通報・ブロックの各データは Google のサーバに保存されます。App Check は、リクエストが正規のアプリから送られたものであることを確認する仕組みで、個人情報の取得には使いません。Google Analytics for Firebase は 3.7 の利用状況を Google のサーバに送ります。Google による情報の取り扱いは Google のプライバシーポリシーをご覧ください。
5.2 OpenFreeMap(地図タイル)
地図の描画には OpenFreeMap の地図タイルを使用しています。地図を表示する際に端末から OpenFreeMap のタイルサーバへ直接リクエストが送られるため、端末の IP アドレスと、表示している地図タイルの範囲がタイルサーバに送られます。本アプリはこの通信に匿名 ID や投稿内容を含めません。
5.3 国土地理院 逆ジオコーダ
投稿位置や現在地の町名を表示するため、本アプリのサーバから国土地理院の逆ジオコーディング API へ座標を送ります。端末から直接送信されることはなく、本文・写真・匿名 ID を送ることもありません。
5.4 Google Gemini(写真の安全確認)
写真投稿機能を提供する場合、公開前の安全確認のため、位置情報などのメタデータを除去した写真をサーバから Google Gemini API に送信します。投稿本文・投稿位置・匿名 ID はこの検査へ送信しません。判定が不確かな場合は公開せず、運営者が確認します。本文はAIに送信せず、サーバの禁止表現ルールで確認します。
5.5 Slack(運営への通知)
運営への通報通知には Slack を利用します。送信するのは案件番号、確認の種類、対応期限、運営画面へのリンクです。投稿本文・写真・投稿位置・匿名 ID は Slack に送信しません。
6. 保存場所と保持期間
- 投稿(本文・写真・投稿位置・投稿日時・匿名 ID): 投稿者本人が削除するか、運営が削除・非表示にするまで保存します。
- 通報・確認案件と操作の記録: 対応完了から90日を目安に、日次の清掃で削除します。未解決の案件や送信失敗中の通知は、対応や再送に必要な間保持します。削除済み投稿の内容を含まない管理記録も90日を目安に削除します。
- ブロック・規約同意・利用停止の記録: 利用者の表示設定、安全な運営と再発防止に必要な間保持します。
- 公開前の投稿受付: 写真の未使用受付は15分で期限切れとなり、未公開の確認処理は48時間で期限切れになります。公開・取消・拒否・失敗が確定した受付の本文・投稿位置を削除し、一時写真を清掃します。清掃後の受付情報は7日を目安に日次で削除します。写真実体の清掃は情報の保持期限と別に行います。
- 利用状況の計測(3.7): Google Analytics のデータ保持期間の設定(2 か月)に従って削除されます。集計済みの統計はこの限りではありません。
- 現在地と地図の表示範囲: 保存しません。
データの保存場所は、Firestore が日本(asia-northeast1)、写真を保存する Cloud Storage が米国(us-central1)です。
7. 安全管理
- 500m 以内かどうかの判定はサーバ側で行い、範囲外のメッセージの本文・写真・日時は端末に送りません(自分の投稿を除きます)。範囲外については、位置(広い範囲では、まとめた件数とまとまりの位置)だけを送ります。
- 端末とサーバの通信はすべて暗号化(HTTPS / TLS)しています。
- サーバのログに、緯度・経度(地図の表示範囲の四隅を含む)・メッセージ本文・写真のパス・写真のダウンロード URL を出力しません。
- 写真は EXIF を除去してからアップロードします。
8. 利用者の権利
- 削除: 自分の投稿は、投稿を開いて「…」→「削除」でいつでも削除できます。写真も同時に削除されます。
- アプリを削除した場合: 端末の認証情報が失われると、それまでの投稿を自分で削除できなくなる場合があります。認証情報が再インストール後も残る場合があるため、アプリの削除だけで投稿やサーバの記録が消えるとは限りません。削除をご希望の場合は下記の連絡先までご依頼ください。
- お問い合わせ: 投稿の削除依頼・ブロックの解除依頼・その他ご要望は em0818.omg@gmail.com までご連絡ください。
匿名で運営しているため、ご依頼が本人からのものかを確認できない場合があります。投稿の削除をご依頼の際は、対象のメッセージが特定できる情報(本文の一部・投稿した場所・おおよその日時など)をお知らせください。
9. 利用年齢と規約への同意
本アプリは18歳以上の方が利用できます。18歳未満の方は利用できません。利用開始時に匿名IDに紐付けて、同意した規約の版、同意日時、18歳以上であるという申告の日時を保存します。生年月日や本人確認書類は収集しません。利用停止状態も安全な運営のために管理します。18歳未満の方から意図せず情報を取得していたことが判明した場合は、速やかに削除します。
10. 本ポリシーの変更
本ポリシーを変更する場合は、このページに変更後の内容を掲載します。重要な変更を行う場合は、あわせてアプリ内でお知らせします。
11. お問い合わせ
本ポリシーおよび個人情報の取り扱いに関するお問い合わせは、em0818.omg@gmail.com までお願いします。通常 2〜3 営業日以内に返信します。