JCSNFCSession

public class JCSNFCSession

Предназначен для подключения к NFC-смарт-карте

Конструкторы

public JCSNFCSession()

Методы

state

public static JCSNFCSessionState state(Context context)

Получить состояние NFC-адаптера

Параметры:
Результат:

состояние NFC-адаптера

open

public void open(DeviceListener deviceListener)

Начать ожидание подключения к NFC-смарт-карте

Параметры:
  • deviceListener – интерфейс обратного вызова для получения сообщений о подключении NFC-смарт-карты

close

public void close()

Закончить ожидание подключения к NFC-смарт-карте.

Данный метод также нужно вызывать после получения сообщения о подключении NFC-смарт-карты, если не требуется ожидать подключения другой смарт-карты.
Пример:
JCSNFCSession session = new JCSNFCSession();
session.open((device, error) -> {
   session.close();
   // ...
});

enableForegroundDispatch

public void enableForegroundDispatch(Activity activity)

Начать детектирование подключения NFC-смарт-карты для активного Activity

Данный метод необходимо вызывать в методе Activity.onResume. Подробнее о детектировании NFC-устройств в Android можно прочитать здесь.
Пример:
@Override
public void onResume() {
   super.onResume();

   session.enableForegroundDispatch(this);
}

Примечание

Для Activity, которое используется для детектирования подключения NFC-смарт-карты, в файле манифеста (AndroidManifest.xml) значение параметра android:launchMode должно быть singleTask или singleInstance.

Параметры:

disableForegroundDispatch

public void disableForegroundDispatch()

Закончить детектирование подключения NFC-смарт-карты для активного Activity

Данный метод необходимо вызывать в методе Activity.onPause. Подробнее о детектировании NFC-устройств в Android можно прочитать здесь.
Пример:
@Override
public void onPause() {
   super.onPause();

   session.disableForegroundDispatch();
}

processIntent

public void processIntent(Intent intent)

Обработать Intent для активного Activity

Данный метод необходимо вызывать в методе Activity.onNewIntent. Подробнее о детектировании NFC-устройств в Android можно прочитать здесь.
Пример:
@Override
public void onNewIntent(Intent intent) {
   super.onNewIntent(intent);

   session.processIntent(intent);
}
Параметры: