[Android & Kotlin] SoundPool で効果音を鳴らすというサイトを参考に音の再生をやってみたのですが、うまく音が再生されずに困っています。
コード
コードはサイトを参考に以下のようなものを作成しました。
タップ処理の中に入ってくるのは確認済みでログが出力されます。
ロードの部分のログも出力されていることを確認しています。
Kotlin
1 private lateinit var soundPool: SoundPool 2 var tempoSound = 0 3 4 override fun onCreate(savedInstanceState: Bundle?) { 5 super.onCreate(savedInstanceState) 6 7 val audioAtributes = AudioAttributes.Builder() 8 .setUsage(AudioAttributes.USAGE_GAME) 9 .setContentType(AudioAttributes.CONTENT_TYPE_MUSIC) 10 .build() 11 soundPool = SoundPool.Builder() 12 .setAudioAttributes(audioAtributes) 13 .setMaxStreams(1) 14 .build() 15 16 soundPool.setOnLoadCompleteListener{ soundPool, sampleId, status -> 17 Log.d("debug", "sampleId=$sampleId") 18 Log.d("debug", "status=$status") 19 } 20 21 tempoSound = soundPool.load(this, R.raw.tempo_sound, 1) 22 23 24 setContentView(R.layout.activity_main) 25 startStopButton = findViewById(R.id.startStopButton) 26 startStopButton!!.setOnClickListener{ 27 Log.d("debug", "クリックの中") 28 soundPool.play(tempoSound, 1.0f, 1.0f, 0, 0, 1.0f) 29 } 30 }
rawフォルダ
サイトにres/rawフォルダに保存とあったのですが、resフォルダ直下にrawというフォルダが見当たらなかったので自作してそこにファイルを置きました。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/06/01 12:35
2019/06/01 14:21
2019/06/01 23:22 編集
2019/06/01 23:47
2019/06/02 11:44
2019/06/02 14:21
2019/06/02 14:45
2019/06/03 12:39