Открытый мобильный API с Android 21+
Я уже некоторое время использую Open Mobile API и нацеливаюсь на версию для Android API 19 (загружается из Android SDK manager, добавив ссылку на него http://seek-for-android.googlecode.com/svn/trunk/repository/19/addon.xml), но я не могу найти версии выше 19. Они вообще существуют или я просто плохо искал?
2 ответа
Вы можете найти последнюю версию Open Mobile API на GitHub: https://github.com/seek-for-android/
Кажется, больше нет доступной специализированной интеграции SDK. Однако при просмотре приложений, использующих OMAPI, типичным способом интеграции его в приложения, по-видимому, является непосредственная интеграция библиотеки (или даже прямое включение исходных файлов OMAPI) вместо ссылки на версию библиотеки, которая поставляется с устройства, реализующие API. Таким образом, вы можете легко использовать любой уровень API, какой захотите.
Для последней версии вы можете найти эти файлы здесь: https://github.com/seek-for-android/platform_packages_apps_SmartCardService/tree/android-5.0.0_r3-scapi/openmobileapi
API должен быть обратно совместимым, поэтому, если вы интегрируете последнюю версию, вы также сможете получить доступ к более старым реализациям (хотя будет доступен только ограниченный набор функций).
Обновление 2015-09-23:
Доступна интеграция с SDK. Это описано в SEEK Wiki: Использование Smart Card API.
На сегодняшний день для SDK доступны дополнения для интеграции
- API 21: http://seek-for-android.github.io/repository/21/addon.xml
- API 19: http://seek-for-android.github.io/repository/19/addon.xml
- API 18: http://seek-for-android.github.io/repository/18/addon.xml
- API 17: http://seek-for-android.github.io/repository/17/addon.xml
- API 15: http://seek-for-android.github.io/repository/15/addon.xml
Все обновления в этом списке должны быть отражены в репозитории seek-for-android.github.io на GitHub.
Начиная с Android P, Open Mobile API является частью платформы Android. Поэтому предыдущие ответы устарели для более новых устройств.
См. https://developer.android.com/reference/android/se/omapi/package-summary для деталей и обратите внимание, что есть некоторые незначительные изменения по сравнению со старыми версиями. Особенно:
- Разное пространство имен (android.se.omapi).
- Добавление поддержки Transaction Event.
- Изменения в SEService Listener, который должен реализовывать интерфейс onConnectedListener
- Нет поддержки для обратного вызова Reader Event.
- Класс канала расширяет java.nio.channels.Channel. Это подразумевает новый метод isOpen(), который заменяет метод isClosed().
- Нет поддержки для setTransmitBehaviour()