blogsoftware開発に関することを書いていきますこの広告は、90日以上更新していないブログに表示しています。Qでのプライバシーに関して。Qでは50以上のプライバシー/セキュリティに関する機能が追加。Permissionが追加された。ところで、ユーザーがpermissionに対して拒否した理由トップ3そのpermissionを必要とすべきではないそのpermission許可しなくても動くはずだあとで許可すればいいやこれらは、permissionを聞いた時点でユーザーにそのpermissionをとる価値を与えられていないのが原因。代替のAPIがあるなら、それを使い、permissionを取らないようにする。APIを使う(hackな感じだ。パーミッションのスコープを決め、どのようにとるかを決める。すべてのpermissionに許可を出すのは18%のユーザーだけ。ユーザーがカメラのアイコンをタップしたとき、permissionを取るようにする。この場合、ユーザーにとってカメラの使用許可を聞かれるのは自然である。ユーザーにより情報を与えるために、いきなりOSのAPIを呼ぶのではなく、ダイアログでこのpermissionに許可すると何がおきるかを説明するといった配慮も有効。Qでは位置情報のpermissionの場合、ダイアログが異なる。locationのセッション参照。ユーザーを驚かせない。必要なデータだけを取る。ユーザーの許可をとった上で情報を共有する。情報を端末の外に持ち出す場合、暗号化しセキュアにする。とっても取得できなくなる。代わりにユーザーがリセット可能なIDを使おう。Qではバックグラウンドからのアプリ起動はブロックされる。Qでは、フォアグラウンドサービスに種類が追加された。device種類によって、使用できるpermissionに違いがある。わ、ほんとに18分で終わった。2019youtu.beAndroidエミュレーターに関するセッション昔のAndroidエミュレーターは遅く、実機が必要だった。Play入りエミュレーターが登場した。去年はスナップショット機能が追加された。今年は折りたたみ機能が追加された。エミュレーターの開発に関し、大事にしていること。多様であること(versatility)今のエミュレーターはPCが早いと、実機より早い。2との比較が紹介されてた。通常、エミュレーターはホストとゲストでCPUのアーキテクチャが違うので、翻訳が必要。最近のAndroidエミュレーターはx86版で動作しているので、ほぼ翻訳なしにホストで実行できる。FrameworkとKVM。ハードウェアGPUはデフォルトに。3.1をエミュレーターでサポート。実機に繋いでファイルを送信した場合、USBケーブルあたりでの制約を受けるが、エミュレーターだと仮想TCPで繋がるので早い。MacroARCoreを使ったアプリをエミュレーターでデバッグできる。マクロ機能が追加された。バッテリーモードがデフォルトに今まで、エミュレーターは常に充電中モードだった。そのため、Playストアアプリがアップデートの有無にかかわらず更新を探しに行ってた。それだとホストのCPUとか食っちゃうので、バッテリー使用中のモードをデフォルトにした。設定を変更して充電中モードに戻すことも可能。実機に近づけるエミュレーターに対しては90万以上のコンパチビリティテストが実施されている。これらのテストは実際に実機に対しても行われているもの。Playストア入り版の場合、アプリ内課金やSNSへのログインとかもちゃんとできる。アプリのシェア機能もエミュレーターで行うことができる。スナップショット例えばアプリのテストを再度実施したい場合、今までだとアプリを一度アンインストールして、再度インストールしてからテストを実施するといった作業が必要だった。スナップショット機能を使えば、テスト前の状態でスナップショットをとることで簡単にテストを再度実施できる。複数インスタンス先ほどのスナップショットを用いて、同じエミュレーターを複数起動することができる。テストを同時に実行可能に。いくつもエミュレーターが起動できる。同時に起動した場合、書き込みが行われるまでRAMは共有されるので省メモリで動作する。