在项目中需要播放一个提示,很短的一个声音,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. WinForm实现简单的拖拽功能(C#)

    用到了ListBox和TreeView两个控件,ListBox作为数据源,通过拖拽其中的数据放置到TreeView上,自动添加一个树节点 ListBox控件的MouseDown用于获取要拖拽的值并调用 ...

  2. Hadoop家族学习路线图

    主要介绍Hadoop家族产品,常用的项目包括Hadoop, Hive, Pig, HBase, Sqoop, Mahout, Zookeeper, Avro, Ambari, Chukwa,新增加的项 ...

  3. bzoj2527

    首先环可以变成链来处理,对于l>r的情况就是修改区间[1,r],[l,mx]然后不难想到整体二分,二分答案k,然后算1~k场流星雨对国家的贡献然后判定将国家划分变成子问题解决,没什么难的终于不是 ...

  4. spring的事件机制

    事件机制作为一种编程机制,在许多语言中都提供了支持.JAVA语言也不例外,java中的事件机制的参与者有3种角色: 1.event object 2.event source 3.event list ...

  5. Linux kernel ‘lbs_debugfs_write’函数数字错误漏洞

    漏洞名称: Linux kernel ‘lbs_debugfs_write’函数数字错误漏洞 CNNVD编号: CNNVD-201311-421 发布时间: 2013-11-29 更新时间: 2013 ...

  6. selenium使用整理

    学习selenium自动化有一段时间了,今天一位自动化测试大侠给了我指导.如下: 第一步,先用selenium的固定脚本把手工测试的流程写成脚本 eg: driver.FindElement(By.I ...

  7. SAE网站搭建(1)

    用了半天时间,把Django的基本结构同步到SAE上了,里边比较麻烦的地方如下: 1. 数据库的同步; SAE用的是SQL数据库,默认使用下面的用户名.密码等变量(SAE为我们做了很多工作) 首先需要 ...

  8. 【JS】Beginner8:Objects

    1.Real life object:propertiese & abilities JS object:a collection of named properties & meth ...

  9. 输入n,计算并输出n1+n2+n3+……+n10

    // 方法1:双重循环 #include <stdio.h> void main() { int i,j,n,s,t; scanf("%d",&n); s=0; ...

  10. HW3.8

    import java.util.Scanner; public class Solution { public static void main(String[] args) { Scanner i ...