Google NFC API和Open NFC API之间的差异?

时间:2011-09-28 09:07:05

标签: android open-source nfc

正如标题所示,我正在寻找可以让我区分并选择其中一种可能性的信息,以便在Android上开发NFC。

关联NFC Google API:http://developer.android.com/resources/samples/NFCDemo/index.html

链接NFC Open API:http://www.open-nfc.org/opennfc_library/overview-summary.html

你能告诉我你对此有何了解吗?

提前致谢!

3 个答案:

答案 0 :(得分:6)

请检查此link - 以非常详细的方式描述了两种解决方案之间的区别。 Sebastien 写的答案是官方的Open NFC堆栈声明。 Nikolay Elenkov也是正确的事实,除非你正在使用自己的设备,或者你正在以某种方式重新刷新它,否则你将仅使用Google API。

BR 斯登

答案 1 :(得分:1)

目前(Android 2.3.4),Android平台未集成Open NFC堆栈。该堆栈具有以下几个优点:不限于一个特定的NFC硬件,可移植到许多不同的环境(不仅仅是Android),与当前堆栈相比还有许多附加功能。另一方面,因为Open NFC不是标准Android环境的一部分,所以在Android平台中使用这个堆栈需要一些工作(但实际上很容易)。 Open NFC文档描述了这个过程。

Open NFC堆栈是并行活动,可选择替换当前堆栈。由于它的描述,它克服了谷歌NFC堆栈实现的一些限制,并使新的硬件适应(即支持新的标签类型)更容易...

此堆栈旨在由设备制造商使用,而不是移动开发人员,因为标准Android内核不支持模块加载,Open NFC堆栈不能简单地安装为另一个应用程序,它需要更改内核。但是一旦内核被替换,就可以很容易地部署和使用Open NFC堆栈。 应用程序开发人员应该坚持使用操作系统功能,即使这些功能更加有限,因为它们可以确保代码在任何支持NFC的手机上的可移植性。但是,如果您尝试使用比Android更多的“更多”功能,Open NFC是一个不错的选择。

结论: 在一些手机制造商将堆栈集成到设备之前,对开放NFC堆栈感兴趣并没有多大意义。除非是在硬件上,否则应用开发者无法使用Open NFC。

答案 2 :(得分:0)

你已经有了链接,阅读它们怎么样?

除非您正在刷新自己的固件,否则您必须坚持使用Android SDK中提供的API。如果您正在构建/自定义自己的设备,则可以刷新支持Open NFC的映像和内核。我还没有真正使用它,但看起来Open NFC提供了更低级别的API,从而为您提供更多控制。