iOSでアプリケーションのディレクトリ名が変わってしまう
フルパス名をキーに利用していたら・・・
ダウンロードした画像をキャッシュするクラスの設計と実装について - 24/7 twenty-four seven のエッセンスを参考にしながら、画像をキャッシュするアプリを作っていてはまったのでメモ。
画像のフルパス名のハッシュ値をキーに利用していましたが、OTAでWeb上からダウンロードして上書きインストールするとアプリケーションのディレクトリ名が変わってしまうようです。
フルパスをキーに利用していたので、キャッシュから画像が取得できずになんでだろうとはまっていました。
シミュレータや、Xcodeからデバッグでインストールする際は変わらないので原因に気づかずさらにはまってしまいました。
アプリケーションのディレクトリ名
アプリケーションのディレクトリ名といってるのは↓こんな感じにハイフンで連結されたディレクトリ名のこと。
- 初回インストール時のディレクトリ名
/var/mobile/Applications/C29B6C95-896F-4ADF-A93D-B2E9216895A8/Documents/Images/7F006CA36C8D37A44B048B3F796E7C54.png
- 2回目にOTAで上書きインストールしたあとのディレクトリ名
/var/mobile/Applications/AE755524-942E-4D41-8478-6246A708120F/Documents/Images/F47D1301025CAEB65124324C166318EA.png
別に削除してからインストールしてる訳でもないので、不思議でした。iTunes経由でインストールしたときとかはどうなるんだろう。気になる。