博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
android FM播放时拔出耳机后,FM APP出现"拔出耳机,Fm停止"的提示框,然后自动close...
阅读量:5248 次
发布时间:2019-06-14

本文共 1639 字,大约阅读时间需要 5 分钟。

客户要求FM播放时拔出耳机后,FM APP出现“拔出耳机,Fm停止"的提示框,然后自动close
修改FMRadioService.java
1.添加如下import,以便能显示toast
AAAAA add start
import android.widget.Toast;
AAAAA add end
public class FMRadioService extends Service implements FMRecorder.OnRecorderStateChangedListener {
 
2.在下面函数onBind()前添加 
//AAAAA add start
 public static final int MSG_EXIT_FM = 1234;
 private Handler sHandler11 = new Handler() {
   @Override
   public void handleMessage(Message msg) {
    FMRadioLogUtils.d(TAG, "sHandler11 =  " + msg.what);
    switch (msg.what) {
     case MSG_EXIT_FM:
      android.os.Process.killProcess(android.os.Process.myPid());
      break;
    }
   }
 };
 private Toast mToast = null;
 private void showToast(CharSequence text) {
 if (null == mToast) {
     mToast = Toast.makeText(mContext, text, Toast.LENGTH_SHORT);
     }
        mToast.setText(text);
        mToast.show();
        LogUtils.v(TAG, "FMRadioActivity.showToast: toast = " + text);
    };
//AAAAA add end
@Override
    public IBinder onBind(Intent intent) {
        return mBinder;
    }
 
3.修改onReceive 方法,这样子就可以显示toast以及关闭Fm app了
在  switchAntennaAsync(mValueHeadSetPlug);
之后添加:
 if(mValueHeadSetPlug == 1 && mIsPowerUp )
{
   showToast(getString(R.string.toast_plugin_headphone_before_FM));
   sHandler11.sendMessageDelayed(sHandler.obtainMessage(MSG_EXIT_FM, FMRadioService.this),(long)
1000);
mFmServiceHandler.removeCallbacksAndMessages(null);
stopFMFocusLoss(AudioManager.AUDIOFOCUS_LOSS);
}
 else
 sHandler11.removeMessages(MSG_EXIT_FM);
 
4.在alps\mediatek\packages\apps\FMRadio\res\values\
strings.xml中添加
<string name="toast_plugin_headphone_before_FM">The FM will close because you have been plug out
the headphone</string>
 

 

转载于:https://www.cnblogs.com/snake-hand/archive/2013/06/08/3127467.html

你可能感兴趣的文章
浅谈算法和数据结构: 一 栈和队列
查看>>
Java内部类详解
查看>>
【hdu 1429】胜利大逃亡(续)
查看>>
图论-次短路求法
查看>>
What's New for Visual C# 6.0
查看>>
ExtJs学习笔记之ComboBox组件
查看>>
关于收费软件
查看>>
getopt_long
查看>>
TensorFlow MNIST CNN 代码
查看>>
javascript之Style物
查看>>
JSON跨域解决方案收集
查看>>
图的深度优先遍历
查看>>
C# 之 提高WebService性能大数据量网络传输处理
查看>>
[bzoj1004] [HNOI2008] Cards
查看>>
原生HttpClient详细使用示例
查看>>
几道面试题
查看>>
Factory Design Pattern
查看>>
python中贪婪与非贪婪
查看>>
guava API整理
查看>>
无锁编程笔记
查看>>