web-dev-qa-db-ja.com

iPhone 6 / iOS 8でNFCタグを読む

AppleがiPhone 6にNFCチップを搭載すると発表したところで、iOS 8がiPhone 6デバイス用のRFIDタグの読み取り/検出を有効にするかどうかを知っている人はいますか。これについて共有するための詳細がありますか。

96
Bryan C

IPhone 6/6 s/6 +は、パッシブNFCタグ(別名、ディスカバリーモード)を読み取るようには設計されていません。このトピックには誤った情報がたくさんありますので、開発者が検討するための具体的な情報を提供することを考えました。 NFCタグの読み取りサポートがないのは、ソフトウェアではなくハードウェアが原因です。その理由を理解するには、NFCの機能を理解する必要があります。 NFCは、負荷変調によって機能します。これは、質問機(PCD)が受動ターゲット(PICC)を付勢する搬送磁場を放出することを意味する。この搬送波フィールドによって生成された電位を用いて、ターゲットは質問機から来るデータを復調し、この全く同じフィールド上でデータを変調することによって応答することができる。ここで重要なのは、ターゲットが自分自身のフィールドを作成することは決してないということです。

IPhone 6の分解と部品リストを見ると、非常に小さいNFCループアンテナの存在と、 AS3923ブースターIC の使用がわかります。このデザインは カスタムmicroSDまたはSIMカード 古い携帯電話で支払いができるようにするためのものです。これは、携帯電話が高電力非接触POS端末にカードエミュレート資格を提示するアプリケーションの種類です。 POS端末はリーダーとして機能し、AS3923チップの助けを借りてiPhone 6を起動します。 AS3923ブロック図は、RXおよびTX変調がリーダーデバイスによって提示された信号からどのようにブーストされるかを明確に示しています。言い換えれば、iPhone6はフィールドを提供することを意図しておらず、ただ1つに反応するためのものです。それがそのデザインがNFCカードエミュレーションとおそらくはPeer-2-Peerのためだけに意図されているが、間違いなくDiscoveryにタグを付けられない理由です。

AS3923 booster IC

HW accessories を使ってiPhone6でタグDiscoveryを実現するにはいくつかの選択肢があります。私はこれらの統合と、開発者がどのようにしてソリューションを構築できるかについて話します このブログ記事 。私たちの低消費電力リーダーの設計は、ほとんどの開発者が考えていないモバイルエンゲージメントのための興味深い機会を開きます。

情報開示:私は Flomio、Inc。 の創設者で、アクセス制御から支払いまでの範囲のアプリケーションに近接IDハードウェア、ソフトウェア、およびサービスを提供するTechStarsの会社です。

更新: このうわさ 、もし本当なら、iPhoneがNFCタグ発見モードを実質的にサポートする可能性を開くでしょう。オールガラス設計は、現在のiPhoneの背面の金属のようにNFCアンテナと干渉することはありません。私達はこのデザインアプローチを試みました - より安い材料ではありますが - 私たちのカスタムリーダーデザインのいくつかで成功したので、この改善を楽しみにしています。

更新:iOS11はiPhone7/7以降の「NFCリーダーモード」のサポートを発表しました。 詳細はこちら 。アプリがフォアグラウンドにある間(バックグラウンド検出なし)、APIはNDEFメッセージ(ISO 7816 APDUなし)の読み取りのみをサポートします。 2017年秋に予定されています... WWDC基調講演のスクリーンショットをチェックしてください。

enter image description here

167
grundyoso

9月9日午後3時30分以降に入手可能なiOS 8のドキュメントを掘り下げてみると、開発者がNFCコントローラにアクセスしてNFC操作を実行することについては言及されていません。これには、タグの読み取り、タグの書き込み、ペアリング、支払い、タグのエミュレーションなどが含まれます。そのNXPコントローラを考えると、ハードウェアにはこれらの機能を実行する機能があります。彼らは、ホテルのゲストがNFCで彼らの部屋のドアを開くことを可能にした時計のためのサードパーティのアプリについて言及しました。これはNFCの古典的なユースケースであり、NFCコントローラが開発者にいつか開放されることを示しています。覚えておいて、時計は2015年第1四半期までリリースされることになっていませんでした。だから今のところ私はそれが閉じられていると言うでしょうがすぐに開くでしょう。米国の一般消費者向けの非接触型決済の「新しさ」と最近のセキュリティ侵害を考えると、Appleはこれをしばらくの間閉鎖したままにしたいと考えています。

ディスクロージャー: GoToTags のCEOで、Appleに明らかに既得権があるNFC会社で、開発者にNFCを公開しました。

---訂正と更新---

ホテルのアプリは実際にはNFCではなくBluetoothを使用しています。 NFCは、ドアロックを解除するためにまだよく使用されています。この1つの例ではありません。 NFCは、ウォッチにNFCコントローラーが開いている場合に使用できます。

私はAppleがこれらすべてを認識していることを知っていますし、彼らのトップ開発者や関係者とこれについて話し合っています。タグを読むことに対するサポートの欠如を押し戻してください。過去によくあることだが、私はAppleが結局これを支払いに関連しない機能(タグの読み取り、ペアリング)のために開発者に開放することを期待している。私はAppleがこれまでに他の財布を許可するとは思わない。ファイル共有はおそらくAirDropにも任されるでしょう。

--- 2016年3月23日に更新---

私は継続的にこのトピックに関する最新情報を求められています、しばしばこの記事を参照している人々と一緒に。 AppleがiPhone SEをリリースしたことで、Appleがなぜタグの読み取りをまだサポートしていなかったのか、多くの人が再び尋ねています。要約すると、Appleは今のところNFCの他のユースケースよりも成功しているApple Payに焦点を当てています。 AppleはApple Payからたくさんのお金を稼ぐことができ、そしてNFCのための他の用途から得ることはもっと少ない。消費者の信頼とNFCおよびApple PayによるセキュリティがApple Payを危険にさらさないようなものであると彼らが感じる場合、AppleはおそらくNFCタグの読み取りを開くでしょう。さらなる情報 ここ

--- 2017年5月24日に更新---

ギリシャの開発者は、iPhone 6sにNFCプライベートフレームワークを介してNFCタグを読み取らせるためにハッキングしました。 詳細情報とビデオ 。これは長期的な解決策ではありませんが、いくつかの未解決の問題についてのガイダンスを提供します。NFCタグに電力を供給するのに十分な電力がiPhoneのNFCコントローラにありますか。答えははいのように見えます。最初のテストから範囲は数cmで、それほど悪くありません。それはまた力が調整可能であるかもしれません;これは現在調査中です。これによる影響は重要です。古いモデルの電話がタグの読み書きに十分なRFパワーを持っている場合、AppleがSDKを開くと、NFCタグを読むことができる100MのiPhoneがあることになります。新しいiPhoneだけができました。

43
craigtadlock

現時点では、NFCコントローラへのオープンアクセスはありません。現在iOS 8 NFC SDKにはGM AP​​Iがありません - これはNFC機能が起動時にApple Payに制限されることを示します。これが私たちの理解です。

明らかに、iPhone 6の中のNXPチップはもっと多くのことができるだろう、それでこれは追加の機能(ペアリング、タグスキャン/エンコーディング)がリリースのためにあるいは近い将来追加されないことを意味しない。

5
Harry

NFCタグを読み取る機能がiOS 11に追加されました。これはiPhone 7と7 plusだけをサポートします。

テストドライブとして私はこれを作った レポ

まず、NFCNDEFReaderSessionクラスを起動する必要があります。

var session: NFCNDEFReaderSession? 
session = NFCNDEFReaderSession(delegate: self, queue: nil, invalidateAfterFirstRead: false)

それから、セッションを開始する必要があります。

session?.begin()

そして終わったら:

session?.invalidate()

デリゲート(自己が実装する必要があります)には、基本的に2つの機能があります。

func readerSession(_ session: NFCNDEFReaderSession, didDetectNDEFs messages: [NFCNDEFMessage])
func readerSession(_ session: NFCNDEFReaderSession, didInvalidateWithError error: Error)

これが私の参照です Apple docs

2
zombie

現時点で、Appleはnotこれらの記事のような多くの記事で示唆されているように、組み込みのNFCチップへのアクセスを開発者に開放しました。

リストは続きます。主な理由は(過去にiPhoneに追加された他の多くのハードウェア機能と同様に)Appleが開発者に彼らが望むことをさせるためのAPIを公開する前にそのような技術のセキュリティを確保したいと思うことです。そのため、最初は内部的に自分のニーズにのみ使用されます(起動時のApple Payなど)。

「現時点では、NFCコントローラへのオープンアクセスはありません」と、NFCタグのプロバイダであるRapidNFCは述べています。 "現在iOS 8 NFC SDKにはGM AP​​Iがありません。

しかし、結局、私たちはみんながそのようなAPIを開発することに同意できると思います。それは時間の問題です。

2
m4rtin

現在入手可能な唯一の情報は、Apple Payがios 8で利用可能になるということですが、RFIDタグではなくNFCタグが特に検出/読み取り可能かどうかについては、何の問題もありません。

IMOはその可能性を許さないのは近視眼的な動きになるだろうが、実際にはそのお金はApple Payにある。開発者がそれらの機能にアクセスするのを必ずしも許可するわけではない。 。

…でも、最初の発表から約5時間が経ちました。

1
DonJohnII