2025/11/19更新
茨大(非公式)ユーザーの皆様へ
本アプリをご利用いただき、誠にありがとうございます。
解決済みのiOS/iPadOS 26.1へアップデートすると本アプリが起動しなくなる問題について、詳細をご説明します。
2025年11月4日 AppleよりiOS/iPadOS 26.1がリリース
2025年11月5日 開発者がアップデートを行い、茨大(非公式)アプリを起動しようとしたところ、起動時にクラッシュすることが判明し、直ちにアプリ内通知や公式Xにて報告。原因の調査を開始し、可能性の高い問題を特定したが、解決策が判明せず。
2025年11月6日 Appleのコードサポートへ問い合わせを行い、サポートを要求。
2025年11月7日 サポートの連絡待ち
2025年11月12日 サポートから返信。Appleの対応を待つことに決定。
2025年11月18日 サポートから提案により、大部分のデータを保持したままアプリを起動させることに成功。
2025年11月19日 検証が完了したため、修正版(Ver. 1.1)を配布開始
iOS/iPadOS 26.0.1以前で茨大(非公式)アプリをインストールし、ユーザーデータや時間割、ToDoなどを作成。
そのままiOS/iPadOS 26.1へアップデートすると、起動時にクラッシュしてアプリが利用できなくなる。
その状態でアプリを一旦削除した後、再インストールすると起動するようになるが、iCloudに保存されているデータが同期されず、全てやり直しとなる。
(本来はアプリを削除しても、iCloudデータを削除しない限りデータが復元されます)
本アプリではAppleから提供されているデータ永続化フレームワーク「SwiftData」を利用し、時間割データ/ToDoデータ/その他データなどを保存して、iCloudによる複数デバイスの同期を実現しています。今回はそのSwiftDataの基盤となるストレージメカニズムであるCoreDataが、iOS/iPadOS 26.1へアップデートに伴って仕様変更されたことによってデータが読み込めなくなり、アプリが起動しなくなります。(データを読み込めないと何もできないため、意図的にアプリを終了するようにしていましたが、修正版ではクラッシュさせるのではなく、エラー画面が表示されるように変更しました。)
具体的には、iOS 26.1より前では、配列型(Array)の属性を処理する際、SwiftDataは配列型を「バイナリデータ(Binary Data)」に変換していましたが、 iOS 26.1では、代わりにその型を「Transformable(変換可能属性)」に変換するようになりました。この変更が、メモリ内のモデル(Transformable)と、永続化されたデータストア内のモデル(バイナリデータ)との間に不一致を引き起こし、マイグレーションエラー(移行エラー)を発生させていました。
Appleのコードサポートチームより的確な解決策をいただき、ユーザーのデータを保持したまま本問題を解決することができました。
iOS/iPadOSを26.1へアップデートする前にアプリの最新バージョン(Ver. 1.1以降)へのアップデートをお勧めします。また、iOS/iPadOSを26.1へアップデートした後、アプリが起動しない状態に陥ったとしても、Ver. 1.1以降にアップデートすることでデータを保持したまま起動できるようになります。(アプリを削除していない場合に限ります)
このたびは多大なるご不便とご迷惑をおかけしてしまい、誠に申し訳ございません。私自身も、1年半かけて開発してきたアプリがリリースから2週間も経たないうちに、致命的で絶対に起こしてはならない問題を起こしてしまい、とても悔しい気持ちでいっぱいです。今回の問題はApple側の仕様変更によるものとはいえ、私の事前の確認不足でもありますので、今後はこのようなことが起こらないように対策を講じていきます。今後とも本アプリをよろしくお願いいたします。