Kristopher Baker iOSを土台に · プロダクトシステム · AI支援ワークフロー
← KiFinder

wip · 2026.07.01 · 約3分

KiFinderを世に出す準備

KiFinderは、自分のMacでひとつの用事をこなすためのツールとして始まりました。ここ最近やっているのは、それを他の人がインストールできるものに変える、地味な作業です。つまりApp Store。そしてApp Storeは、App Sandboxを意味します。サンドボックス化されたアプリは~/Picturesをただ読むことはできないので、ファイルまわりの話を丸ごと組み直す必要がありました。いまのKiFinderは、必要なものだけをきっちり要求します。スキャン対象に指定したフォルダ・zip・ファイルへの読み書き、モデルを取得するためだけのネットワーク、そして書き出すときだけのPhotosライブラリ。ライブラリは既定でアプリ自身のコンテナに置かれ、カスタムのフォルダを選んだ場合は、次の起動でサンドボックスが見失う素のパスではなく、セキュリティスコープ付きブックマークとして覚えます。

残りは、世に出すための事務手続きです。App Storeのカテゴリ、非適用の暗号を使っていないという申告(通信はHTTPSだけ)、デバッグビルドと配布用アーカイブがそれぞれ正しい署名を選ぶための設定、そしてテスト用のフックがリリースビルドに漏れていないかの確認。最後のは、聞こえ以上に大事でした。アプリはUIテスト用にKION_*という一群の起動変数を尊重していて、そのうちの一つは、ダウンロードしたモデルが本物かどうかのチェックを迂回できたのです。リリースビルドはいまそれらをすべて取り除くので、出荷されたアプリは自分の信頼できる既定値だけを見ます。

本腰を入れる中で、小さなことも二つ付いてきました。エンロールの案内文が、子どもを追加する前提になっていました(「赤ちゃん、幼児、そして最近の写真を入れて、成長しても認識できるように」)。私の使い方はまさにそれですが、アプリ自体はそうではないので、いまは年齢に中立な文言にしてあります。KiFinderは誰でも見つけるからです。そして日本語ローカライズを仕上げました。48文字列すべて。そのうえで、翻訳をSparra経由でCodexにレビューさせました。私の「描いた顔」が、手動で指定した領域ではなくイラストの顔に読めることなどを、指摘してくれました。どれもアプリづくりの楽しい部分ではありません。でも、他の誰かが使えるようになるかどうかを決めるのは、この部分なのです。