Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
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
TestingOsaka6_Ozono
o3
0
150
大体よく分かるscala.collection.immutable.HashMap ~ Compressed Hash-Array Mapped Prefix-tree (CHAMP) ~
matsu_chara
2
220
【CA.ai #3】Google ADKを活用したAI Agent開発と運用知見
harappa80
0
310
堅牢なフロントエンドテスト基盤を構築するために行った取り組み
shogo4131
8
2.3k
非同期処理の迷宮を抜ける: 初学者がつまづく構造的な原因
pd1xx
1
710
tsgolintはいかにしてtypescript-goの非公開APIを呼び出しているのか
syumai
6
2.2k
DevFest Android in Korea 2025 - 개발자 커뮤니티를 통해 얻는 가치
wisemuji
0
140
【CA.ai #3】ワークフローから見直すAIエージェント — 必要な場面と“選ばない”判断
satoaoaka
0
240
tparseでgo testの出力を見やすくする
utgwkk
2
220
AIコーディングエージェント(skywork)
kondai24
0
170
안드로이드 9년차 개발자, 프론트엔드 주니어로 커리어 리셋하기
maryang
1
110
SwiftUIで本格音ゲー実装してみた
hypebeans
0
350
Featured
See All Featured
Code Reviewing Like a Champion
maltzj
527
40k
Bash Introduction
62gerente
615
210k
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
[SF Ruby Conf 2025] Rails X
palkan
0
510
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
7.9k
A designer walks into a library…
pauljervisheath
210
24k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
jQuery: Nuts, Bolts and Bling
dougneiner
65
8.2k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
10
730
A Tale of Four Properties
chriscoyier
162
23k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
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