Slide 1

Slide 1 text

Android Q Beta1 Otemachi.apk #02

Slide 2

Slide 2 text

஫ҙॻ͖ • ຊࢿྉ͸Beta1࣌఺Ͱͷ࿩Ͱ͢ • Beta1Ҏ߱ɺ࢓༷มߋ͕ߦΘΕΔՄೳੑ͕
 ͋Γ·͢ • ࣗ਎ͰυΩϡϝϯτͱڍಈΛ֬ೝ͢Δ͜ͱΛ ͓͢͢Ί͠·͢

Slide 3

Slide 3 text

Android Q Beta Sample • αϯϓϧίʔυࡶʹॻ͍ͯ·͢ • https://github.com/operando/Android-Q- Sample

Slide 4

Slide 4 text

Android Q Beta • ެࣜυΩϡϝϯτ • https://developer.android.com/preview • https://android- developers.googleblog.com/2019/03/ introducing-android-q-beta.html

Slide 5

Slide 5 text

Privacy in Android Q • Scoped storage • Background activity starts • App access to device location • Data & identifiers • Location & network

Slide 6

Slide 6 text

Scoped storage • ͜Ε͕݁ߏ৭ʑมΘͬͯΔ • ͜Ε͚ͩͰ5෼࿩͠ऴΘͬͪΌ͏... • ֎෦ετϨʔδ࢖Θͳͯ͘΋ɺ஌ࣝͱͯ͠͸Ͳ͏ มΘΔͷ͔Λཧղ͓͍ͯͨ͠ํ͕͍͍ • https://developer.android.com/preview/ privacy/scoped-storage

Slide 7

Slide 7 text

Scoped storage • ΞϓϦઐ༻ͷ sandboxετϨʔδʹ࡞੒ͨ͠ϑΝΠ ϧ͸ଞͷΞϓϦ͔ΒΞΫηεͰ͖ͳ͘ͳΔ • ΞϓϦઐ༻ͷ sandboxετϨʔδ • Context.getExternalFilesDirͱ͔ͰऔಘͰ͖Δ σΟϨΫτϦ • ͜Ε·Ͱ͸WRITE_EXTERNAL_STORAGE
 ύʔϛογϣϯͰଞͷΞϓϦͷϑΝΠϧ΋ѻ͑ͨʁ

Slide 8

Slide 8 text

Scoped storage • ΞϓϦ͕ΞϯΠετʔϧ͞Εͯ΋֎෦ετϨʔδʹ
 ࡞ͬͨϑΝΠϧΛ࢒͍ͨ͠ͳΒshared collectionsʹ อଘ͢Δ • shared collections include • Photos & Videos • Music • Downloads

Slide 9

Slide 9 text

Scoped storage • shared collectionʹଞΞϓϦ͕࡞ͬͨϑΝΠϧ ΛӾཡʹ͸ɺ໨తʹԠͯ͡ద੾ͳPermission͕ ඞཁ • shared collectionʹଞΞϓϦ͕࡞ͬͨϑΝΠϧ Λมߋʹ͸ɺಛఆͷRole͕ඞཁ • ӾཡͱมߋΛ෼͚ͯߟ͑Δ

Slide 10

Slide 10 text

Scoped storage ͳΔ΄Ͳ Θ͔ΒΜ

Slide 11

Slide 11 text

Scoped storage • ֎෦ετϨʔδΛ࢖Θͳ͍ΞϓϦ͸ؔ܎ͳ͍࿩ • ֎෦ετϨʔδΛ࢖ͬͯ΋ΞϓϦઐ༻ͷσΟϨ ΫτϦ͚͔ͩ͠࢖ͬͯͳ͍ΞϓϦ͸Өڹ͠ͳ͍ ࿩͔΋ • Storage Access Framework͕ศརͳͷͰ
 Ͱ͖Δ͚ͩ࢖͍͖͍ͬͯͨؾ࣋ͪ

Slide 12

Slide 12 text

Background activity starts • όοΫάϥ΢ϯυͰActivityΛىಈ͢Δ͜ͱ΁
 ͷ੍ݶ • ௨஌ͷλοϓͳͲϢʔβૢ࡞Ҏ֎ͰόοΫάϥ ΢ϯυ͔ΒͷActivityىಈ͕Ͱ͖ͳ͘ͳΔ • มͳը໘ىಈͱ͔Ͱ΍͍ͬͯΔ࡞ۀͳͲ͕
 தஅ͞ΕͨΓ͠ͳͯ͘ࡁΉΑ͏ʹͳΔ

Slide 13

Slide 13 text

ྫ͑͹... • IntentService͔ΒstartAcitivty͢Δͱ͔Ͱ͖ ͳ͘ͳΔ • Ϣʔβૢ࡞Ͱ͸ͳ͍ͷͰ

Slide 14

Slide 14 text

App access to device location • Ϣʔβ͕όοΫάϥ΢ϯυͰͷҐஔ৘ใऔಘΛ ڐ͔͢Ͳ͏͔Λબ୒Ͱ͖ΔΑ͏ʹͳΔ • iOSͬΆ͍ͧ • όοΫάϥ΢ϯυͰҐஔ৘ใΛऔΒͳ͍ΞϓϦ ͸Өڹͳ͠

Slide 15

Slide 15 text

Android Q features and APIs • TLS 1.3 support • Wi-Fi Direct connection API • Roles • Settings panels

Slide 16

Slide 16 text

Roles • υΩϡϝϯτ • https://developer.android.com/preview/ features/roles

Slide 17

Slide 17 text

Roles • OSϨϕϧͰΑ͘࢖ΘΕΔϢʔεέʔε͝ͱʹ RoleΛ࡞ͬͨ • RoleΛ༩͑ΒΕͨΞϓϦ͸Roleಛ༗ͷݖݶ͕ ෇༩͞ΕΔ • ֤Role͝ͱʹRoleΛ༩͑ΒΕΔΞϓϦ͸1ͭ

Slide 18

Slide 18 text

Roles defined in Android Q

Slide 19

Slide 19 text

Ͳ͏ͯ͠Role͕ඞཁͩͬͨͷ͔ʁ • Android QͷPrivacyपΓͷมߋͷӨڹΛड͚ ͳ͍Α͏ͳಛݖͷ࢓૊Έ͕ඞཁͩͬͨͷ͔ͳʔ ͱ͔ʁ • Privacy͸कΓͭͭɺϢʔβʹෆศΛ͔͚ͳ͍ ͨΊͱ͔ʁ • Ϣʔβ͕ೝΊͨΞϓϦ͸͋Δఔ౓༏۰͞ΕΔ

Slide 20

Slide 20 text

Ͳ͏΍ͬͯRoleΛ༩͑Δ͔ • RoleΛ෇༩ͯ͠΄͍͠ΞϓϦ͕ɺʮRole෇༩ ͍ͯͩ͘͠͞ʂʯͱϢʔβʹ͓ئ͍͢Δ

Slide 21

Slide 21 text

Roleͷ෇༩ΛϦΫΤετ͢Δ • RoleManager#createRequestRoleIntentͰ ࡞੒ͨ͠IntentΛstartActivityForResult͢Δ • onActivityResultͰϦΫΤετͷ݁ՌΛड͚ औΔ

Slide 22

Slide 22 text

Roleͷ෇༩ΛϦΫΤετ͢Δ

Slide 23

Slide 23 text

Roleͷ෇༩ΛϦΫΤετ͢Δ

Slide 24

Slide 24 text

Roles Tips • adb shell dumpsys roleͰఆٛ͞Ε͍ͯΔ Role΍ɺ֤RoleΛ༩͑ΒΕͨΞϓϦ͕֬ೝͰ ͖Δ

Slide 25

Slide 25 text

Settings panels • ಛఆͷઃఆΛγʔϜϨεʹදࣔͰ͖Δ • ྫ͑͹NFCΛONͨ͠Γ͢ΔͷʹɺઃఆΞϓϦΛ ։͘ͷͰ͸ͳ͘ɺSettings PanelΛ։͘ • Ϣʔβ͸ΞϓϦ͔Β཭୤͢Δ͜ͱͳ͘ɺઃఆΛ ม͑ΒΕΔ

Slide 26

Slide 26 text

ωοτϫʔΫͷSettings panelΛ։͘ val i = Intent(Settings.Panel.ACTION_INTERNET_CONNECTIVITY) startActivityForResult(i)

Slide 27

Slide 27 text

ωοτϫʔΫͷSettings panelΛ։͘

Slide 28

Slide 28 text

Settings panels • UI෦෼͕SliceͰ࣮૷͞ΕͯΔ • ϥούʔ͕AndroidXͰಋೖ͞ΕΔΒ͍͠

Slide 29

Slide 29 text

Android Q Beta • ଞʹ΋৭Μͳมߋ͕ೖͬͯΔͷͰɺͥͻެࣜ υΩϡϝϯτಡΜͰɺίʔυΛॻ͍ͯɺڍಈ Λ͔֬ΊͯΈ͍ͯͩ͘͞ʂ • ެࣜυΩϡϝϯτ • https://developer.android.com/preview

Slide 30

Slide 30 text

Thanks!!