使用Android 21+打开Mobile API

问题描述 投票:1回答:2

我现在一直在使用Open Mobile API,而且我的目标是Android API 19的版本(通过添加链接到http://seek-for-android.googlecode.com/svn/trunk/repository/19/addon.xml从Android SDK管理器下载),但我找不到19以上的版本。甚至存在或者我只是搜索不好?

android nfc open-mobile-api
2个回答
2
投票

您可以在GitHub上找到最新版本的Open Mobile API: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中描述:Using Smart Card API

截至今天,有可用的SDK集成附加组件

此列表的所有更新都应反映在GitHub上的seek-for-android.github.io repository中。


0
投票

从Android P开始,Open Mobile API是Android框架的一部分。因此,对于较新的设备,先前的答案已经过时。

有关详细信息,请参阅https://developer.android.com/reference/android/se/omapi/package-summary,并注意与旧版本相比有一些细微的变化。特别是:

  • 不同的命名空间(android.se.omapi)。
  • 增加交易事件支持。
  • 对SEService Listener的更改,它必须实现onConnectedListener接口
  • 不支持Reader Event回调。
  • Channel类扩展了java.nio.channels.Channel。这意味着一个新的方法,isOpen(),它取代了isClosed()方法。
  • 不支持setTransmitBehavior()
© www.soinside.com 2019 - 2024. All rights reserved.