Support Android 9 Pie

E77b6a5f919f7366d94f21eee9a014f5?s=47 operandoOS
October 23, 2018

Support Android 9 Pie

E77b6a5f919f7366d94f21eee9a014f5?s=128

operandoOS

October 23, 2018
Tweet

Transcript

  1. Support
 Android 9 Pie note engineer meetup #1

  2. About Me • Shinobu Okano • piece of cake, inc.

    • 2018 / 07 Join • Mobile Engineer • @operandoOS • note : operando_os
  3. note AndroidνʔϜʹ͍ͭͯ • νʔϜͱݴ͑Ͳɺݱࡏ̍ਓ • Զ͕3ਓ෼ʹͳΔ… • ੒௕ͷظ଴͔͠ͳ͍νʔϜͰ͢ʂ

  4. ։ൃΞϓϩʔν

  5. https://note.mu/laprasdrum/n/nab0b64f3fa4b

  6. ͱ͸͍͑… • ϦχϡʔΞϧ·ͰݱߦͷΞϓϦ͕Ξοϓσʔτ
 ͞Εͳ͍͜ͱ͸͓٬༷ͱͯ͠͸خ͘͠ͳ͍ • Ξοϓσʔτ͕ͳ͍ = վળ͞Εͳ͍ + ΋͏


    ։ൃࢭ·ͬͯΔͷ͔ͳʁͱ͍͏ෆ҆ • ΞϓϦΛ࢖ͬͯΔ͓٬͞·ͷ͜ͱ
 ๨Εͯͳ͍Αʂͱ͍͏ελϯε͸େࣄ
  7. iOSͱAndroidͰ։ൃΞϓϩʔνΛม͑Δ • iOSͱAndroidͰ͸։ൃ؍఺ɺΞϓϦͷػೳ΍
 ఏڙͰ͖ΔମݧͳͲͰ՝୊͕ҧ͏ • ՝୊͕ҧ͏ͳΒͦΕͧΕ࠷దͳΞϓϩʔνͰ
 ΍Δͷ͕ϕετ • Android͸͙͢ϦϦʔεͰ͖Δ͠
 ʮ·ͣ͸ૉૣ͘ࢼͦ͏ʯͷࢹ఺

  8. note AndroidΞϓϦ աڈ3ϲ݄ͷऔΓ૊Έ

  9. ԿΛ͖͔ͯͨ͠ • ࡉ͔͍࢖͍উखͷվળ + ෆ۩߹मਖ਼ • Ϋϥογϡ཰ͷվળ • Push௨஌Λ෮׆ͤ͞Δ(ྦͳ͠ʹ͸ޠΕͳ͍) •

    ϦϑΝΫλϦϯά? • ͍͔ͭ΍Βͳ͍ͱ͍͚ͳ͍͜ͱ
  10. Ϋϥογϡ཰ͷվળ

  11. ϦϑΝΫλϦϯά? • ͱʹ͔͍ͬ͘ͺ͍΍Γ·ͨ͠ • ?͕͍ͭͯΔͷ͸ɺ࡯͍ͯͩ͘͠͞... • ݱࡏ ୈೋ஄͕ऴΘͬͨͱ͜ΖͰ
 ·ͩ·ͩଓ͖·͢

  12. ͍͔ͭ΍Βͳ͍ͱ͍͚ͳ͍͜ͱ • Android OରԠ ✅ • Android 9 PieରԠ ✅

    • GCM͔ΒFCM΁ͷҠߦ
  13. ͍͔ͭ΍Βͳ͍ͱ͍͚ͳ͍͜ͱ • Android OରԠ ✅ • Android 9 PieରԠ ✅

    • GCM͔ΒFCM΁ͷҠߦ
  14. ԿΛҙ͔ࣝͨ͠ • վળͨ͠΋ͷΛͳΔ΂͘ૣ͘ϦϦʔε͢Δ • Ή΍ΈʹίʔυΛݟͳ͍ɺॻ͔ͳ͍ • ίʔυ͸ಡ·ͣɺΞϓϦΛͱʹ͔͘৮Δ • ՝୊Λݟ͚ͭΔ࣌ؒΛଟ͘औΔ •

    ̍ਓ͔ͩΒͦ͜΍Δ΂͖͜ͱ͸ૣΊʹ΍͓ͬͯ͘
  15. Support Android 9 Pie

  16. ͜ͷࢿྉͰͷSupport Android 9 Pieͱ͸ • Android 9ʹΑΔ࢓༷มߋͰɺΞϓϦ͕
 ڧ੍ऴྃ͠ͳ͍͜ͱ • ΞϓϦͷtargetSdkVersionΛ28ʹ͢Δ

  17. ͦ΋ͦ΋ͳͥSupport͢Δͷ͔ʁ ࠓޙͷ Google Play ͰͷΞϓϦͷ
 ηΩϡϦςΟ͓ΑͼύϑΥʔϚϯε ͷվળʹ͍ͭͯ https://developers-jp.googleblog.com/ 2017/12/improving-app-security-and- performance.html

  18. ͦ΋ͦ΋ͳͥSupport͢Δͷ͔ʁ “2018೥ͷޙ൒ΑΓɺPlayͰ͸ɺ৽͍͠ ΞϓϦ΍ΞϓϦͷΞοϓσʔτ͸࠷৽ͷ Android APIϨϕϧΛλʔήοτʹࢦఆ͢ Δ͜ͱ͕ٛ຿͚ͮΒΕ·͢ɻ”

  19. ͦ΋ͦ΋ͳͥSupport͢Δͷ͔ʁ “͜Ε͕ඞਢͱͳΔͷ͸ɺ৽نΞϓϦ͸ 2018೥8݄ɺطଘΞϓϦͷΞοϓσʔτ ͸2018೥11݄Ͱ͢ɻ”

  20. ͦ΋ͦ΋ͳͥSupport͢Δͷ͔ʁ “2018೥11݄:طଘͷΞϓϦͷΞοϓσ ʔτͰɺλʔήοτAPIϨϕϧ26Ҏ͕߱ ඞਢʹͳΓ·͢ɻ”

  21. ͦ΋ͦ΋ͳͥSupport͢Δͷ͔ʁ • ཁ͸ɺtargetSdkVersionΛ26ʹͯ͠
 Android OରԠ͠ͳ͍ͱΞϓϦͷΞοϓσʔτ͕ Google PlayͰ഑৴Ͱ͖ͳ͘ͳΔΑͬͯ͜ͱ

  22. ͦ΋ͦ΋ͳͥSupport͢Δͷ͔ʁ “2019೥Ҏ߱:ຖ೥ɺtargetSdkVersionͷཁ݅ ্͕͕Γ·͢ɻAndroidͷ֤σβʔτϦϦʔε ͷޙ1೥Ҏ಺ʹɺ৽͍͠ΞϓϦͱΞϓϦͷΞοϓ σʔτ͸ɺରԠ͢ΔAPIϨϕϧҎ߱ʹλʔήο τΛࢦఆ͢Δ͜ͱ͕ٛ຿͚ͮΒΕ·͢ɻ”

  23. ͭ·Γ... • ૣΊʹtargetSdkVersionΛ্͛ͯɺ৽͍͠OS όʔδϣϯ޲͚ͷରԠΛ͓͍ͯͨ͠΄͏͕͍͍ • Ξφ΢ϯε͕ग़ͯ΋ԕ͍ઌͷ͜ͱʹײͯ͡
 ରԠ͢Δؾ͕ى͖ͳ͍৺ཧ • ظݶ͕͍ۙͮͯٸ͍ͰରԠ͢ΔͱࣄނΓ΍͍͢

  24. ରԠͷ೉қ౓͸ΞϓϦʹΑͬͯ·ͪ·ͪ • ࢖ͬͯΔػೳɺఏڙͯ͠Δ࢓૊ΈͳͲͰ
 ରԠͷ೉қ౓͕େ͖͘มΘΔ • ʮ࢖͍ͬͯͨػೳ͕͍͖ͳΓେมͳ͜ʹʂʁʯ ͕ΘΓͱى͜Δ • ΞϓϦΤϯδχΞ͚ͩͰ͸ղܾͰ͖ͳ͍มߋ΋ ى͖Δ

  25. Android O Support Pull Request • ͦͦ͜͜ରԠ͢Δ͜ͱ͕͋ͬͨ • ίʔυ΋ͦͦ͜͜ॻ͍ͨ

  26. Android Pie Support Pull Request • ରԠ͢΂͖͜ͱ͕গͳ͔ͬͨ • ΄΅΄΅ίʔυॻ͍ͯͳ͍

  27. ·ͣԿ͔Β࢝ΊΔ͔ • ެࣜυΩϡϝϯτ΍Android Developers BlogΛख़ಡ • targetSdkVersionʹؔ܎ͳ͘มߋ͞ΕΔಈ࡞ targetSdkVersionʹؔ܎ͯ͠มߋ͞ΕΔಈ࡞
 ͦΕͧΕΛཧղ͢Δ

  28. ·ͣԿ͔Β࢝ΊΔ͔ • Android 9ؔ࿈ͳΒҎԼͷυΩϡϝϯτ͕ख़ಡର৅ • https://developer.android.com/about/versions/ pie/android-9.0-changes-all • https://developer.android.com/about/versions/ pie/android-9.0-changes-28

    • Android Developers Blogʹ΋Android 9޲͚ͷ
 ղઆهࣄ͕͍͔ͭ͋͘ΔͷͰɺ߹ΘͤͯಡΜͰ͓͖͍ͨ
  29. ·ͣԿ͔Β࢝ΊΔ͔ • ख़ಡͯࣗ͠਎ͷΞϓϦʹӨڹͦ͠͏ͳൣғʹ Ί΅͠Λ͚ͭΔ • ΞϓϦ͚ͩͰ׬݁͠ͳ͍มߋ͸ૣΊʹؔ܎ऀ ʹҰ੠͔͚͓ͯ͘

  30. ݸਓతʹ΍͹ͦ͏ͱࢥͬͨ Android 9Ͱมߋ͞ΕΔಈ࡞

  31. Power management • App standby bucketsͷಋೖ • Battery saver improvements

    • https://developer.android.com/ about/versions/pie/power
  32. App standby buckets • ΞϓϦͷ࢖༻ස౓ʹΑͬͯɺ5ͭͷpriority bucketsʹΞϓϦ͕ৼΓ෼͚ΒΕΔ࢓૊Έ • priority͕௿͍bucketʹৼΓ෼͚ΒΕΔ΄Ͳ
 ΞϓϦʹಈ࡞੍ݶ͕͔͔Δ

  33. Power management

  34. Power management • Battery life࠷దԽʹΑΓى͜Δ੍ݶͷ·ͱΊ • Power management restrictions •

    https://developer.android.com/topic/ performance/power/power-details
  35. App standby buckets • ͲͷbucketʹׂΓৼΒΕΔ͔ͷϩδοΫ͸ มߋ͞ΕΔՄೳੑ͕͋Δ͠ɺϝʔΧʔಠࣗͰ มߋͰ͖ΔʁΒ͍͠ • ΞϓϦ͸ͱʹ͔͘ͲͷbucketʹׂΓৼΒΕ ͯ΋ɺ͔ͬ͠Γಈ࡞͢ΔΑ͏ʹ࣮૷͢Δ

  36. Power management

  37. Restrictions on use of non- SDK interfaces https://speakerdeck.com/operando/android-p- restrictions-on-non-sdk-interfaces-1

  38. Restrictions on use of non- SDK interfaces • ެࣜυΩϡϝϯτ •

    https://developer.android.com/about/ versions/pie/restrictions-non-sdk- interfaces
  39. Network TLS enabled by default • httpͰͷ௨৴͕σϑΥϧτෆՄೳʹͳΔ • iOSͰݴ͏ͱ͜ΖͷATS(App Transport

    Security) • ಈ࡞֬ೝͨ͠ײͩ͡ͱWebViewʹ΋
 ద༻͞ΕͯΔؾ͕͢Δ
  40. Android 9 SupportͰnoteΞϓϦ͕
 Өڹͦ͠͏ͳൣғͱͯ͠ચ͍ग़ͨ͠΋ͷ • targetSdkVersionʹؔ܎ͳ͘มߋ͞ΕΔಈ࡞ • Power management •

    Limited access to sensors in background • Restrictions on use of non-SDK interfaces
  41. Android 9 SupportͰnoteΞϓϦ͕
 Өڹͦ͠͏ͳൣғͱͯ͠ચ͍ग़ͨ͠΋ͷ • targetSdkVersionʹؔ܎ͯ͠มߋ͞ΕΔಈ࡞ • Foreground services •

    Network TLS enabled by default • Apache HTTP client deprecation
  42. ࣮ࡍʹnoteΞϓϦͰରԠ͕
 ඞཁͩͬͨมߋ • 2͚ͭͩͰࡁΜͩ • Foreground services • Apache HTTP

    client deprecation ※ ରԠ͸͢Δඞཁͳ͔͕ͬͨɺӨڹͦ͠͏ͳൣғͱͯ͠ચ͍ग़ͨ͠ ΋ͷ͸ɺυΩϡϝϯτΛಡΈͳ͕Βಈ͔ͯ͠Έͯಈ࡞֬ೝ͸ͨ͠
  43. Thanksʂʂ