アプリにサードパーティのコードはありません
広告ネットワーク、分析ツール、クラッシュレポーター、既製のUIライブラリ。どれも入っていません。それが何を意味し、何と引き換えなのか。
約4分で読めます
多くのiOSアプリは、何十ものサードパーティ製パッケージを抱えています。分析ツール、広告ネットワーク、クラッシュレポーター、既製のUIライブラリなどです。
Soluklanには、そのどれも入っていません。
入っていないもの
広告ネットワークはありません。アプリに広告は表示されず、広告IDも読み取りません。
サードパーティの分析ツールはありません。どの画面を開いたか、どのボタンを押したか、アプリにどれだけいたかを他社に知らせる既製のパッケージは入っていません。そうした企業とデータを共有することもありません。
その代わりに独自のカウンターがあり、初期設定ではオフです。設定で匿名の利用状況を共有をオンにすると、アプリを閉じるたびに匿名のまとめが1つだけ送られます。開いた画面、そこにいた時間、使った機能です。個人を特定する情報、入力した内容、位置情報、健康に関する回答は一切送られません。オフにすると、たまっていた分も削除されます。くわしくはプライバシーポリシーをご覧ください。
クラッシュレポーターはありません。アプリがクラッシュしても、私たちに自動でレポートが届くことはありません。届くのは、Apple自身の仕組みを通じて、端末の設定で許可した範囲の情報だけです。
既製のライブラリはありません。画面、音声処理、図、アニメーション。すべてAppleのフレームワークで書かれています。
使っているもの
アプリがネットワークを使うのは2か所だけで、どちらもAppleのインフラです。
iCloud。セッション履歴は、自分のアカウントの中で同期されます。この領域には、開発者である私たちもアクセスできません。
匿名での共有。オンにした場合は匿名のセッションと利用状況のまとめが、別に許可した場合は1日に最大10回のセッションの音声サンプルが届きます。これらはAppleのCloudKitのインフラに保存されます。
これ以外に、アプリがサーバーに接続することはありません。通知でさえ端末の中でスケジュールされます。通知を送るためのサーバーは持っていません。
何と引き換えか
この選択には代償があります。隠さずに書きます。
わかることが少ない。どの機能が使われているか、どこでつまずいているかは、匿名での共有をオンにした人のまとめからしかわかりません。オンにしていない人については何もわかりません。
不具合を見つけるのが遅い。クラッシュが起きても、誰かが知らせてくれるか、Appleのレポートで見つけない限り気づけません。
手間がかかる。既製のライブラリなら1日でできることを、数日かけて書いています。
それでもこうしている理由
このアプリの仕事は、呼吸を聞くことです。呼吸の音はマイクを通るデータです。そのデータを扱うアプリにサードパーティのパッケージを入れることは、そのパッケージが何をしているかを信用することになります。
プライバシーの説明に「広告なし、トラッキングなし、サードパーティの分析ツールなし」と書くなら、それがコードの上でも本当でなければなりません。書くのは簡単です。その言葉を守り続けるには、パッケージを入れないことです。
自分で確かめるには
アプリがどんなデータを集めているかは、App Storeのプライバシーラベルに書かれています。さらに、iOSの設定 → プライバシーとセキュリティ → Appプライバシーレポートをオンにすると、どのアプリがどのドメインに接続したかを自分の端末で確認できます。
Google Playでは、同じ情報がアプリのページのデータセーフティ欄に載っています。