saruboの書き溜め

いいこと書けないですけどこんな記事でよければ見ていってね

必要なデータの取得でプロセカがクラッシュする (落ちる) ときの対処

要点

  1. スマートフォンシャットダウンさせる
  2. スマートフォン起動させる
  3. 起動直後にプロセカを立ち上げる

これが上手くいったのは1ヶ月の間くらいだったので、期限が来る前に取りたいスクショを撮ったり、新しいスマホの購入を進めたりしておいた方がいい。

背景

プロセカの起動時に「必要なデータの取得」が挟まれることがあると思います。主にイベント開始日にこの様になります。

私は iPhone SE2 (現時点でiOS 17.7) を使っているのですが、「必要なデータの取得」が挟まれると高確率でアプリがクラッシュします。

4周年までは「必要なデータの取得」で2回アプリがクラッシュしてからなら正常に起動出来ていました。途中まで取得したデータのキャッシュでも残っていて上手く使われていたのでしょう。

しかし、4周年の更新からは「必要なデータの取得」でアプリが何度クラッシュしようが正常に起動出来ません。

あれこれ試したのですが、諦めて iOS 17.6 から iOS 17.7 のアップデートを行った直後、プロセカを起動してみたら「必要なデータの取得」が完了できました。その後起動後ストーリーで大量の Live2D 立ち絵が出て来てアプリがクラッシュしましたが……

ともかく、アップデートに伴って行うアクション (シャットダウン & 起動 & アプリの起動) が怪しそうなので、次に「必要なデータの取得」でアプリがクラッシュする日を待ち、このアクションを行いました。正常な起動が再現できたため記事にしました。ただ、いつ起動できなくなる日が来るのか分からずとても怖いです。

蛇足

私の iPhone SE2 上のプロセカではアプリのクラッシュが頻発しています。

  • 必要なデータの取得時
  • Live2D 立ち絵が大量に出て来たとき
  • ストーリーを複数話読むとき (特に Loading 後)
  • バーチャルライブが長時間かつ登場キャラが多いとき (特にステージなんかの Loading 後)
  • キャラクターアーカイブの多めの閲覧

似たようなものには起動直後の1回目のライブのプレイならカクツキやフリーズはありませんが、2回目以降は1秒から3秒程度のカクツキやフリーズがあります。

これらのことからメモリ関係の不具合なのかなと考えています。踏み込んで言えばアプリのクラッシュは Out Of Memory なんかのメモリ不足の状態かと。iPhone SE2 はメモリ 3 GB しかない (アプリで使えるメモリは1GBもないかも知れません) ですしね。ライブでのカクツキやフリーズは Full GC が裏で動いている気がしています。せめてライプ開始前に Full GC が動いて欲しい。まぁ予想でしかないですけど。

Live2D や 3D モデルのオブジェクトを読み込めば読み込む程、使用メモリが増大していって、アプリがクラッシュしているように見えるので、使用して使っていないオブジェクトはしっかり消し去って欲しいですね。Live2D や 3D モデルのオブジェクトは生存時間が長いだろうと思われるので、もし世代別GCのようなものが動いているならば、オブジェクトが old generation にあって中々消されないということがあってもおかしな話ではない気がします。 それでもアプリがクラッシュに至るのはおかしな話なのですが……

プロセカは今は亡き Craft Egg が絡んでいた関係上バンドリ派生のゲームだと思っているのですが、バンドリは半年ぶりの起動でも正常に起動するので、ソフトウェアの技術で解決できる問題なんだろうなぁと思っています。どうか SEGA とその協力会社の方々には頑張って欲しいです。

あ、あと「必要なデータの取得」、プログレスバーが欲しいですよね。なぜ無いのか。

追記

10/10

電源入れ直してもクラッシュして焦った。もう一度電源入れ直したらパス出来たけど。

11/08

騙し々々やって来たがついにどうにもならなくなった。おしまいです。あーあ。

1/17

傷付き、情報をシャットアウトしていたけど、映画あるし、マイセカイあるし、久々に起動してみたら普通に開けた……。なんと11/15にこれの修正が入っていたらしい。うわ~~~~間が悪い!!!