「NFC Pay」はAndroid端末でも使えるようになるのか

この記事。

セブン-イレブン・ジャパンは18日、全国約2万店のセブン-イレブンにおいて、2020年6月からVisa/Mastercard/JCB/Amex/ダイナースの5つのクレジットカードブランドを用いたNFC Type-A/Bによる非接触決済サービスの取り扱いを開始予定であると発表した。実際の利用時は対応カードなどをレジのリーダーにかざすだけで、サインや暗証番号が不要で支払いが完了できる。

今後も訪日外国人の増加が期待されるなか、セブン-イレブンでも海外で主流の決済サービスに対応するのは重要なトピックと言える。

👉 ASCII.jp:セブン-イレブンで6月からクレカ5ブランドのNFC Payが使用可能に 

そうだよな。確かにクレカは差し込む方式だよな。

あれ?

Android端末を使った Google Pay や おサイフケータイ でクレカを直接登録して非接触のかざすだけで使えるようになるのかな?


👉 一目で分かる「Pay(ペイ)」の基本 

 

そもそもハードウェアは対応してるのか

ぼんやり、

「国内版Androidはガラパゴス仕様チップNFC=FeliCa」で海外版のグルーバルのNFCと違う。

と認識してましたが。

こんな Pixel公式説明もあります。

日本で購入された Pixel 4、Pixel 3a、Pixel 3 スマートフォンの場合は、NFC と同じ箇所に FeliCa チップが取り付けられています。

👉 Pixel スマートフォンのハードウェアの図 - Pixel Phone ヘルプ 

これを見る限り、「ハードウェア的なNFC」は、国内版と海外版で違うような説明に見えますが、しかし。

Why is Google turning off FeliCa on Pixel models outside of Japan? I doubt it is a licensing restriction because the whole point of NXP PN81 is having all the global NFC licensing pieces, NFC A-B-F/EMV/FeliCa/MIFARE, all on one chip, all ready to go.

日本以外のPixelモデルでFeliCaをオフにしているのはなぜですか? NXP PN81のすべてのポイントは、すべてのグローバルNFCライセンスの一部であるNFC A-B-F / EMV / FeliCa / MIFAREをすべて1つのチップに搭載しており、すべて準備が整っているからです。

👉 No global NFC evolution for Pixel 4? – Ata Distance 

Google might have left a backdoor to activate FeliCa later on non-JP Pixel 4 models

Googleは、後に非日本版Pixel4にFeliCaを有効化するバックドアを残した可能性があります。

👉 Pixel 4 goes cheap instead of deep – Ata Distance 

日本版Pixel4と同じチップでFeliCaのみ使えないものが海外版Pixel4搭載のチップ、ではないかと言っています。

では、実際Pixel3ではどうなっているのでしょうか。

 

日本版NFCチップこそグローバル?!

規格については、NFC周りはややこしくて流動的です。

👉 AndroidのHCE-Fについて調べてみたメモとサンプルソース - Qiita 
👉 NFC関係用語と解説 - Qiita 
👉 Advances with Osaifu-Keitai ―Starting Services Supporting NFC (Type A/B) on NTT DOCOMO UIM Cards 

このようなアプリがあります。


👉 NFC TagInfo by NXP - Apps on Google Play 

端末にかざしたモノに反応して、その情報を表示してくれます。

日本独自のFeliCa代表としてPASMOをかざしてみます。

反応して FeliCaな「NFC-Type F」を表示しました。

続いて、AmericanExpress をかざしてみます。セブンイレブンなどでは差し込む方式で、非接触としては使えないものです。

ガラパゴスなFeliCaでない「NFC-Type A」が反応しています。

 

まとめ

国内版Android端末(ハードウェア)は、海外仕様だと言われている「NFC Type-A」にも対応している。

海外版Android端末(ハードウェア)は、「NFC Type-F FeliCa」に対応していない。

Google Pay や おサイフケータイアプリ が対応すれば、きっと、クレカ登録だけでタッチ決済ができるようになりそうに思えます。

いや、大人の事情があるのかな。

👉 一目で分かる「Pay(ペイ)」の基本 


LifecycleLogger とか。

今になって、Android SDK の根本的な

「ライフサイクル」
「フラグメント」
「バックスタック」

とかで苦労すること多くなってきました。


👉 Handling Lifecycles with Lifecycle-Aware Components 

ライフサイクルやそのオーナーの状況変化具合を眺めながら進みたいですよね?



意外と使える androidx.lifecycle.* 。

今更か。


Kotlin で Result

どう書くべきでしょうか、リポジトリが返す Result。

data クラス で書きますか?

それとも、Kotlin ビルトインのを使いますか?

👉 Result - Kotlin Programming Language 

 

Sealed クラス で書くべし

enum の拡張的なイメージで使いましょう、

👉 Sealed Classes - Kotlin Programming Language 

👉 architecture-samples/Result.kt

できるだけ長く広く便利に使えるものがいいですよね。

👉 【MVVM】Flow vs LiveData