$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
WWDCに学ぶライブコーディングwithCoreNFC/livecoding_with_wwd...
Search
fromkk
June 30, 2017
Programming
2
3.4k
WWDCに学ぶライブコーディングwithCoreNFC/livecoding_with_wwdc_and_corenfc
LIFULLさんのWWDC - Developer's Livingというイベントで発表した内容です。
fromkk
June 30, 2017
Tweet
Share
More Decks by fromkk
See All by fromkk
note社の全員野球で品質向上活動について / note_qa_challenge #iOS_test_teatime
fromkk
3
1.9k
1年分のデータが見たいと言われてやったこと/yearly_data_with_note
fromkk
0
1k
note iOSチームの自動化 ver.2021/automation_with_iOS_team_on_note_ver2021
fromkk
0
2k
Bitrise体験会説明資料/bitrise_explore
fromkk
1
1.1k
noteのiOSアプリで実装したアクセシビリティの全て #iosdc #a /a11y_with_iOS_App_on_note
fromkk
2
4.3k
dSYMのアップロードで SPMを活用する/use_spm_with_upload_dsyms
fromkk
1
3.1k
Bitriseのリモートアクセス機能 #bitrise_meetup/remote_access_of_bitrise
fromkk
1
630
note社でのMagic Pod活用事例 #af_iosdc/magicpod_with_note
fromkk
2
11k
iOSには無いmacOS独自機能をCatalystで実装する #iosdc #d/make_macos_apps_with_catalyst
fromkk
9
2.2k
Other Decks in Programming
See All in Programming
これだけで丸わかり!LangChain v1.0 アップデートまとめ
os1ma
6
1.8k
Giselleで作るAI QAアシスタント 〜 Pull Requestレビューに継続的QAを
codenote
0
190
Go コードベースの構成と AI コンテキスト定義
andpad
0
130
DevFest Android in Korea 2025 - 개발자 커뮤니티를 통해 얻는 가치
wisemuji
0
140
Building AI Agents with TypeScript #TSKaigiHokuriku
izumin5210
6
1.3k
テストやOSS開発に役立つSetup PHP Action
matsuo_atsushi
0
160
Github Copilotのチャット履歴ビューワーを作りました~WPF、dotnet10もあるよ~ #clrh111
katsuyuzu
0
110
手が足りない!兼業データエンジニアに必要だったアーキテクチャと立ち回り
zinkosuke
0
700
tsgolintはいかにしてtypescript-goの非公開APIを呼び出しているのか
syumai
6
2.2k
Why Kotlin? 電子カルテを Kotlin で開発する理由 / Why Kotlin? at Henry
agatan
2
7.2k
AIコーディングエージェント(skywork)
kondai24
0
170
AIエージェントを活かすPM術 AI駆動開発の現場から
gyuta
0
420
Featured
See All Featured
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
970
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
9
1k
Rebuilding a faster, lazier Slack
samanthasiow
84
9.3k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
54k
How to train your dragon (web standard)
notwaldorf
97
6.4k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
Build The Right Thing And Hit Your Dates
maggiecrowley
38
3k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Mobile First: as difficult as doing things right
swwweet
225
10k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.8k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
1
100
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.5k
Transcript
WWDCʹֶͿϥΠϒίʔ σΟϯά (+CoreNFC) WWDC - Developer's Living 2017/06/30 1
Profile Kazuya Ueoka Timers inc.ͷiOSΤϯδχΞ Twitter: @fromkk Github: fromkk Qiita:
fromkk 2
օ͞Μ͏WWDCͰൃද ͞Εͨ৽ػೳνΣοΫ ͯ͠·͢ΑͶʁ 3
طʹຊޠͰͷࢿྉ͔ ͳΓଟ͍ͷͰԿൃද͢Ε ྑ͍Μͩ 4
͍͔ͭ͘ൃද͖ͯ͠·ͨ͠ 4 Swift 4͔Β࣮͞ΕΔCodable at AKIBA.swift 4 # Type ʹDrag
and Dropͷ࣮Λͯ͠Έͨ at WWDC After Party @Ebisu 4 Depth APIͰ؆қΫϩϚΩʔ߹ at GEEK GARAGE iOS vol3 5
͕ 6
ϥΠϒίʔσΟϯάͬͯ ϋʔυϧߴ͍ 7
۩ମతʹ 4 ొஃͬͯۓு͢Δ 4 ϛε͖ͭͷ 4 ൃද͢Δ͔Βʹ͏·͘Γ͍ͨ 8
ϥΠϒίʔσΟϯά͢Δ࣌ͬͯ 4 Ұ୴खݩͷXcodeͰͤ͞Δ 4 ͍ͨ͠༰ʹԊͬͯଞͷςΩετΤσΟλʹΧοτˍ ϖʔετ 4 ొஃ͢Δ࣌ʹॱ൪ʹίϐϖ Έ͍ͨͳΠϝʔδʢθϩ͔Βॻ͍͍ͯΔํଞͷํ๏ͷํ ͨ͘͞Μ͍Βͬ͠Ό͍·͢ʣ
9
WWDCϥΠϒίʔσΟϯάͰͷൃදͷๅݿ Ή͠Ζ͜ΜͳʹϥΠϒίʔσΟϯάͷൃද͕ଟ͍ΧϯϑΝϨϯ ε͍͠ؾ͕͢Δ 10
ͦͷதͰ 227 Data Delivery with Drag and Drop ͷTanu Singhal͞ΜͷϥΠϒίʔσΟϯάͷํ๏ʹײΛड
͚ͨͷͰհ͠·͢ 11
ख๏؆୯ 12
ίϝϯτʹ൪߸ΛৼͬͯίʔυεχϖοτͷγϣʔτΧοτʹಉ͡൪߸Λৼ͓͚ͬͯͩ͘ 13
Xcodeͷίʔυεχϖοτͷొํ ๏ 4 ͍͔ͭ͋͘Δ͕ઌʹίʔυΛॻ͍ͯίʔυεχϖοτͷ ॴʹυϥοά&υϩοϓ͕؆୯ 4 Completion shortcut Λઃఆ͢Εݺͼग़͠؆୯ 14
͓·͚ 15
CoreNFC 4 WWDCظؒதεέδϡʔϧʹະܝࡌ͕ͩηογϣϯಈը ͷΈެ։ 4 iOS 11͔Βղ์͞ΕͨಡΈऔΓͷػೳͷΈͷframework 4 ରԠܗࣜ: NDEF
4 λά1ʙ5ʹରԠ 4 ݱ࣌ͰiPhone 7ͱ7 PlusͷΈରԠ 16
ར༻ํ๏ 4 iTunes ConnectͰAppIDͷNFC Tag ReadingΛONʹ͢ Δ 17
ར༻ํ๏ 4 EntitlementsʹҎԼΛՃ <key>com.apple.developer.nfc.readersession.formats</key> <array> <string>NDEF</string> </array> 18
ར༻ํ๏ 4 Info.plistʹҎԼΛՃͯ͠ϢʔβʔʹڐՄΛಘΔ <key>NFCReaderUsageDescription</key> <string>Scan NFC tags message!</string> 19
ར༻ํ๏ import CoreNFC let session = NFCNDEFReaderSession(delegate: self, queue: nil,
invalidateAfterFirstRead: true) session.begin() 20
ར༻ํ๏ extension NFCViewController: NFCNDEFReaderSessionDelegate { func readerSession(_ session: NFCNDEFReaderSession, didDetectNDEFs
messages: [NFCNDEFMessage]) { messages.forEach { (message) in message.records.forEach { let payload: String = String(data: $0.payload, encoding: .utf8) ?? "" print("payload", payload) } } } func readerSession(_ session: NFCNDEFReaderSession, didInvalidateWithError error: Error) { print(error) } } 21
Recap 4 ϥΠϒίʔσΟϯάʹXcodeͷίʔυεχϖοτΛ׆༻ ! 4 ίϝϯτʹॱ൪Λهࡌͯ͠ίʔυεχϖοτͷγϣʔτ Χοτͱ߹ΘͤΔͱϛε͠ʹ͍͘" 4 ίϝϯτΛಡΉ͚ͩͰ؆୯ͳઆ໌͕ग़དྷΔ# 4
CoreNFCλάΛಡΉ͚ͩͳΒ؆୯$ 22
͜ΕͰϥΠϒίʔσΟϯάා͘ͳ͍! 23
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠! 24