Japanese subtitles

← 05-09 Network_and_Battery_Drain

05-09 Network_and_Battery_Drain

Get Embed Code
13 Languages

Showing Revision 7 created 03/14/2016 by PRT_ja_1.

  1. ここで一つはっきりさせましょう
  2. バッテリーに関する限り
  3. ネットでの作業はこの世に存在する
    最大で最悪の敵です
  4. 思い出してください
    あなたの携帯の中は小さなハードウェアで
  5. 実質上 ハム(アマチュア無線)であり
  6. その目的は電波に繋がり
  7. 大量のデータを送受信することです
  8. ですがこの無線チップはいつも
    作動しているわけではなく
  9. 一旦データのパケットが送られた後
    サーバーからの応答があったときの為に
  10. 一定時間 作動状態のままになります
  11. ですが作業がないときは
    ハードウェアが電力温存のためオフになります
  12. 以前ご覧になったように
  13. このチップが活動を始める時に
    多大な電力を消費します
  14. 応対を待つ為に活動をし持続する間
    同時にバッテリーも消費しています
  15. ここでアプリの多くが無線と交信する方法は
    主に二つあることを指摘しておきましょう
  16. 一つ目は即座に行われなければ
    ならない作業がある場合
  17. この作業はユーザー自身の
    行為の結果であるか
  18. アプリの UI の更新が
    即座に必要な場合に起こります
  19. 例えばユーザーがトレンドのハッシュタグで
    新しいツイートのバッチ読み込みを要求したら
  20. これはユーザー側から行った行為なので
    アプリは即座に対応しなければなりません
  21. 一方で 即座に行われなくてもよい
    ネットワークでの作業があります
  22. 例えばユーザーデータのアップロードや
  23. 背景スタッツの同期化 又はあなたの
    ソーシャル写真のサイズ変更などです
  24. 最初に説明した方ではユーザーに
    返答を即座に与える必要がありますが
  25. 後者は電力的に効率よく実行できるとき
    あとで返答できるのです
  26. あなたのアプリに対する
    ネット上のリクエストの大半は
  27. この後者に当てはまる可能性が高いのです
  28. ネットでの作業を効率化するのは
  29. 二つのステップのプロセスです
  30. まずはあなたのアプリ用の
    バッテリーヒストリアンツールの中の
  31. mobile_radio の行をよく見てください
  32. 各々の赤い棒が活発な無線機能を示しています
  33. これらの隙間が無線機能が
    スリープ状態の時を表しています
  34. グラフに無数の細い棒と隙間があったら
  35. パフォーマンスに問題が出ていると言う事で
  36. スリープ状態と起動状態を
    何度も繰り返しているという事です
  37. 代わりに望ましいのは大きな間隔が
    大きな活動の塊の隣にある状態で
  38. ネットのリクエスト数を最小化して
    オーバーヘッドを削減したという事です
  39. 更に良いのは無線通信を使わない事です
  40. 携帯が WiFi に接続されるまで待ち
  41. WiFi ハードウェアに全ての作業をさせ
    電池の消耗を削減最小化できます
  42. ここで問題となるのは
    バッチ処理やキャッシュのためコードを書いて
  43. これら数々のネット作業要求を延期するのを
    正しく行うのが難しいということです
  44. そのために我々が一仕事済ませました
  45. Android L と共に展開した
    JobScheduler API は
  46. API のフルセットで
    ネット作業要求の管理やその他の仕事をします
  47. あなたの代わりにです
  48. ですがこの素晴らしい API の事を
    私たちがお話しするより
  49. 貴方が実践で試してみてはいかがでしょう?