MediaPlayer虽然也能播放音频,但是它有资源占用量较高,延迟时间较长,不支持多个音频同时播放等缺点,这些缺点决定MediaPlayer在某些场合的使用情况不会很理想,例如在对时间精准度要求相对较高的场景,而SoundPoo一般用来播放密集、急促而又短暂的音效,比如:“滴滴一下 马上出发”
1.添加权限:
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.CAMERA" />
2.动态添加权限
ActivityCompat.requestPermissions(this,
new String[]{Manifest.permission.CAMERA,Manifest.permission.RECORD_AUDIO},
100);
3、创建一个SoundActivity,使用Intent连接MainActivity和SoundActivity
完整代码:
MainActivity布局文件activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<Button
android:onClick="playAudio"
android:id="@+id/button3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="播放音效"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent