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

キャッチアップ Android 13 / Catch up Android 13

キャッチアップ Android 13 / Catch up Android 13

TechFeed Conference 2022
https://techfeed.io/events/techfeed-conference-2022

次の Android バージョンである Android 13 の機能について紹介します。

Avatar for Yuki Anzai

Yuki Anzai

May 14, 2022
Tweet

More Decks by Yuki Anzai

Other Decks in Technology

Transcript

  1. /PUJGJDBUJPO༻ͷSVOUJNFQFSNJTTJPO w /PUJ fi DBUJPOΛૹΔͷʹQFSNJTTJPO͕ඞཁʹ w ΞϓϦΛΠϯετʔϧ͢Δͱ w "OESPJE·ͰσϑΥϧτͰ/PUJ fi

    DBUJPOΛૹΕΔ w "OESPJE͔ΒσϑΥϧτͰ͸/PUJ fi DBUJPOΛૹΕͳ͍ʢ1FSNJTTJPO ͕ڐՄ͞Ε͍ͯͳ͍ʣ 
  2. /PUJGJDBUJPO༻ͷSVOUJNFQFSNJTTJPO w UBSHFU4EL7FSTJPO"OESPJE w ৽͘͠ΠϯετʔϧɺΠϯετʔϧ͞Εͨঢ়ଶͰ ʹ04Ξοϓσʔτ w /PUJ fi DBUJPODIBOOFM͕࡞ΒΕͨ͋ͱͰ࠷ॳͷ

    "DUJWJUZ͕։࢝͞ΕΔͱ͖PS"DUJWJUZΛ։࢝͠ ͯ࠷ॳͷ/PUJ fi DBUJPODIBOOFMΛ࡞ͬͨͱ͖ʹ 1FSNJTTJPOμΠΞϩά͕දࣔ͞ΕΔ 
  3. "OESPJEҎ߱ΛUBSHFUͱ͢ΔΞϓϦʹӨڹ͢Δมߋ w GPSFHSPVOETFSWJDFͷOPUJ fi DBUJPOʹର͢Δ/PUJ fi DBUJPOQFSNJTTJPOͷӨڹ w OFBSCZ8J'JEFWJDFT༻ͷ৽͍͠SVOUJNFQFSNJTTJPO w

    3&"%@&95&3/"-@4503"(& 83*5&@&95&3/"-@4503"(& QFSNJTTJPOͷഇࢭ w όοΫάϥ΢ϯυͰCPEZTFOTPSTΛ࢖͏৔߹৽͍͠QFSNJTTJPO͕ඞཁʹ w *OUFOU fi MUFSTCMPDLOPONBUDIJOHJOUFOUT w #BUUFSZ3FTPVSDF6UJMJ[BUJPO w .FEJBDPOUSPMTEFSJWFEGSPN 1MBZCBDL4UBUF  IUUQTEFWFMPQFSBOESPJEDPNBCPVUWFSTJPOTCFIBWJPSDIBOHFT
  4. "OESPJEҎ߱ΛUBSHFUͱ͢ΔΞϓϦʹӨڹ͢Δมߋ w GPSFHSPVOETFSWJDFͷOPUJ fi DBUJPOʹର͢Δ/PUJ fi DBUJPOQFSNJTTJPOͷӨڹ w OFBSCZ8J'JEFWJDFT༻ͷ৽͍͠SVOUJNFQFSNJTTJPO w

    3&"%@&95&3/"-@4503"(& 83*5&@&95&3/"-@4503"(& QFSNJTTJPOͷഇࢭ w όοΫάϥ΢ϯυͰCPEZTFOTPSTΛ࢖͏৔߹৽͍͠QFSNJTTJPO͕ඞཁʹ w *OUFOU fi MUFSTCMPDLOPONBUDIJOHJOUFOUT w #BUUFSZ3FTPVSDF6UJMJ[BUJPO w .FEJBDPOUSPMTEFSJWFEGSPN 1MBZCBDL4UBUF  IUUQTEFWFMPQFSBOESPJEDPNBCPVUWFSTJPOTCFIBWJPSDIBOHFT
  5. "OESPJEҎ߱ΛUBSHFUͱ͢ΔΞϓϦʹӨڹ͢Δมߋ w GPSFHSPVOETFSWJDFͷOPUJ fi DBUJPOʹର͢Δ/PUJ fi DBUJPOQFSNJTTJPOͷӨڹ w OFBSCZ8J'JEFWJDFT༻ͷ৽͍͠SVOUJNFQFSNJTTJPO w

    3&"%@&95&3/"-@4503"(& 83*5&@&95&3/"-@4503"(& QFSNJTTJPOͷഇࢭ w όοΫάϥ΢ϯυͰCPEZTFOTPSTΛ࢖͏৔߹৽͍͠QFSNJTTJPO͕ඞཁʹ w *OUFOU fi MUFSTCMPDLOPONBUDIJOHJOUFOUT w #BUUFSZ3FTPVSDF6UJMJ[BUJPO w .FEJBDPOUSPMTEFSJWFEGSPN 1MBZCBDL4UBUF  IUUQTEFWFMPQFSBOESPJEDPNBCPVUWFSTJPOTCFIBWJPSDIBOHFT
  6. "OESPJEҎ߱ΛUBSHFUͱ͢ΔΞϓϦʹӨڹ͢Δมߋ w GPSFHSPVOETFSWJDFͷOPUJ fi DBUJPOʹର͢Δ/PUJ fi DBUJPOQFSNJTTJPOͷӨڹ w OFBSCZ8J'JEFWJDFT༻ͷ৽͍͠SVOUJNFQFSNJTTJPO w

    3&"%@&95&3/"-@4503"(& 83*5&@&95&3/"-@4503"(& QFSNJTTJPOͷഇࢭ w όοΫάϥ΢ϯυͰCPEZTFOTPSTΛ࢖͏৔߹৽͍͠QFSNJTTJPO͕ඞཁʹ w *OUFOU fi MUFSTCMPDLOPONBUDIJOHJOUFOUT w #BUUFSZ3FTPVSDF6UJMJ[BUJPO w .FEJBDPOUSPMTEFSJWFEGSPN 1MBZCBDL4UBUF  IUUQTEFWFMPQFSBOESPJEDPNBCPVUWFSTJPOTCFIBWJPSDIBOHFT
  7. ৽͍͠ػೳ w 1SFEJDUJWFCBDLHFTUVSF w 5IFNFEBQQJDPOT w ৽͍͠1IPUP1JDLFS w ΞϓϦ͝ͱͷݴޠઃఆ w

    ೔ຊޠͷંΓฦ͠Ґஔͷվળ w ʜ  IUUQTEFWFMPQFSBOESPJEDPNBCPVUWFSTJPOTGFBUVSFT
  8. ৽͍͠1IPUP1JDLFS  private val photoPickerLauncher = registerForActivityResult( object : ActivityResultContract<String,

    Uri?>() { @CallSuper override fun createIntent(context: Context, input: String): Intent { return Intent(MediaStore.ACTION_PICK_IMAGES) .setType(input) } override fun parseResult(resultCode: Int, intent: Intent?): Uri? { return intent.takeIf { resultCode == Activity.RESULT_OK }?.data } } ) { // ... } IUUQTEFWFMPQFSBOESPJEDPNBCPVUWFSTJPOTGFBUVSFTQIPUPQJDLFS
  9. <manifest …> <application … android:localeConfig="@xml/locales_config"> … </application> </manifest> <?xml version="1.0"

    encoding="utf-8"?> <locale-config xmlns:android="http://schemas.android.com/apk/res/android"> <locale android:name="ja"/> <locale android:name="fr"/> <locale android:name="en"/> </locale-config> SFTYNMMPDBMT@DPO fi HYNM ΞϓϦ͝ͱͷݴޠઃఆ  "OESPJE.BOJGFTUYNM