Android版Chrome 79、WebView使用アプリでデータ消失が発生してロールアウトを一時中止 7
ストーリー by hylom
そういう理由なのか 部門より
そういう理由なのか 部門より
headless曰く、
先日リリースされたAndroid版Chrome/WebViewバージョン79でWebViewを使用するアプリでのデータ消失が発生したことから、ロールアウトを一時中止したそうだ(Issue 1033655、Android Police、Softpedia、Mashable)。
Chrome/WebViewのバージョン79ではWebViewのデータ保存場所が変更されているのだが、WebViewが使用するLocalStorageファイルやWeb SQLデータベースなどは新しい場所に移動されず、アップデート後にWebView使用アプリを起動するとそれまでに保存したデータにアクセスできなくなるという。元のデータは削除されていないため、a)アクセスできなくなっているデータを新しい場所に移動する、b)データ保存場所を元に戻す、といった対策が考えられる。
ただし、構造化されていないLocalStorageデータを自動でマージすることは難しく、ユーザーにデータを選択させるUIをWebViewがアプリに代わって表示することもできない。そのため、新しいデータまたは古いデータが失われることになる。Chromiumチームでは修正版のテストを開始しているが、対策の方法はまだ検討中なので、影響を受けたアプリの開発者にはアプリのパッケージ名とデータの内容を報告するよう求めるとともに、(まだ実行していないなら)独自の対策を行わないよう求めている。バージョン79は50%のユーザーを対象にロールアウトしており、10%ほどのデバイスが既にアップデートしているとのことだ。
複数デバイスで同期していると、他の Chrome のデータも消える! (スコア:0)
Android 上でデータが消失している状態で、同期をとると「最新」のデータに更新され、丸ごと消えます。
Chrome で管理していたパスワード、全部消えちゃった。どうしよう
そもそも消えたら困る大事なデータを置いておけるようなもんだったの? (スコア:0)
バックアップとか機種変時の移行とかはAndroid側でちゃんとやってくれるとしても、次もAndroidを同じGoogleアカウントで使う人ばかりじゃないだろうし、重要なデータなら自前のインポート・エクスポート機能やクラウド保存機能も用意しておくべきでは
Re: (スコア:0)
Web Storage APIというのがあってですね、スクリプトからデータを保存して後で読むことができます。
大抵は、ユーザが保存したという自覚のないデータです。
例えば、OAuthの認可情報とかですね。
どのくらい困る・不便かはアプリ次第です。
Re: (スコア:0)
滅多に居ない自分より無知な奴が見つかったと意気揚々とシュバって来て「というのがあってですね」なんて得意げに講釈垂れ流しちゃってるところ悪いんだけど、「もんだったの?」って言ってるんだから、その「もん」の存在を認識してそれについて語っていることは一目瞭然だよね?
やはり自動更新は悪 (スコア:0)
先日の、macosが起動不可能になる障害といい、Googleもいい感じにヘマを重ねとるな。
人類はいいかげん自動更新は悪であることを学ぶべき。
Re: (スコア:0)
必要悪です
webviewプロバイダの変更 (スコア:0)
いわゆる貢献者向けビルド(canary、dev、beta)で検出できそうな挙動なのに...
と思ったけど、webviewプロバイダを(開発者向けオプションから)明示的に変更する必要があったり
それ以前にstableビルド以外をwebviewプロバイダに指定できない端末もある模様。
「貢献者によるフィールドテスト」が不十分であったことについても今後なんらかの改善が予定されているはず。