在项目中需要播放一个提示,很短的一个声音,Android中播放声音有两种方式:MediaPlayer和SoundPool。相对来说SoundPool比较轻量级一些,多用在播放比较短急的声音,MediaPlayer则用来播放大段的声音或者音乐。
使用SoundPool比较方便,下面就是一段简单的SoundPool的代码,我们需要在res下建一个raw文件夹,里边放一个test声音文件,但是在实际使用中却总是不出声音。
 
private SoundPool soundPool; 
soundPool= newSoundPool(10,AudioManager.STREAM_SYSTEM,5); 
soundPool.load(this,R.raw.test,1); 
soundPool.play(1,1, 1, 0, 0, 1);
 
解决方案:
soundPool需要初始化,并且还要初始化相当一段时间,如果这段代码直接放到onCreate中是不会出声音的,那怎么办呢,放到onClick中?我试过之后发现还是不出声音。
最终的方式是初始化soundPool的动作放到onCreate或者其他逻辑代码中,而需要触发播放的时候只需要执行soundPool.play()方法就好了。

SoundPool没有声音的问题的更多相关文章

  1. [故障及解决]SoundPool没有声音

    问题描述:使用SoundPool类进行播放声音时,在手机上没有声音. 问题代码: /** * 声音播放 */ private void playSound() { SoundPool soundPoo ...

  2. SoundPool 音频播放 详解 示例

    简介 如果应用程序经常播放密集.急促而又短暂的音效(如游戏音效)那么使用MediaPlayer显得有些不太适合了.因为MediaPlayer存在如下缺点: 1) 延时时间较长,且资源占用率高. 2) ...

  3. android开发(44) 使用了 SoundPool 播放提示音

    SoundPool 一个声音播放的辅助类,从名字可以看出,它具有 “池”的能力,它先加载声音文件到内存,以支持多次播放声音文件. 特点 SoundPool适合 短小的 声音文件 SoundPool适合 ...

  4. SoundPool 音频播放 API 详解【示例】

    demo地址:https://github.com/baiqiantao/PermissionTest.git 一个大坑:SoundPool最多只能播放时长10s左右.大小70kb左右(这些值是我多次 ...

  5. SoundPool 播放提示音

    SoundPool 一个声音播放的辅助类,从名字可以看出,它具有 “池”的能力,它先加载声音文件到内存,以支持多次播放声音文件. 特点 SoundPool适合 短小的 声音文件 SoundPool适合 ...

  6. 玩转Android之加速度传感器的使用,模仿微信摇一摇

    Android系统带的传感器有很多种,最常见的莫过于微信的摇一摇了,那么今天我们就来看看Anroid中传感器的使用,做一个类似于微信摇一摇的效果. OK ,废话不多说,我们就先来看看效果图吧: 当我摇 ...

  7. Android--SoundPool

    前言 在Android中播放音频文件经常会用到MediaPlayer,但是MediaPlayer存在一些不足的地方,如:资源占用量较高.加载延迟时间较长.不支持多个音频同时播放等.这些缺点决定了Med ...

  8. soundPool播放短、频、快的声音

    package com.example.soundpool; import android.media.AudioManager; import android.media.SoundPool; im ...

  9. Android学习笔记_24_多媒体MediaPlayer对象之音乐播放器与SoundPool声音池

    一.MediaPlayer对象常用方法介绍: MediaPlayer mediaPlayer = new MediaPlayer(); if (mediaPlayer.isPlaying()) { m ...

随机推荐

  1. 【POJ】1692 Crossed Matchings

    经典DP,想了很久,开始想复杂了. #include <iostream> using namespace std; #define MAXNUM 100 int mymax(int a, ...

  2. WPF——传实体类及绑定实体类属性

    public class User: private string _User; public string User1 { get { return _User; } set { _User = v ...

  3. Grid表格属性

    <Grid> <Grid.ColumnDefinitions> <!--添加列--> <ColumnDefinition Width="/> ...

  4. Shell获取文件后缀名

    file = "thisfile.txt" echo "filename: ${file%.*}" echo "extension: ${file## ...

  5. mysql 查看死锁和去除死锁

    1.查询是否锁表show OPEN TABLES where In_use > 0; 2.查询进程 show processlist 3.  查询到相对应的进程,然后 kill id 验证(ki ...

  6. ubuntu设置固定ip

    设定IP $sudo gedit /etc/network/interfaces auto lo iface lo inet loopback auto eth0 iface eth0 inet st ...

  7. HDU 1754 I Hate It 线段树 单点更新 区间最大值

    #include<iostream> #include<string> #include<algorithm> #include<cstdlib> #i ...

  8. matplotlib 初使用

    试玩了一下 matplotlib, 感觉是:很酥狐吖~ 完全不像 ggplot 那样云里雾里,但是后者展现出的图要漂亮优雅许多. x = linspace(0, 10, 100) //初始化一个 [0 ...

  9. [Windows Server] 在 Windows Server 2012 上安裝 .NET Framework 3.5 - 摘自网络

    官方: Applies To: Windows 8, Windows 8.1 For a Windows Server® 2012 core installation that is not conn ...

  10. ubuntu glusterfs 配置调试

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAqMAAADpCAIAAACfoakcAAAgAElEQVR4nO2d2XMjSX7f8c+sQ4GwHY