如果有人想编写与物理设备(尤其是使用手机音频插孔的阅读器)进行交互的android应用程序
(例如,如Square Inc的运作方式)如何完成?
是否有API与阅读器进行交互并获取卡数据?
公司创建阅读器(物理设备)时是否提供相关的API?
物理细节是从应用程序程序员中提取出来的吗?
我发现了AudioRecord类,它可以记录音频插孔中的磁条数据
但是我无法确定如何捕获实际的刷卡事件,并且
从原始数据中提取有意义的数据
谁能帮我这个
任何输入都非常欢迎!
解决方法:
通常的工作方式是对设备(如读卡器)发出的数据信号进行编码,以便可以在另一端进行解码.声音是一波,不同的振幅对应不同的响度,不同的频率对应不同的音高.想象您有一个正弦波,它在高频和低频之间变化,并且彼此之间有足够的差异,以便于区分.发送二进制数据(0和1)的设备可以将该数据转换为随频率变化的音频信号(另一种方法是改变幅度).接收器(在这种情况下为移动设备)将信号解码回0和1.这称为“频移键控”(在此处查看更多信息:http://en.wikipedia.org/wiki/Frequency-shift_keying).
实现此目的的最简单方法是尝试查找已经执行此 *** 作的开放库.发送数据的设备还需要包含某种可以执行初始调制的微控制器.如果您遇到任何好的图书馆,请告诉我,因为我目前
看着.
为了回答您的问题,公司通常不提供API等来执行此 *** 作.
将数字信号转换为音频信号并返回,这似乎是很多额外的工作,您是正确的.但是,每个移动设备都具有基本相同的耳机插孔,而AndroID上的USB端口与iPhone的照明连接器或以前的iPhone中的连接器完全不同.也可以选择通过网络或蓝牙无线发送,但是它们也有缺点.
现在,移动设备必须使用支持麦克风的特殊耳机插孔,否则它将无法接收输入,只能输出声音.大多数智能手机都可以做到这一点.
无线电按照这一原理工作(FM =频率调制,AM =幅度调制).
旧的拨号调制解调器使用FSK,这就是为什么每次连接时都会听到那些怪异的声音.
希望有帮助!
总结以上是内存溢出为你收集整理的如何在Android上使用耳机插孔捕获磁性滑动数据?全部内容,希望文章能够帮你解决如何在Android上使用耳机插孔捕获磁性滑动数据?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)