-
Notifications
You must be signed in to change notification settings - Fork 113
[Android] 端末の言語を変更後「プライバシーポリシーの改定」が再表示される #49
Comments
Android 8.0.0 が搭載された ZenFone Live L1(ZA550KL)で「端末の表示言語」を,
……という順番で設定していますが,COCOA v1.2.1 ではプライバシーポリシー改定画面が表示されていたことを確かに記憶しています。内容は英語で書かれていました。 「端末の言語」において「日本語」が(順序関係なしに)指定されているかどうかで改定画面を表示する可能性が変わるのか,もしくは v1.2.2 から現れ始めた症状なのか……どうなんでしょうかね。 |
ログを確認してみました。 日本語設定でエラーが発生しているのは、日時の文字列での保存・解釈がロケール依存になっているせいでしょうか。 cocoa/Covid19Radar/Covid19Radar/Services/TermsUpdateService.cs Lines 127 to 131 in 047b12b
cocoa/Covid19Radar/Covid19Radar.Android/Services/PreferencesService.cs Lines 117 to 120 in 047b12b
|
Android端末(Google Pixel 3 / API Level 30)の言語設定「日本語(日本)」と「English (United Kingdom)」それぞれで ログの出ているところは例外をcatchしている箇所なので、例外の具体的な種類を知れば、もう少し調査が進みそうです。
これけっこう難しそうなんですが、どんな風に用意するといいでしょうか(直接Preferenceに書き込んだり?)。 |
本日時点でののプライバシーポリシー確認用URLです。 https://covid19radarjpnprod.z11.web.core.windows.net/ja/terms_update.json {
"privacy_policy" : {
"text" : "感染可能期間に陽性者と接触した可能性のある方にのみ通知するよう、アップデートしました。\n ・陽性者が発症日又は検査日を入力\n ・その約2日前以降に接触の可能性のある利用者に通知\n\nこれにともない、プライバシーポリシーを改定しています。\n改定内容を下記リンクからご確認ください。",
"update_date" : "2020/12/15 13:00:00"
}
} |
@keiji 開発マシンのhosts弄ってlocalhost見に行かせたり、デバッグ用Proxyとか用意すると楽かもです。 |
例外を拾ってるのはこのあたりのようですが、種類はログには出してないですね。
|
adb backup が効いたので確認してみると、apps/jp.go.mhlw.covid19radar/sp/jp.go.mhlw.covid19radar.xml に保存されていた内容は以下の通りでした。dd/mm/yyyyフォーマットになっています。 <string name="PrivacyPolicyLastUpdateDateTime">15/12/2020 13:00:00</string> また、手元の端末(SH-M08)ではログの一部にも出力されている通り、English (United Kingdom)環境の <string name="PrivacyPolicyLastUpdateDateTime">09/03/2021 03:12:00</string> この状態から日本語設定に切り替えて起動すれば「プライバシーポリシーの改定」画面が再度表示されると思ったのですが、 もともとの現象とは真逆の問題(確認画面が出ないことが問題なのではなく、再度出ることが問題)であるなど |
少なくとも言語設定に寄ってデータの保存フォーマットが変わってしまうのはバグの元で有るように思います。 |
おおもとの原因(端末・設定によってはフォーマットが変わってしまう点)を主題にするのが伝わりやすそうですね。 |
初回同意時は今日の日付になる実装です。 今日の日付が9月3日と解釈されうるなら、その後日本語(日本)のまま使い続けると9月までのプライバシーポリシーの更新はすべて無視されることになりそうですね。 |
すみません。日付フォーマットが異なる件、こちらでも再現しました。 |
(off-topicですが)表示されてから同意するまでのタイムラグに新しいプライバシーポリシーがデプロイされた時のことが気になったので、この動作について「やや疑問がある」としました。 |
こちらの件ですが、以下の手順で概ね再現できたと思うのですがどうでしょうか。
つまり、(このissueのタイトルとは逆で) 7 番でプライバシーポリシー再同意画面が表示されるパターンが想定外の動作で、正しいのはプライバシーポリシー再同意画面は表示されない動作なのではないかと思っています。 @pinterior さんの状況 「プライバシーポリシー改定以前から使用し」 とは違っているのですが、改定(2020/12/15)以後は一切アプリ起動などしていなかった端末ということになるんでしょうか?その場合初回起動がいつ頃だったかはわかりますか?(さすがに昔の話すぎるとは思いますが...) |
もっとシンプルな別解があって、ただ今から再現させるのはちょっと面倒なのですが、
こういうパターンもありうるかもしれません。。 |
上記のログの中で
とあり、 |
これについては上の方でプロキシを利用する方法が挙げられていましたが、当方では Android の SharedPreferences (/data/data/jp.go.mhlw.covid19radar/shared_prefs/jp.go.mhlw.covid19radar.xml) を rooted 環境で編集・保存することで再現を確認しています (non-root ならば Debug ビルドでも可) 。 |
@Guest126 さん ありがとうございます。見落としていましたがもろもろ納得してすっきりしました。 |
Describe the bug
Android端末の言語設定が英語の場合、COCOA起動時に「プライバシーポリシーの改定」画面を経由しない
To Reproduce
Expected behavior
端末の言語設定にかかわらず「プライバシーポリシーの改定」に相当する画面による確認を経てからCOCOAが動作する
Smartphone (please complete the following information):
Additional context
「プライバシーポリシーの改定」画面を表示しない場合に旧プライバシーポリシーに沿った動作をしているのであれば、問題ありません。
The text was updated successfully, but these errors were encountered: