Kigenで発生するデータ消失問題についての調査結果を報告します。
原因として考えられるのは、SDK3.2で新規プロジェクトから構築した際、xcdatamodeldという拡張子のファイルが出来ていたため、その中のxcdatamodelファイルにこれまでのプロジェクトのxcdatamodelファイルからエンティティをコピーした事のようです。コピーで作られたデータモデルが内部においてはこれまでのデータモデルと同名のエンティティであってもこれまでのものとは別物として扱われてしまうようです。
コピーペーストではなく元のデータモデルファイルを流用したTiny3Dではデータが消えたという報告が無い事から、このような現象が起っている可能性が高いと思われます。
この推測が正しい場合、iPad対応にする前にCore Data化していたバージョン2.0から2.0.2を2.1以上にバージョンアップすると、必ずデータ消失が起ってしまうことになります。
ここでさらにデータモデルファイルを以前の物に戻してしまうと、2.1以上で作り直したデータがまたも失われてしまうことになります。このため同じユーザーが何回もデータ消失を経験しないようにするには、今後データモデルファイルを同名のままで変更しないように気をつけるしかなさそうです。
今回のバージョンよりiPhone上でのカテゴリ名およびアイテム名の変更方法が変わります。
まずは以下の画像を見てください。カテゴリリストを編集モードにしたところです。
これまでと異なり、名前をタップすることで直接この画面上で編集を行います。
ここで新カテゴリ名をタップすると、キーボードが表示され編集を行えます。
これまでのように名前の編集のためにいちいち別画面が開かれることが無くなる為、ちょっとだけ便利になると思います。期限や個数は今まで通りの入力方法です。
なお、iPad上では横向き表示でキーボードを表示しつつ言語切替を行うとリストの一部が隠れてしまうなどの問題が起きていたため、これも合わせて修正しています。
Kigen バージョン2.1で不具合が発見されました。不具合は以下の通りです。
・旧バージョン(バージョン1.7.1以前)からのアップデートで、データがCore Data形式のデータベースに取り込まれないことがある。
ユーザーの皆様にはご迷惑をかけてしまい申し訳ありませんでした。
- 期限の入力画面で個数を0にして保存すると、アプリケーションが終了してしまう。
なおこのバグはバージョン2.0および2.0.1で発生し、それ以前のバージョンでは発生しません。