###前言
Android开发过程中,有时我们需要用到手机默认模式,提示音或响铃。那么这节就让我们来学习下相关知识吧。
今天涉及内容
1. 工具类PhoneAudioHelper中的主要方法
2. PhoneAudioHelper在MainActivity中的使用
3. 项目结构图
####一. 工具类PhoneAudioHelper中的主要方法
`PhoneAudioHelper`作为一个工具类,主要用于获取手机系统相关默认模式及声音,其具备以下方法:
```
/**
* 获取手机模式: AudioManager.RINGER_MODE_SILENT(静音模式)
* AudioManager.RINGER_MODE_VIBRATE(震动模式)
* AudioManager.RINGER_MODE_NORMAL(声音模式)
* @return int
*/
public static int getDefultRingerMode()
/**获取系统默认铃声**/
public static void getDefultRingtone()
/**获取系统默认的notification提示音**/
public static void getDefultRingNotification()
```
####二.PhoneAudioHelper在MainActivity中的使用
下面贴出`PhoneAudioHelper`在`MainActivity`中使用的代码:
```
public class MainActivity extends AppCompatActivity {
private TextView mTextView;
private Button mBtn;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mTextView=findViewById(R.id.tv);
mBtn=findViewById(R.id.btn);
mTextView.setText("显示");
mBtn.setText("测试");
//设置调试模式
LogUtil.setDebug(true);
mBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
LogUtil.i("======点击了====");
test();
}
});
}
private void test() {
//获取手机当前模式
int mode=PhoneAudioHelper.getDefultRingerMode(MainActivity.this);
switch (mode) {
case AudioManager.RINGER_MODE_SILENT://静音模式
//若当前手机为静音模式的处理
//......
break;
case AudioManager.RINGER_MODE_VIBRATE://震动模式
//若当前手机为震动模式的处理
//......
break;
case AudioManager.RINGER_MODE_NORMAL://声音模式
//若当前手机为震动模式的处理
//播放默认提示音
PhoneAudioHelper.getDefultRingNotification(MainActivity.this);
// //播放默认响铃
// PhoneAudioHelper.getDefultRingtone(MainActivity.this);
break;
default:
break;
}
}
}
```
####三.项目结构图
![](/contentImages/image/20200210/jVsKsjNB80R5bipWFaC.png)
ok,今天内容就到这里,谢谢大家。