Я хочу отправить APDU длиной 1699 байт через NFC (класс IsoDep
) на смарт-карту Java Card. Я получаю ошибкуОтправьте более 261 байт на Java-карту с Android NFC
java.io.IOException: Transceive длина превышает поддерживается максимальная
Мой телефон является Samsung Galaxy S7.
Я использую удлиненную длину в своем апплете на карте. Я подтвердил, что карта поддерживает расширенную длину. Я проверил это с помощью pyapdutool, отправив APDU с 4000 байтами на карту.
Я обнаружил, что, когда я пишу этот код, результат false
:
final Tag t = (Tag) tag;
myTag = IsoDep.get(t);
boolean result = myTag.isExtendedLengthApduSupported();
У меня есть это в моем манифесте:
<activity
android:name=".test"
android:label="@string/title_test"
android:launchMode="singleTop"
android:theme="@style/AppTheme.NoActionBar" >
<action android:name="android.nfc.action.TAG_DISCOVERED" />
<category android:name="android.intent.category.DEFAULT" />
<intent-filter>
<action android:name="android.nfc.action.NDEF_DISCOVERED" />
</intent-filter>
</activity>
Как я могу отправить APDU с 1699 байт (или любая длина более 261 байт) через Android NFC?
http://stackoverflow.com/questions/40173077/are-there-any-android-phones-which-support-extended-apdus –
эта проблема пока не решена –
Неясно, поддерживается ли карта такой длины. Вы пробовали его с настольного ПК и работали там? – guidot