Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Frontrend Vol. 6:Android端末の動作検証の課題を解決「STF」

Frontrend Vol. 6:Android端末の動作検証の課題を解決「STF」

サイバーエージェントでは現在数多くのAndroid対応のウェブサービスやアプリを提供していますが、問題となるのはそれぞれのAndroid端末を個別に検証しなければならないこと。
この課題を解決するべく立ち上がった、STF(仮)という開発中のプロジェクトの概念を紹介し、一部の機能を説明します。

Gunther Brunner

November 16, 2013
Tweet

More Decks by Gunther Brunner

Other Decks in Programming

Transcript

  1. Günther Brunner
    άϯλɾϒϧϯφʔ
    גࣜձࣾαΠόʔΤʔδΣϯτ!
    Ξϝʔόࣄۀຊ෦ ήʔϜ෦໳
    ήʔϜϓϥοτϑΥʔϜࣨ ίΞάϧʔϓ
    !
    ΤϯδχΞ
    @gunta85
    http://ameblo.jp/gunta85
    http://gunta.org/design

    View Slide

  2. ΦοτΫϥ΢θઐ໳ֶߍ!
    ిࢠՊ
    ϒΤϊεΞΠϨεେֶ!
    ৘ใՊ
    ೔ຊ޻ֶӃ!
    άϥϑΟοΫσβΠϯՊ

    View Slide

  3. ότϧεϩοτ

    View Slide

  4. ότϧεϩοτ

    View Slide

  5. ϞόΠϧϒϥ΢β
    ϦΞϦςΟνΣοΫ

    View Slide

  6. ϒϥ΢βʹΑͬͯͷදݱྗ
    ="
    ="
    =" ~"
    PS2"
    SNES"
    N64" PS3"

    View Slide

  7. ։ൃऀ͔ΒݟͨɺΞϝʔόʹඞཁͳ
    ΋ͷ͸ࠓɺԿ͔ʁ

    View Slide

  8. Kinnunen Simo
    ΩϯψωϯɾγϞ
    גࣜձࣾαΠόʔΤʔδΣϯτ!
    Ξϝʔόࣄۀຊ෦ ήʔϜ෦໳
    ήʔϜϓϥοτϑΥʔϜࣨ ίΞάϧʔϓ
    !
    ΤϯδχΞ
    @sorccu

    View Slide

  9. εϚϗΤϯδχΞʹͱͬͯࠓɺ

    Ұ൪ਏ͍ͱ͜ΖΛݟۃΊΔ

    View Slide

  10. େہతͳ؍఺͔Βͷղܾ

    Android୺຤ͷσόοά

    View Slide

  11. ࠃ಺ͷAndroidػछ͸

    250ػछʹ্Δ

    View Slide

  12. ͦͯ͠ɺੈքதͷAndroidػछ͸

    1ສ2ઍػछʹ্Δ

    View Slide

  13. ΤϛϡϨʔλʔ͸…

    View Slide

  14. ஗͍ɻ

    View Slide

  15. Genymotion͸ૣ͍…

    View Slide

  16. ͕ɺۭ૝తɻ

    View Slide

  17. Կނʁ

    View Slide

  18. ֤ϝʔΧʔ͕AndroidΛΧελϚΠζ͢Δ౓ʹɺ

    ಠࣗػೳͱಠࣗόάΛ੝ΓࠐΉɻ


    View Slide

  19. ಠࣗόά͸

    ΤϛϡϨʔλʔͰ࠶ݱෆՄೳ

    View Slide

  20. ֤σόΠε͝ͱʹ
    όάɺόάɺόά

    View Slide

  21. Ͳ͏͢Ε͹ྑ͍ʁ

    View Slide

  22. ෺ཧతʹ୺຤Λ

    ૢ࡞͢Δɻ

    View Slide

  23. Chrome USB Remote
    Debugging

    View Slide

  24. Reality check
    • Android 2.3 ϚʔέοτγΣΞ͸30~40%
    • Chrome͸Android 2.xͰΠϯετʔϧෆՄೳ
    • Chrome σϑΥϧτϒϥ΢βͰ͸ͳ͍

    View Slide

  25. Reality check
    • Chrome͕Πϯετʔϧ͞Εͨͱͯ͠΋WebView
    Ͱ͸࢖ΘΕ͍ͯͳ͍
    • Android KitKat 4.4ΑΓChromiumϕʔεͷ
    WebView͕࠾༻͞ΕΔ͕ɺChromeͷ༗ޮ͞Εͯ
    ͍Δϑϥάͱ͸·ͨҧ͏ʢWebGLɺ
    WebAudioɺ౳͸ແޮʣ

    View Slide

  26. Samsung Galaxy S4
    “σϑΥϧτϒϥ΢β”͸
    σϑΥϧτϒϥ΢βͰ͸ͳ͍ɻ

    View Slide

  27. Samsung Galaxy S4
    “σϑΥϧτϒϥ΢β”͸

    ΧελϚΠζ͞ΕͨChromiumͷϑΥʔΫɻ

    View Slide

  28. View Slide

  29. ॆి
    Կ࣌ؒ΋

    View Slide

  30. ֶश͢Δ
    ϘλϯͷҐஔɺ

    ઃఆͷ࢓ํ

    View Slide

  31. View Slide

  32. Ұͭͣͭ.

    View Slide

  33. ຖճ΋.

    View Slide

  34. Ұͭͣͭ.

    View Slide

  35. –Asking myself
    “Wouldn’t it be great if we could debug real
    devices, on real browsers, all of them, 

    at once?”

    View Slide

  36. ϓϨϏϡʔ

    View Slide

  37. Smartphone  Test  Farm
    (codename)

    View Slide

  38. γεςϜߏ੒

    View Slide

  39. ɾτ΢ηϯϏϧ!
    ΞϓϦαʔόʔ
    ɾϓϥΠϜϏϧ!
    ɾϚʔΫγςΟ!
    ϓϩόΠμʔ
    λʔϛφϧ
    USB HUB

    View Slide

  40. ෳ਺୺຤Λಉ࣌ʹ
    ϒϥ΢δϯά͢Δػೳ
    • URLೖྗػೳ

    • ໭ΔػೳɺਐΉػೳ

    • ߋ৽ػೳ

    • URLཤྺอଘػೳ

    View Slide

  41. ෳ਺୺຤Λಉ࣌ʹ
    JSίʔυΛ࣮ߦ͢Δػೳ
    • αΠτ্Ͱ೚ҙͷJSίʔυΛ࣮ߦͤ͞Δػೳ

    • ίʔυεχϖοτอଘػೳ

    View Slide

  42. ϒϥ΢β্
    ϦϞʔτλʔϛφϧػೳ

    View Slide

  43. ෳ਺୺຤Λಉ࣌ʹ
    ϦΞϧλΠϜͰϩάΛऔΔػೳ

    View Slide

  44. ΫϥΠΞϯτଆ
    ϩάϑΟϧλϦϯάػೳ

    View Slide

  45. ϖʔδશମ

    εΫϦʔϯγϣοτอଘػೳ

    View Slide

  46. ͦͷଞͷػೳ
    • Reverse Port Forwarding
    • Weinre Debugging
    • CPU/Memory Realtime Graphs
    • USB Transfer Speed Realtime Graph

    View Slide

  47. Smartphone  Test  Farm
    (codename)

    View Slide

  48. Powered by
    ଞͷϞδϡʔϧ΋ؚΊɺ

    ಠࣗͷC++ VNCαʔόʔͷ࣮૷΋ɻ

    View Slide

  49. Φʔϓϯιʔε

    View Slide

  50. • Adbkit
    • Adbkit-monkey
    • Adbkit-logcat
    https://github.com/CyberAgent
    ࠷ॳʹΦʔϓϯιʔεԽ͢ΔϞδϡʔϧ

    View Slide

  51. View Slide

  52. ୺຤ͷݕূ͸

    σόοά͚ͩͰ͸ͳ͍

    View Slide

  53. AppZone

    View Slide

  54. http://cyberagent.github.io/AppZone/

    View Slide

  55. View Slide

  56. Günther Brunner
    άϯλɾϒϧϯφʔ
    ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠
    גࣜձࣾαΠόʔΤʔδΣϯτ!
    Ξϝʔόࣄۀຊ෦ ήʔϜ෦໳
    ήʔϜϓϥοτϑΥʔϜࣨ ίΞάϧʔϓ
    !
    ΤϯδχΞ
    [email protected]
    Skype: gunther_brunner_ca
    Twitter: @gunta85
    http://ameblo.jp/gunta85
    http://gunta.org/design

    View Slide