AndroidでMobileSuicaやWallet等のアプリからカードの読込について
NFCの初心者です。
社内ツールとして、MobileSuicaやWallet等からSuicaの履歴を読み込むAndroidアプリを作っています。対応方針としては、物理カードと同様にAndroidSDKが提供しているAPIを利用することにしました。
理解できていないのは、Android 6までの端末だと、問題なく履歴データの読み込みはできていますが、Android 7.0の端末だと、履歴データの読み込むフェーズに行けず、カード認識(厳密に言うと、NFC-Fテクノロジーの認識のこと)はできなくなった、との事象です。物理カードだと、Androidバージョンを問わず、問題なく履歴を読み込むことは可能です。
お手数ですが、上記の方法に何にか問題があるか、ご教示いただければと存じます。
当方teratailも初心者で多々至らない点もありご不快に思う事もあるかと存じますが
どうぞ、よろしくお願いいたします。
発生している問題・エラーメッセージ
エラーメッセージはないが、Android 7.0~の場合、物理カードを認識している時、以下のログが出力されていますが、Android 6の場合はそのログが出力されようです。恐らくAndroid 7.0以降にOSのサービスの仕様に何か変更があったように見えますが、詳しくは把握していません
D/NfcService: [BIG DATA] TAG SUCCESS!!! PROTOCOL= 4
該当のソースコード
AndroidManifest.xml(一部)
XML
1<!-- Scan activity --> 2<activity 3 android:name="jp.co.ne.cardreader.activity.M001ScanActivity" 4 android:launchMode="singleTask" 5 android:screenOrientation="portrait" 6 android:theme="@style/AppTheme.NoActionBar"> 7 <meta-data 8 android:name="android.nfc.action.TECH_DISCOVERED" 9 android:resource="@xml/nfc_tech_filter" /> 10 11 <!-- NFC TAG --> 12 <intent-filter> 13 <action android:name="android.nfc.action.TECH_DISCOVERED" /> 14 <category android:name="android.intent.category.DEFAULT" /> 15 </intent-filter> 16</activity>
NFC技術フィルター
XML
1<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> 2 <tech-list> 3 <tech>android.nfc.tech.NfcF</tech> 4 </tech-list> 5</resources>

あなたの回答
tips
プレビュー