2018/06/25

Android (7.1.1): Google Playストア、Google play services for instant appsが、更新されない場合

モバイル通信の不意な消費を抑えるため、アプリの自動更新をオフにしたり、アプリの更新はWiFiのみとしている人は多いと思う。

これらは、Playストアの設定の「アプリの自動更新」にて設定できる。私は、「アプリを自動更新しない」に設定している。また、データセーバも使っているので、アプリはあらかじめ設定されていなければ、バックグラウンドでモバイル通信をすることがないようにしている。

にもかかわらず、スマホを操作していると、WiFiに接続していないにも関わらず、「Goole Playストア」や「Google play services for instant apps」のダウンロードが勝手に始まることがある。セキュリティソフトのログを見ると、1~2週間に1回くらいの感じで更新されているようだ。そこまで大事なコンポーネントなのかどうかは不明。

これを止められないかという話はよくあるようだが、ない、というのが正解の様子。

なんだが、ダウンロード中に、ダウンロードマネージャが通知領域に表示するプログレスバーの下にある「キャンセル」を押すと、、、、。ダウンロードを止められる。

気が付いたときにこれで止められるといえば止められるわけだが、待ち構えているわけにもいかないので、、、あんまり、意味なし。

というか、ここでキャンセルすると、二度と最新バージョンを取りにいかなくなっちゃう。通常であれば、Google Playの「設定」→「Playストアのバージョン」を選ぶと手動で最新版をダウンロードできる。が、一度、ダウンロードをキャンセルしてしまうと、この操作を実行するとダウンロードが始まるようなそぶりを見せるのだが、ダウンロードが始まらない。。。

その場合は、ホームの「設定」→「アプリ」でGoogle Playストアを「無効にする」と良いようだ。この操作をすると、「アンインストールするか?」と聞かれたのち、「Playストアを出荷状態に戻してよいか?」と聞かれる。出荷状態に戻すと、その直後に最新版への更新が自動的に始まる。で、めでたく、Playストアが最新版に更新される。

つーか、手動でちゃんとできるようにしてほしい。


2018/06/08

Android (7.1.1): 設定:バックアップ - バックアップはいつ実行されるのか??

アプリや設定が固まってくると、バックアップをとったほうが良いかな、という気になる。

Googleのクラウドサービスになっているアプリは、設定以外のバックアップは不要。クラウドサービスになっているとは、ブラウザからも利用可能であるというようなことで、そもそもデータが端末にはなくて、ネットワーク=クラウド側にあるということ。メール、カレンダー、連絡先、Keep、Map、Driveあたりは、クラウドサービスだ。アプリの使い勝手を左右するアプリの設定は、バックアップしたい。

Androidのバックアップは、端末とアプリの設定を保存する仕掛けだ。アプリが扱うデータをバックアップすることは想定されていない。Google driveのようなクラウドサービスや、サービス自体が提供するシステムにデータが保存されるのであれば、データのバックアップは不要だ。

世の中の人気アプリはなっていそうなものだか、そうでもない。例えば、LINE。トークのデータは、Androidのバックアップではバックアップされない。設定メニューから自分でやらなければならない。変更時は、特別な操作が必要だ。LINEのバックアップは、、、まぁ、おかしい。

音楽や写真のような、サイズが大きくなるデータのバックアップも、別扱い。

とはいえ、まずは、Androidでのバックアップで、大まかにバックアップをとっておくことは、無駄ではない。機種を変えたときや、不調や修理の都合で端末を初期化した場合に、バックアップがあれば、あっという間にアプリがインストールされていて、設定されている状態まで復元できる(らしい)。

ところが、これが案外と癖がある。設定としては、「バックアップとリセット」から、「バックアップ」をONにして、「アカウント」を設定するだけなので、簡単だ。

という事で、設定してみたのだが、、、。いつバックアップ始まるのこれ?

バックアップを開始、と指示できないのだ。これが、案外、ストレス。設定しても直ぐにバックアップが始まらない。アブリの権限をカスタマイズしていたり、プリインストールされているgoogleアプリを無効化していたり、ガッツリやっちゃっている場合、その状態でバックアップがちゃんととれるのかがわからない。

仕方なく、一日待ってみたが、バックアップされていない模様。ネットで調べると、バックアップできねー的な話がたくさん見つかる。

いつバックアップが始まるかも、はっきりしない。Wi-Fi接続にして15分くらいおいとけ、とか、バックアップは一日一回しか起動しないから、一日は様子を見ろ、とか。錯綜している。


二日目は、バックアップがとれていました。その間、いろいろ設定をイジったので、何が効いたのかよくわからず、、、。
勝手にバックアップされているのは便利なのだが、なんとなく指示したいというのは、昔のPC人間なんだろうなぁ、と思う。

2018/06/01

Android (7.1.1): 設定メモ: 従量制のWi-Fiネットワーク

(以下、モトローラのmoto g5s, Android 7.1.1の場合)

「データ使用量」→「ネットワーク制限」では、従量課金で課金されるWi-Fiアクセスポイントを定義できる。

「ネットワーク制限」を開くと、「従量制のWi-Fiネットワーク」という画面になる。が目人の下のほうには、「バックグラウンドデータが制限されている場合、従量制のネットワークはモバイルネットワークと同様に扱われます。」と説明書きがある。

分かるような、分からないような。。

モバイル通信接続(キャリア通信網への接続)の場合、利用者が気が付きにくい通信を抑えるため、アプリがバックグラウンドで通信することを抑止できる。「設定」→「アプリ」→「データ使用量」→「バックグラウンドデータ」で、アプリごとにモバイル通信接続時のバックグラウンド通信の可否を設定できる。また、データーセーバーを使えば、システム全体でモバイル通信接続時のバックグラウンド通信の可否を制御できる。

「バックグラウンドデータが制限されている場合、、、モバイルネットワークと同様に扱われます」とは、そういうこと。つまり、バックグラウンド通信が抑止される、ということ。

「従量制のネットワークは」がわかりにくいのだが、「ここで定義する従量制のWi-Fiネットワークは」ということ。

ここで定義するWi-Fiアクセスポイントに接続している場合は、Wi-Fiネットワークに接続しているのであるが、モバイル通信接続している場合と同様に、アプリの「バックグラウンドデータ」の設定に従ってアプリのバックグラウンド通信が制御される、ということ。

例えば、何らかの事情でモバイルルーターのWi-Fiでネットワークに接続している場合とか、他のスマホのテザリングでネットワークに接続している場合とか、実際は従量課金が発生するWi-Fiに接続している場合に、アプリがバックグラウンドで通信することを抑止できる。

英文では、こうなっている。

"Metered networks are treated like cellular when background data is restricted, apps may warn before using these networks for large downloads."

Metered networksではなく、these metered networks, metered networks defined hereとかになっているとわかりやすいと思うんだがなぁ。あと、この画面のタイトルが"Metered Wi-Fi networks"で、説明内の"metered networks"と変わっちゃっているのも、おしいなぁ、と思ったり。

これ、iOSにもほしい機能です。

Android (7.1.1): 設定: 画面ロック - 端末データの暗号化の強化に画面ロックが使えない?

(以下、モトローラのmoto g5s, Android 7.1.1の場合)

「セキュリティ」→「画面ロック」で、スマホのロックをかけるか、かける場合のロック方法を設定する。

ロックとは、許可されない人が勝手にスマホを使えないようにする機能。Androidスマホのロックには、電源をオンにするのを制限する「起動ロック」、通話やモバイル通信を制限する「SIMロック」、画面の表示を制限する「画面ロック」がある。「画面ロック」だけしっくりこないのは私だけか? 画面を見られないようにするためのロックだから、その通りなんだけど。

「画面ロック」設定にある設定ボタンからは、「自動ロック」、「電源ボタンですぐにロックする」、「指紋センサーで電話機をロックできます」、「ロック画面メッセージ」などの設定ができる。

実際の画面ロック方法は、「スワイプ」、「パターン」、「PIN」、「パスワード」から選択できる。「スワイプ」は、ロックにならないので注意。また、指紋認証は違う画面からの設定となる。

これらのそれぞらの項目の下に「ユーザー補助サービスがONに設定されているため、端末データの暗号化の強化に画面ロックは使用されません」という説明が出ている人が、結構いるはずだ。私も出ているが、ピンとこなかった。

そもそも、最近のAndroidではスマホ内のユーザデータは暗号化されている。ユーザデータはファイル単位で記録されるが、それを管理するファイルシステムの機能で、データファイルが暗号化されるようだ。

ファイルの復号化には「カギ」が必要になるが、この「カギ」が、画面ロックと連動する形で保護されているらしい。つまり、ファイルを復号化するにはカギが必要、そのカギは画面ロックを解除しなければ取り出せないようになっているらしい。

「端末データの暗号化の強化」とは、復号化の「カギ」が「画面ロック」と連動して保護されている、ということのようだ。

では、なぜ、「ユーザー補助サービスがON」になっていると「暗号化の強化」が使えないのか?

「ユーザー補助サービス」とは、いわゆるアクセシビリティの機能で、障碍者の方向けの機能のこと。例えば、電話がかかってきたら発信元の名前を読み上げてくれる、ウェブ、メール、メッセージを読み上げてくれる、通知の内容を読み上げてくれる、など。

電話の着信時やメッセージの受信時に、何かを読み上げてほしいとなると、ユーザデータをいつでも復号できないといけない。よって、復号に必要なカギをいつでも取り出せるようになっているということ。

だと、思う。

暗号化しなきゃいいのに、という考え方もあるが、多少でも保護はあったほうが良いだろうと思う。

惜しいなぁと思うのは、「ユーザー補助サービスをON」にしたつもりがなくても、このような状態になってしまうこと。特に、セキュリティソフトや、何らかのシステムユーティリティが、ユーザー補助サービスが提供する何かの機能を要求するため、これがONになってしまうのだ。

おそらくは、真にアクセシビリティがほしいからユーザー補助サービスをONにしたのか、そうではないのかを、区別できなければならないのだが、、、。あるいは、ユーザー補助サービスをOFFにしようとしたときに、どういうアプリに影響が及ぶか示してくれるとか、、、。

「ユーザ補助サービス」については、「Androidのユーザー補助サービス(Accessibility Service)は楽しい」に分かりやすく説明されている。ここには、「 開発者は良心に基づき最小権限で実装することが求められますが、AccessibilityServiceInfoの設定項目が非常に複雑な上、ユーザーのからの許可は「ユーザー補助」として一括で扱われるため正しい設定が難しくなっています」、「もっとも大きな問題点は「ユーザー補助サービスの権限があまりに強すぎる」というところ」、と書かれております。要は、便利なんだけど、設定が難しくなっているということのようだ。

また、ユーザ補助サービスはとても強力であるが故、ランサムウェアのベースの仕掛けにも悪用されてしまっているようだ。

で、元の設定の話に戻ると、「ユーザー補助サービスがONに設定されているため、端末データの暗号化の強化に画面ロックは使用されません」とは、若干、暗号化の強度が落ちるよ、といっているということ。端末データ自体は暗号化されている。

ここの画面の分かりにくさは、今、どの方法で画面ロックをかけているかの情報が失われていること。「セキュリティ」の「画面ロック」の下には現在設定されているロック方法が「PIN」「パターン」「パスワード」などど書かれているのだが、ユーザー補助サービスがONになっている場合、各ロック方法の下には「ユーザー補助サービスが、、、」との注意書きが書かれていて、今有効になっているのはどれかがわからなくなっている。

実は、ユーザー補助サービスがOFFの場合、いまこれ、というのがわかるように表示されるので、、、、、まぁ、、、バグの類かと。。おそらくは、有効に設定されているロック方法の下に「いまこれが有効だけど、ユーザー補助サービスが、、、」というように書かれているのが、ありがたいかなぁ。

そもそも複雑なので、わかりやすく説明するのは、難しいですなぁ。