由于最近一直忙项目,没有时间来更新文档,今天抽空来写一点,希望大家可以学习使用!
这一章当然还是来分析FM模块的源码。FmReceiver.java
publicFmReceiver(String devicePath,FmRxEvCallbacksAdaptor callback) throwsInstantiationException { mControl = new FmRxControls(); mRxEvents = new FmRxEventListner(); //registerClient(callback); mCallback = callback; }
/**注册一个回调为调频接收机事件通知。
* @return真如果回调注册,假如果回调注册失败了。
*初始化失败。
* < p >
* @see #收购
*@see # unregisterClient
**/
public boolean registerClient(FmRxEvCallbacks callback){ boolean status; status = super.registerClient(callback); /* Do Receiver Specific Stuff here.*/ return status; }
*
这个命令只能出具一个调频接收器的所有者。发出这个命令,客户机必须首先成功叫{ @link #获得}。
* <p>
* @param configSettings设置打开收音机时应用
* @return真如果初始化成功了,假如果初始化失败。
* <p>
*@see #启用
*@see # registerClient
*@see #禁用
*
*/
public boolean enable (FmConfig configSettings)
/ * *
*@return真如果复位成功了,假如果重置失败了。
@see #启用
@see #禁用
@see # registerClient
* /
publicboolean reset()
/ * *
* /
publicboolean disable()
/ * *
* @return调频搜索操作的当前状态:
* SRCH_COMPLETE
* SRCH_INPROGRESS
* SRCH_ABORTED
* /
static int getSearchState()
*这个函数是用于设置当前状态的搜索操作。如果一个寻求命令时发出一个已经正在进行,我们取消正在寻求命令,搜索操作的状态设置为SRCH_ABORTED和开始新的搜索。
* < p >
* @return没有
* /
static void setSearchState(int state)
/ * *
* < p >
* < ul >
*这个API用于:<李>调用基本寻求操作({ @link # FM_RX_SRCH_MODE_SEEK })<李>调用基本的扫描操作({ @link # FM_RX_SRCH_MODE_SCAN })
* < / ul >
*由于寻求总是导致频率调谐,每个寻求操作也将返回一个FmRxEvRadioTuneStatus事件到客户机/应用程序层。
*
* < p >
* < p >
* @return真如果搜索启动成功了,假如果搜索启动失败。
@see # searchStations(int,int,int,int,int)
@see # searchStationList
* /
public boolean searchStations (int mode,int dwellPeriod,int direction) public boolean searchStations (int mode,int dwellPeriod,int direction,int pty,int pi)
/ * *启动站列表搜索操作。
* < p >该方法将初启搜索,生成基于强和弱电台的频率列表中发现的调频乐队。
* < p >
* < ul >
*这个API是用于生成站列表包括:
* <li>强站(FM_RX_SRCHLIST_MODE_STRONGFM_RX_SRCHLIST_MODE_STRONGEST)
* <li>弱站(FM_RX_SRCHLIST_MODE_WEAKFM_RX_SRCHLIST_MODE_WEAKEST)
* < / ul >
* < p >
* < p >
* < p >
*一旦发出搜索命令,多个命令从客户机可能不允许,直到搜索完成或取消。
* < p >
* < ul >
* <li>{@link #FM_RX_SEARCHDIR_DOWN}
* <li>{@link #FM_RX_SEARCHDIR_UP}
* < / ul >
* < p >
* 有效参数值“maximumStations”:1 - 12
* @return真如果搜索启动成功了,假如果搜索启动失败。
@see # searchStations(int,int,int)
@see # searchStations(int,int,int,int,int)
* /
public boolean searchStationList (int mode,int direction,int maximumStations,int pty)
/ * *
*这种方法应该用于取消之前启动搜索(例如基本寻求/扫描,RDS寻求/扫描、搜索列表,等)。
* < p >
一旦完成,这个命令将生成一个FmRxEvSearchCancelledtr事件所有注册的客户。这个事件后,客户端还可以接收搜索事件正在进行相关搜索正在完成。
*
* < p >
* @return真如果取消搜索启动成功,假如果取消搜索启动失败。
@see # searchStations(int,int,int)
@see # searchStations(int,int,int)
@see # searchStationList
* /
关闭搜索更改状态
publicboolean cancelSearch ()
/ * *
*允许调频接收机静音和非静音。
* < p >
*这是一个同步命令用于静音或un-mute FM音频。这个命令减弱来自FM音频设备。重要的是要注意,这只会影响调频音频而不是其他音频系统被使用。
* < p >
* @param沉默的模式设置应用模式
* < p >
@return真如果setMuteMode调用放置成功,假如果setMuteMode失败了。
@see #启用
@see # registerClient
* /
public boolean setMuteMode (int mode)
/ * *
*FM的单声道/立体声模式设置。
*
* < p >
*此命令允许用户设置的单声道/立体声模式调频装置。使用此功能,用户可以允许单声道/立体声混音或单声道音频的接待。
@param stereoEnable如此:支持立体声,Mono错误的:力量
@return真如果setStereoMode调用放置成功,假如果setStereoMode失败了。
* /
public boolean setStereoMode (booleanstereoEnable)
返回当前的RDS / RBDS计划服务
publicFmRxRdsData getPSInfo()
/ * *
*此函数返回一个频率的列表。
*
* < p >
*该方法获得的结果{ @link # searchStationList }。这种方法应该调用FmRxEvSearchListComplete时调用。
* < p >
*@return整数数组,对应的频率搜索电台
@see # searchStationList
* /
public int[] getStationList ()
/ * *
*
* < p >
*该方法返回当前的信号强度调谐。
* < p >
* 目前@return RSSI的调谐
* /
public intgetRssi()
原文地址:http://blog.csdn.net/tfslovexizi/article/details/42079417