Slide 1

Slide 1 text

No content

Slide 2

Slide 2 text

Building for Billions - ΨΠυϥΠϯ-

Slide 3

Slide 3 text

Android App ։ൃͷ த৺తͳυΩϡϝϯτ Building for Billions for Android

Slide 4

Slide 4 text

Building for Billions Framework • Connectivity • Device Capability • Data Cost

Slide 5

Slide 5 text

• 2020೥ʹ͸10ԯਓ૬౰͕2G؀ڥͱ༧ଌ • ௨৴ํࣜ/઀ଓํࣜʹؔΘΒͣΞϓϦ͕ಈ͘Α͏ ͳઃܭʹઃܭ͢Δ • ωοτϫʔΫͷ଎౓͸༷ʑɺ৭ʑͳ઀ଓ଎౓Ͱ շదʹͳΔΑ͏ʹΞϓϦΛσβΠϯ͢Δ • ʢ৔ॴʹΑͬͯ͸ʣσʔλ͸ߴՁͰ͋Δ
 Ϣʔβʔࣗ਎͕ίϯτϩʔϧͰ͖ΔΑ͏ʹɻ

Slide 6

Slide 6 text

ΨΠυϥΠϯᶃ ઀ଓੑ
 ৴པग़དྷͳ͍͜ͱ΋͋ΔωοτϫʔΫͩͱΞϓ Ϧ͕࢖͍΋ͷʹͳΒͳ͍ɺΈ͍ͨͳͷΛճආ͢ ΔͨΊʹίϯςϯπΛద੾ʹΩϟογϡ͢Δ

Slide 7

Slide 7 text

ΨΠυϥΠϯᶄ ը૾ͷ࠷దԽ • WebP ΍ VD Λ࢖ͬͯϦιʔεΛখ͘͢͞Δ • ಈతʹը૾αΠζΛมߋ͢Δ࢓૊ΈΛߟ͑Δ • Glide ΍ Picaso ͳͲΛ࢖ͬͯը૾Λ࠷దԽ

Slide 8

Slide 8 text

ΨΠυϥΠϯᶅ ωοτϫʔΫͷ࠷దԽ • ΦϑϥΠϯ༻ͷઃܭ(Offline != Data Empty) • GCM NetworkManager ͳͲΛར༻ • ωοτϫʔΫͷར༻ঢ়گΛ؅ཧ
 ʢଳҬ෯ʹ༏ઌॱҐΛ͚ͭͯ؅ཧ͢Δʣ • Ωϟογϡઓུ

Slide 9

Slide 9 text

ΨΠυϥΠϯᶆ ޓ׵ੑ • targetSdkVersionͱminSdkVersionΛద੾ʹઃఆ • Support Library Λར༻͢Δ • Google Play Service API Λར༻͢Δ

Slide 10

Slide 10 text

ΨΠυϥΠϯᶇ ޮ཰తͳϝϞϦར༻ • ϝϞϦͷϑοτϓϦϯτʹ஫ҙ͢Δ • ௕ظ࣮ؒߦ͞ΕΔϓϩηεΛආ͚Δ • ϝϞϦϓϩϑΝΠϥͰͷϕϯνϚʔΫ

Slide 11

Slide 11 text

ΨΠυϥΠϯᶈ ΞϓϦαΠζΛݮΒ͢ • APK͸ 10MBytes ҎԼ ʹ • Proguard Λ࢖ͬͯίʔυαΠζΛ࡟ݮ • ΞϓϦͷϩʔΧϧΩϟογϡΛ์ஔ͠ͳ͍
 (DB΍FileͳͲͷΩϟογϡ͸ఆظతʹ૟আʣ

Slide 12

Slide 12 text

ΨΠυϥΠϯᶉ όοςϦʔফඅΛ཈͑Δ • ޮ཰తͳωοτϫʔΫͷར༻
 ※ Radio State Machine ͔Βཧղ͢Δ • GPS ଌҐʹ͸ FusedLocationProviderApi Λར༻ • Batterystats&Battery HistorianͰϕϯνϚʔΫ

Slide 13

Slide 13 text

ΨΠυϥΠϯᶊ ίϯςϯπ • Responsive interaction ͱ Customizing Touch Feedback. • ର࿩తͳ UI • 100 to 200 ms ͷݪଇ
 Keeping Your App Responsive : Reinforce Responsiveness

Slide 14

Slide 14 text

ͦͷଞ

Slide 15

Slide 15 text

SafetyNet -Google APIs protected synchronized void buildGoogleApiClient() { mGoogleApiClient = new GoogleApiClient.Builder(this) .addApi(SafetyNet.API) .addConnectionCallbacks(myMainActivity.this) .build(); }

Slide 16

Slide 16 text

RequestPermission ରԠίʔυΛࣗಈੜ੒ػೳ͕ Android Stuido ʹೖΔ!Β͍͠…

Slide 17

Slide 17 text

Google Play Badges https://play.google.com/intl/en_us/badges/ OLD NEW

Slide 18

Slide 18 text

GCM / FCM FCM Λಋೖ͢ΔͱࣗಈతʹGCM΋ಋೖ͞Ε
 ϥοϓͨ͠ Firebase ͷ Receiver ͕ૠೖ͞ΕΔ 
 
 
 
 
 
 
 
 
 AndroidManifest ※ C2DM/GCM ʹඞཁͳ͢΂ͯͷPermission ΋௥Ճ͞Ε·͢

Slide 19

Slide 19 text

Play Store What’s new in Google Play

Slide 20

Slide 20 text

What’s new in Google Play 1. Google Play Early Access/Collections 2. Pre Launch Report 3. Review BENCHMARKS & Reply to Review API 4. Building for Billions Guidelines

Slide 21

Slide 21 text

Google Play Early Access βςετϓϩάϥϜ

Slide 22

Slide 22 text

Google Play Early Access ैདྷͷ Alpha/Beta Program ͷ৔߹͸ঝೝը໘͔Βͷ
 ࢀՃొ࿥͕ඞཁʹ͕ͩͬͨ Play Store ʹ౷߹͞ΕΔ ࢀߟ : FaceBook App ͷ BetaProgram

Slide 23

Slide 23 text

Pre-Launch Report • Alpha/Beta Channel Λར༻͢Δͱ͖ʹ Opt-in ͢Δ ͱࠓ·ͰΞοϓϩʔυͨ͠શͯͷ apk Λςετ ͢Δ͜ͱ͕ग़དྷΔ • 1͙࣌ؒΒ͍ͰϨϙʔτͷαϚϦ͕ඈΜͰ͘Δ • Firebase Test-Lab Λϕʔεʹߏங͞Ε͍ͯΔ • ಠࣗͷςετΛ Android Studio + Firebase ίϯ ιʔϧͰ௥ՃߏஙͰ͖Δʢ༗ྉʣ https://support.google.com/googleplay/android-developer/answer/7002270

Slide 24

Slide 24 text

Firebase Test-Lab • ࣮ػΛฒ΂ͨσʔληϯλʔͰ։ൃऀ͕ςετ Λ࣮ࢪͰ͖Δಛผͳ৔ॴɻ
 ʢੈքத͔ΒΞΫηε͞Ε͍ͯΔʣ • Test Lab ୯ମͰ΋ར༻Ͱ͖Δ Pre-Launch Report Ͱར༻͢ΔͱɺΑΓޮՌతͰ͋Δɻ • Espresso, Robotium, UI Automator 2.0 ΋αϙʔτ https://firebase.google.com/docs/test-lab/

Slide 25

Slide 25 text

No content

Slide 26

Slide 26 text

Review BENCHMARKS

Slide 27

Slide 27 text

ݱࡏɺӳޠͷΈʂ

Slide 28

Slide 28 text

Review Analysis • TOPICS ͸ΞϓϦʹؔ࿈͢Δݸผͷ୯ޠΛर͍
 ”Design”΍”Speed”ͳͲͷ୯ޠ͕ϨϏϡʔͱ
 Ͳ͏ؔ܎͢Δ͔ΛՄࢹԽ • ϨʔςΟϯάผͷτϐοΫ܏޲
 ˑ1 ͷ50% ͸ΞϓϦͷ҆ఆੑ΍όάʹ͍ͭͯ
 ˒5 ͷ Design, Peformance, Usability ʹ͍ͭͯ

Slide 29

Slide 29 text

Reply to Review API • ΞϓϦͷϨϏϡʔΛ֎෦͔Βऔಘ͢ΔAPI • ΞϓϦͷϨϏϡʔʹରͯ͠ฦ৴͢ΔAPI • ಠࣗͷΧελϜΠϯςάϨʔγϣϯͷߏங͕༰қ https://youtu.be/MoPHE6B3gmM

Slide 30

Slide 30 text

Ϣʔβʔ֫ಘσʔλ

Slide 31

Slide 31 text

Ϣʔβʔ֫ಘσʔλ • طʹϦϦʔεࡁΈ͕ͩվળ͢Δ༧ఆ • ࠃผͷϢʔβʔ֫ಘσʔλʢΠϯετʔϧ਺ɺ
 ༗ঈίϯςϯπͷߪೖ཰ɺྲྀೖݩ෼ੳɺ
 A/Bςετʣͷ֬ೝ • Play Store ಺ͷผͷ/ྨࣅΞϓϦͱͷίϯόʔδϣ ϯ཰ͳͲͷϕϯνϚʔΫͱൺֱՄೳʢNew!ʣ

Slide 32

Slide 32 text

Ϣʔβʔ֫ಘσʔλ

Slide 33

Slide 33 text

Play Console app

Slide 34

Slide 34 text

Playbook by Google Play https://play.google.com/apps/testing/com.google.android.apps.secrets

Slide 35

Slide 35 text

ࢿྉ 1. Playbook by Google Play 2. Google Play ͰΞϓϦΛ੒ޭʹಋ͘ʹ͸ 3. Build for Billions 4. FireBase Console 5. Google Cloud Message 6. Google I/O 2016 Codelabs 7. Android Developers Training 8. Android Performance Patterns 9. Android Development Patterns 10. Android Design Patterns 11. Google Developers