Android系统audio应用体验相关的问题.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
全球研发新技术研究中心 全球研发新技术研究中心 全球研发新技术研究中心 Android audio 相关问题小结 目录 Android 后台音乐播放问题 1. 在播放音乐时候,来电话如何在APP中正确处理 2. 在播放后台音乐时候,用户打开另外一个音乐软件,后台播放APP如何正确处理 目录 Android 在音乐播放时候,来电如何正确处理? 在使用酷狗,QQ音乐等音乐播放软件时候,我们发现来电的时候,音乐自动停止,通话完后恢复播放,这是怎么做到的? 目录 开发audio相关的应用程序的时候,我们希望能够监听电话的呼入,以便执行暂停音乐播放器等操作,当电话结束之后,再次恢复播放。在Android平台可以通过TelephonyManager和PhoneStateListener来完成此任务。 目录 TelephonyManager作为一个Service接口提供给用户查询电话相关的内容,比如IMEI,LineNumber1等。通过下面的代码即可获得TelephonyManager的实例 在Android平台中,PhoneStateListener是个很有用的监听器,用来监听电话的状态 public void onCallForwardingIndicatorChanged(boolean cfi)? public void?onCallStateChanged(int state, String incomingNumber)? public void onCellLocationChanged(CellLocation location)? public void onDataActivity(int direction)? public void onDataConnectionStateChanged(int state)? public void onMessageWaitingIndicatorChanged(boolean mwi)? public void onServiceStateChanged(ServiceState serviceState)? public void onSignalStrengthChanged(int asu)?,比如呼叫状态和连接服务等 这里我们只需要覆盖onCallStateChanged()方法即可监听呼叫状态。在TelephonyManager中定义了三种状态,分别是振铃(RINGING),摘机(OFFHOOK)和空闲(IDLE),我们通过state的值就知道现在的电话状态了。 获得了TelephonyManager接口之后,调用listen()方法即可实现Android监听通话 目录 下面是个简单的测试例子,只是把呼叫状态追加到TextView之上 import android.telephony.PhoneStateListener;? import android.telephony.TelephonyManager;? public class Telephony extends Activity { private static final String TAG = Telephony; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); TelephonyManager mTelephonyMgr = (TelephonyManager) this .getSystemService(Context.TELEPHONY_SERVICE); mTelephonyMgr.listen(new TeleListener(), PhoneStateListener.LISTEN_CALL_STATE); view = new TextView(this); view.setText(listen the state of phone\n); setContentView(view); } 目录 class TeleListener extends PhoneStateListener { @Override public void onCallStateChanged(int state, String incomingNumber) { super.onCallStateChanged(state, incomingNumber); switch (state) { case TelephonyManager.CALL_STATE_IDLE: { Log.e(TAG, CALL_STATE_IDLE); vie

文档评论(0)

有一二三 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档