Chrome拡張のデータを消して(上書きして)しまった時の復元方法
自作のChrome(Vivaldi)拡張をテストするために(メインで使ってるVivaldiは起動しっぱなしのまま)テストデータを書き込む処理を入れてChromeでテストしていたらVivaldiの方のデータまで上書きされてしまったということがあったので、そういう時のための復元方法を書いておきます。
やり方
以下、Windowsの場合ですがMacなどでも同様の手法が使えるはずです。
準備としてNotepad++というテキストエディタを持ってないならインストールしてください。このソフトはタブ型で手動で保存しなくても終了するときに内容を自動保存してくれるなど高機能なエディタなので普段使いとしてもオススメです。
まず、拡張のアイコンが並んでいるところを右クリックして「拡張機能の管理」を開きます。そしてデータを復元したい拡張を探して表示されている「ID」(mnfmbggdgnlcpnpdkjjdneckdkihdlfiのようなランダムに見える文字列)を記録しておきます。その後Chromeを閉じます。
Chrome:
C:\Users\<ユーザー名>\AppData\Local\Google\Chrome\User Data\Default\Local Extension Settings<拡張の「ID」>
C:\Users\<ユーザー名>\AppData\Local\Google\Chrome\User Data\Default\Sync Extension Settings<拡張の「ID」>
Vivaldi:
C:\Users\<ユーザー名>\AppData\Local\Vivaldi\User Data\Profile 1\Local Extension Settings<拡張の「ID」>
C:\Users\<ユーザー名>\AppData\Local\Google\Chrome\User Data\Default\Sync Extension Settings<拡張の「ID」>
以上の<ユーザー名>を自分のに置き換え<拡張の「ID」>を上で記録した文字列に置き換えれば、どちらかに拡張のデータが保存されているフォルダがあるはずなのでそれを開きます。Vivaldiの場合デフォルトを変えてる場合「Profile 1」フォルダ名が違う可能性があります。
更新日時が最新で名前が「00000X.log」というようになっているファイルがあるはずなのでそれをNotepad++で開きます。
詳しい仕組みは知りませんが、Chromeは拡張のデータに変更があった時それを一定間隔で記録してるようなので、ファイルの一番下まで移動し、データを削除あるいは上書きしてしまった部分を削除し最後に正常なデータが記録されたところがファイルの一番下に来るようにします。
これで再びChromeを起動すれば拡張のデータが復元されるはずです。
Discussion