6
3

More than 3 years have passed since last update.

iOSでスプラッシュ画面を変更しても古いスプラッシュ画面が表示されないようにする方法

Posted at

iOSでスプラッシュ画面を変更しても、起動時に古いスプラッシュ画面が出続けてしまうことがあります。

アプリを削除してインストールしなおしたりすると治りますが、実装でどうにかする方法もあります。

以下のように、スプラッシュスクリーンを差し替えたときは、iOS13は/Library/SplashBoard/Snapshots/以下を、iOS13未満は/Library/Caches/Snapshots/を消すことで2回目以降のアプリの起動では古いスプラッシュ画面が表示されるといったことはなくなります。


    func clearLaunchScreenCache() {
        do {
            if #available(iOS 13.0, *) {
                try FileManager.default.removeItem(atPath: NSHomeDirectory()+"/Library/SplashBoard/Snapshots")
            } else {
                try FileManager.default.removeItem(atPath: NSHomeDirectory()+"/Library/Caches/Snapshots")
            }
        } catch {
            print("Failed to delete launch screen cache: \(error)")
        }
    }

ほんとにこれ消しちゃって大丈夫なんだっけ?と不安な方は、以下のように表示して確認してみると良いと思います。

$ open -a preview Snapshotsのパス

参考

6
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
3