Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
iOS26 オーディオ録音新機能 - iOS26 AVInputPickerInteraction
Search
notoroid
February 01, 2026
Programming
110
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
iOS26 オーディオ録音新機能 - iOS26 AVInputPickerInteraction
札幌iPhone勉強会2026年2月プレゼンテーション資料
notoroid
February 01, 2026
More Decks by notoroid
See All by notoroid
Testflight - iOS27 でのAppleIntelligenceの強化
notoroid
0
37
New_features_in_Xcode26.3_to_Xcode26.4.pdf
notoroid
0
86
Info.plist - after Xcode26.
notoroid
0
74
GeometryReader - SwiftUI
notoroid
0
110
iOS 26 SDKの新機能 (liquid抜き) - iOS26orLaterUpdateAndSceneForUIKit
notoroid
0
240
UIテスト自動化サポート- Testbed for XCUIAutomation practice
notoroid
0
240
UIViewController - Interactive PopGesture
notoroid
0
110
Xcodeショートカット 2025年版
notoroid
0
130
ZIPでくれ - Apple謹製 geocoding/ reverse geocoding
notoroid
0
190
Other Decks in Programming
See All in Programming
作って学ぶ、 JSX (TSX) ランタイムの基本
syumai
7
1.7k
Creating Composable Callables in Contemporary C++
rollbear
0
160
鹿野さんに聞く!『TypeScriptコードレシピ集』で磨く実践力
tonkotsuboy_com
2
700
なぜ型を書くのか? TSKaigi2026で改めて考える #tskaigi_smarthr
kajitack
0
140
ECSアプリログをFireLensでコスト削減しようとしたけど諦めた話 in Fargate×Node.js
akihisaikeda
2
4.2k
エンジニア向け会社紹介/Findy Company Profile
findyinc
6
350k
Vue × Nuxt × Oxc どこまで使える?実運用の現在地
andpad
0
300
jQueryをバージョンアップする前に使いたいjQuery Migrate
matsuo_atsushi
0
580
Honoでのサプライチェーン侵害対策 〜 3つのライブラリに学ぶ
yusukebe
7
1.4k
TypeScript+Orvalで実現する型安全かつ堅牢でスケーラブルなマルチチャネル通知基盤 / TSKaigi Night talks ~after conference~
d0riven
0
360
コンテキストの使い捨てをやめる — ビジネスルール駆動開発と miko —
ioki
0
230
Webフレームワークの ベンチマークについて
yusukebe
0
180
Featured
See All Featured
Scaling GitHub
holman
464
140k
30 Presentation Tips
portentint
PRO
1
330
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.8k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2.1k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5.9k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
1k
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
1
230
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
390
Ruling the World: When Life Gets Gamed
codingconduct
0
260
RailsConf 2023
tenderlove
30
1.5k
Transcript
J04ΦʔσΟΦԻ৽ػೳ "7*OQVU1JDLFS*OUFSBDUJPO ೳొཁ !OPUPSPJE J1IPOFΞϓϦ։ൃऀ݄
͢༰ w J04͔ΒͷΦʔσΟΦԻ৽ػೳ
͞ͳ͍༰ w J04ͷۭؒΦʔσΟΦؔ
w J04ͷΦʔσΟΦ৽ػೳ w J04J1BE04Ͱͷೖྗܦ࿏ͷબ w "JS1PETԻͰͷ্࣭ w ԻػೳΛΞϓϦʹΈࠐΉ ͓
ࣗݾհ w J1IPOFΞϓϦ։ൃऀ 9!OPUPSPJE w ΞϓϦ։ൃऀྺ ʙ w
ΞϓϦ࡞࢛ͬͯੈل 8JOEPXTΞϓϦʙJ04 w झຯήʔϜ ࣹਆܦ͕ਰ͑ͱͷർΕ͕ൈ͚ͳ͍ w ࠷ۙ༡ΜͩήʔϜ w εϓϥτΡʔϯ ରઓ૬ख͕ڧͯ͘উͯͳ͍
J04ͷΦʔσΟΦ৽ػೳ
Իೖྗͱ"* ݱࡏɺ"*͕Ͱ͖Δ͜ ͱͰจࣈى͜͠ҰൠϢʔ βʔ͕ͦͦ͑͜͜Δػೳͷ Ұͭɻ
"*PS"3͚ͳͷ͔
ΦʔσΟΦԻ͕ؔ ڧԽ͞Ε·ͨ͠
ΞϓϦͷԻԻػೳͷڧԽ w J04J1BE04Ͱͷೖྗܦ࿏ͷબ w "JS1PEͰͷԻ w ۭؒΦʔσΟΦͷΩϟϓνϟ w "VEJP.JY ۭؒΦʔσΟΦ͚
&OIBODFZPVSBQQ`TBVEJPSFDPSEJOHDBQBCJMJUJFT
ΞϓϦͷԻԻػೳͷڧԽ w J04J1BE04Ͱͷೖྗܦ࿏ͷબ w "JS1PEͰͷԻ w ۭؒΦʔσΟΦͷΩϟϓνϟ w "VEJP.JY ۭؒΦʔσΟΦ͚
&OIBODFZPVSBQQ`TBVEJPSFDPSEJOHDBQBCJMJUJFT
J04J1BE04Ͱͷೖྗܦ࿏ͷબ
J04Ҏ߱Ͱར༻Մೳ w "7,JUGSBNFXPSLʹՃ w 6*,JU͚ػೳ w 6**OUFSBDUJPOܦ༝Ͱ༻ w "7*OQVU1JDLFS*OUFSBDUJPO w
ೖྗܦ࿏มߋΞϓϦ͝ͱه w 4XJGU6*Ͱ༻͢Δʹ 6*7JFX3FQSFTFOUBCMF͕ඞཁ ೖྗܦ࿏มߋػೳ
"7*OQVU1JDLFS*OUFSBDUJPOͷ༻ import Foundation import AVFoundation import AVKit import UIKit class
ViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() // ηογϣϯʹొ let session = AVAudioSession.sharedInstance() internalInputPickerInteraction = AVInputPickerInteraction(audioSession: session) internalInputPickerInteraction?.delegate = self // Interaction Λొ let button = UIButton(type: .system) button.addInteraction(internalInputPickerInteraction) } @IBAction func onSelectMic(_ sender: Any) { inputPickerInteraction.present() } }
6**OUFSBDUJPO 6*7JFXʹ࠶ར༻ՄೳͳৼΔ͍ ΠϯλϥΫγϣϯ ΛՃ͢ΔͨΊͷϓϩτίϧ w J04͔Βར༻Մೳ w ϏϡʔͷλονॲཧδΣενϟʔॲཧΛɺϞδϡʔϧԽͯ͠࠶ར༻͘͢͢͠ ΔΈ w
6*%SBH*OUFSBDUJPO υϥοάυϩοϓ w 6*$POUFYU.FOV*OUFSBDUJPO ԡ͠ϝχϡʔ w 6*1PJOUFS*OUFSBDUJPO J1BEͷϙΠϯλʔରԠ w 6*&EJU.FOV*OUFSBDUJPO ฤूϝχϡʔ ίϐʔϖʔετͳͲ
4XJGU6*Ͱͷ"7*OQVU1JDLFS*OUFSBDUJPOΛར༻͢Δ 6*7JFX3FQSFTFOUBCMFΛ༻͢Δ w 4XJGU6*ʹ6*,JUΛஔ͢ΔͨΊͷ6*7JFX3FQSFTFOUBCMFΛ༻͢Δ w 6*LJUͷϘλϯΛ4XJGU6*ͷύʔπͱڞ༗͢Δඞཁ͕͋ΔͷͰελΠϧΛ߹Θ ͤΔඞཁ͕͋Δɻ
"JS1PETԻͰͷ্࣭
"JS1PETԻͰͷ্࣭ ԻͱϏσΦԻͰͷߴ࣭ըՄೳ w "7"VEJP4FTTJPOͰͷΦϓγϣϯࢦఆ w "7"VEJP4FTTJPO$BUFHPSZ0QUJPOTʹՃΦϓγϣϯ w CMVFUPPUI)JHI2VBMJUZ3FDPSEJOH w BMMPX#MVFUPPUI)'1ͷࡍʹ༗ޮ
w "7$BQUVSF4FTTJPOͰͷϓϩύςΟΛ༗ޮ w DPO fi HVSFT"QQMJDBUJPO"VEJP4FTTJPO'PS#MVFUPPUI)JHI2VBMJUZ3FDPSEJOH
ԻػೳΛΞϓϦʹΈࠐΉ
ೖྗઌ͕มߋͰ͖Δͱ͍͏͜ͱ
ΞϓϦ͕มߋΛݕ͢Δඞཁ͋Γ
ೖྗઌΛมߋ͢ΔͱϊʔυΛߏங͢Δඞཁ͋Γ "7'PVOEBUJPOΛ༻ͨ͠ྫ ϑϨʔϜϫʔΫˡ ˠϩδοΫ
ೖྗઌΛมߋ͢ΔͱϊʔυΛߏங͢Δඞཁ͋Γ "7'PVOEBUJPOΛ༻ͨ͠ྫ ϑϨʔϜϫʔΫˡ ˠϩδοΫ ೖྗΓସ͕͑4FTTJPOͰߦΘΕΔͱ 4FTTJPOҎԼͷߏங͠ͳ͓͕͠ඞཁ ϩδοΫೖྗܗࣜͷґଘʹ ΑΔ͕ಠཱ͍ͯ͠Δɻ
αϯϓϧίʔυ
HJUIVCDPNOPUPSPJE4JNQMF"VEJP3FDPSE w ೖྗબػೳ w Իػೳ w ΦʔσΟΦϨϕϧදࣔ w ߴԻ࣭#MVFUPPUIԻ w
࠶ੜػೳ ۙͭͷΈ 4JNQMF"VEJP3FDPSE
·ͱΊ wJ04Ҏ͔߱Βར༻ՄೳͳԻೖྗબػೳ͍ͭͯઆ໌͠·ͨ͠ w"JS1PETͷԻ্࣭ઃఆʹ͍ͭͯઆ໌͠·ͨ͠ w࣮ࡍͷΦʔσΟΦԻػೳͰͷԻೖྗมߋ࣌ͷҙʹ͍ͭͯઆ໌ ͠·ͨ͠
ࢀߟ OPUPSPJE4QFBLFS%FDL w ΞϓϦͷԻԻػೳͷڧԽ 88%$ϏσΦ"QQMF %FWFMPQFS w IUUQTEFWFMPQFSBQQMFDPN KQWJEFPTQMBZ XXED