Releases: treastrain/TRETJapanNFCReader
Releases · treastrain/TRETJapanNFCReader
3.0.0-alpha.11
Milestone
- Road to TRETNFCKit (Phase 11) https://github.com/treastrain/TRETJapanNFCReader/milestone/11?closed=1
What's Changed
- Create FeliCaStatusFlag.swift by @treastrain in #139
Full Changelog: 3.0.0-alpha.10...3.0.0-alpha.11
3.0.0-alpha.10
Milestone
- Road to TRETNFCKit (Phase 10) https://github.com/treastrain/TRETJapanNFCReader/milestone/10?closed=1
What's Changed
- Update some static properties for concurrency-safe by @treastrain in #134
- Remove
@_spi import
and addpackage
if needed by @treastrain in #135 - Support Swift 6 by @treastrain in #136
- Update actions environment by @treastrain in #137
- Replace to async sequence interface by @treastrain in #138
Full Changelog: 3.0.0-alpha.9...3.0.0-alpha.10
TRETNFCKit 3.0.0-alpha.9
Milestone
- Road to TRETNFCKit (Phase 9) https://github.com/treastrain/TRETJapanNFCReader/milestone/9?closed=1
Topic
The new reader session wrappers include a new instance property that provides the reader session's events via AsyncSequence
, inspired by the CardSession.eventStream
, the new API provided for card emulation in Core NFC on iOS 17.4+.
Example
import SwiftUI
import TRETNFCKit_Async
struct FeliCaReaderView: View {
@State private var readerSession: AsyncNFCTagReaderSession?
var body: some View {
List {
Button {
readerSession = AsyncNFCTagReaderSession(pollingOption: .iso18092)
} label: {
Text("Read")
}
.disabled(readerSession != nil)
}
.task(id: readerSession == nil) {
defer { readerSession = nil }
guard let readerSession else { return }
guard AsyncNFCTagReaderSession.readingAvailable else { return }
for await event in readerSession.eventStream {
switch event {
case .sessionIsReady:
readerSession.alertMessage = "Place the tag on a flat, non-metal surface and rest your iPhone on the tag."
readerSession.start()
case .sessionStarted:
break
case .sessionBecomeActive:
break
case .sessionDetected(let tags):
do {
let tag = tags.first!
guard case .feliCa(let feliCaTag) = tag else { throw NFCReaderError(.readerErrorInvalidParameter) }
try await readerSession.connect(to: tag)
let (idm, systemCode) = try await feliCaTag.polling(systemCode: Data([0xFE, 0x00]), requestCode: .systemCode, timeSlot: .max1)
readerSession.alertMessage = "\(systemCode as NSData)\n\(idm as NSData)"
readerSession.stop()
} catch {
readerSession.stop(errorMessage: error.localizedDescription)
}
case .sessionCreationFailed(let reason):
print(reason)
case .sessionInvalidated(let reason):
print(reason)
}
}
}
.navigationTitle("FeliCa Reader")
}
}
What's Changed
- Add
AsyncNFCReaderSession
s by @treastrain in #132 - Add macos-14 on GitHub Actions by @treastrain in #133
Full Changelog: 3.0.0-alpha.8...3.0.0-alpha.9
TRETNFCKit 3.0.0-alpha.8
Milestone
- Road to TRETNFCKit (Phase 8) https://github.com/treastrain/TRETJapanNFCReader/milestone/8?closed=1
What's Changed
- 存在型に
any
を付ける(Swift 5.9) by @treastrain in #130 - Update to Xcode 15 (Swift 5.9, visionOS, CI) by @treastrain in #131
Full Changelog: 3.0.0-alpha.7...3.0.0-alpha.8
TRETNFCKit 3.0.0-alpha.7
Projects
- Road to TRETNFCKit (Phase 7) https://github.com/treastrain/TRETJapanNFCReader/projects/11
What's Changed
NFCReaderSessionAfterBeginProtocol.restartPolling()
を unavailable にする by @treastrain in #123- CI に Example App のビルド、Ubuntu でのビルド・テスト実行を追加 by @treastrain in #124
- 存在型に
any
を付ける by @treastrain in #125 - Update CI to macOS Ventura & Xcode 14.3 by @treastrain in #127
- Actor-wrapped
NFCNDEFReaderSession
,NFCTagReaderSession
, andNFCVASReaderSession
by @treastrain in #126 - Use Swift tools version 5.8 by @treastrain in #128
Full Changelog: 3.0.0-alpha.6...3.0.0-alpha.7
TRETNFCKit 3.0.0-alpha.6
Projects
- Road to TRETNFCKit (Phase 6) https://github.com/treastrain/TRETJapanNFCReader/projects/10
What's Changed
NFCReaderSessionDelegate
のメソッドのTaskPriority
を指定できるようにする by @treastrain in #113NFCReaderSessionable.AfterBeginProtocol
のany NFCReaderSessionAfterBeginProtocol
を削除する by @treastrain in #114NDEFMessage.ReaderSessionProtocol
のany NFCNDEFMessageReaderSessionProtocol
を削除する by @treastrain in #115NDEFTag.ReaderSessionProtocol
のany NFCNDEFTagReaderSessionProtocol
を削除する by @treastrain in #116NativeTag.ReaderSessionProtocol
のany NFCNativeTagReaderSessionProtocol
を削除する by @treastrain in #117FeliCaTagReader.ReaderSessionProtocol
のany FeliCaTagReaderSessionProtocol
を削除する by @treastrain in #118ISO7816TagReader.ReaderSessionProtocol
のany ISO7816TagReaderSessionProtocol
を削除する by @treastrain in #119ISO15693TagReader.ReaderSessionProtocol
のany ISO15693TagReaderSessionProtocol
を削除する by @treastrain in #120MiFareTagReader.ReaderSessionProtocol
のany MiFareTagReaderSessionProtocol
を削除する by @treastrain in #121_NFCTagTypeOpaqueTypeBuilderProtocol
に準拠するオブジェクトの見直し by @treastrain in #122
Full Changelog: 3.0.0-alpha.5...3.0.0-alpha.6
TRETNFCKit 3.0.0-alpha.5
Projects
- Road to TRETNFCKit (Phase 5) https://github.com/treastrain/TRETJapanNFCReader/projects/9
What's Changed
NFCReader<NDEFMessage>
向けのSwiftUI.ViewModifier
を追加 by @treastrain in #104NFCReader<NDEFTag>
向けのSwiftUI.ViewModifier
を追加 by @treastrain in #105NFCReader<NativeTag>
向けのSwiftUI.ViewModifier
を追加 by @treastrain in #106FeliCaTagReader
向けのSwiftUI.ViewModifier
を追加 by @treastrain in #107ISO7816TagReader
向けのSwiftUI.ViewModifier
を追加 by @treastrain in #108ISO15693TagReader
向けのSwiftUI.ViewModifier
を追加 by @treastrain in #109MiFareTagReader
向けのSwiftUI.ViewModifier
を追加 by @treastrain in #110- Update samples and README by @treastrain in #112
Full Changelog: 3.0.0-alpha.4...3.0.0-alpha.5
TRETNFCKit 3.0.0-alpha.4
Projects
- Road to TRETNFCKit (Phase 4) https://github.com/treastrain/TRETJapanNFCReader/projects/8
What's Changed
- Info.plist Checker の導入 by @treastrain in #103
Full Changelog: 3.0.0-alpha.3...3.0.0-alpha.4
TRETNFCKit 3.0.0-alpha.3
Projects
- Road to TRETNFCKit (Phase 3) https://github.com/treastrain/TRETJapanNFCReader/projects/7
What's Changed
- ISO7816TagReader を追加 by @treastrain in #99
- ISO15693TagReader を追加 by @treastrain in #100
- MiFareTagReader を追加 by @treastrain in #101
- Update syntax and MiFare by @treastrain in #102
Full Changelog: 3.0.0-alpha.2...3.0.0-alpha.3
TRETNFCKit 3.0.0-alpha.2
Projects
- Road to TRETNFCKit (Phase 2) https://github.com/treastrain/TRETJapanNFCReader/projects/6
What's Changed
- FeliCaTagReader を追加 by @treastrain in #97
- Update syntax by @treastrain in #98
Full Changelog: 3.0.0-alpha.1...3.0.0-alpha.2