简单音频扫码提示
来源:互联网 发布:酷狗音乐mac版下载 编辑:程序博客网 时间:2024/05/09 05:16
进行二维码扫描时,往往需要根据扫描到内容给出相应的音频提示,或正确或不正确。
RawPlayer.java:
/** * Created by Sinaan on 2016/12/22. * <uses-permission android:name="android.permission.VIBRATE" /> */public class RawPlayer { private Activity context; private MediaPlayer mediaPlayer; private Vibrator vibrator; private static final float BEEP_VOLUME = 0.10f; private static final long VIBRATE_DURATION = 200L; public enum Scan{ CORRECT,ERROR } public RawPlayer(Activity context) { this.context = context; if (mediaPlayer == null) { vibrator = SystemService.getVibrator(context); initBeepSound(); } } private void initBeepSound() { context.setVolumeControlStream(AudioManager.STREAM_MUSIC); mediaPlayer = new MediaPlayer(); mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC); mediaPlayer.setOnCompletionListener(beepListener); } public void play(Scan scan) { if (mediaPlayer != null) { AssetFileDescriptor file ; mediaPlayer.reset(); if(Scan.CORRECT==scan) file = context.getResources().openRawResourceFd(R.raw.correct); else file = context.getResources().openRawResourceFd(R.raw.error); try { mediaPlayer.setDataSource(file.getFileDescriptor(), file.getStartOffset(), file.getLength()); file.close(); mediaPlayer.setVolume(BEEP_VOLUME, BEEP_VOLUME); mediaPlayer.prepare(); mediaPlayer.start(); vibrator.vibrate(VIBRATE_DURATION); } catch (IOException e) { mediaPlayer = null; } } } /** * When the beep has finished playing, rewind to queue up another one. */ private final MediaPlayer.OnCompletionListener beepListener = new MediaPlayer.OnCompletionListener() { public void onCompletion(MediaPlayer mediaPlayer) { mediaPlayer.seekTo(0); } };}
调用方法:
MediaPlayer mediaPlayer = new MediaPlayer();rawPlayer.play(RawPlayer.Scan.CORRECT);、rawPlayer.play(RawPlayer.Scan.ERROR);
0 0
- 简单音频扫码提示
- 扫码
- HTML5音频:嵌入简单的声音提示技巧
- 一个简单php+mysql快递单号扫码记录网页
- Android扫码功能,快速简单的集成
- NZT 关于触动精灵 扫码无法识别 NZT提示202
- 扫码二维码
- Android 扫码模块
- ZBar扫码
- iOS 原生扫码
- ZXing扫码
- ZBar扫码
- 如何实现扫码
- Android 二维码扫码
- ios 扫码功能
- 扫码登录流程
- 扫码登录操作过程
- iOS 扫码登录
- Visual Studio:error MSB8020
- 前端关于url输入到页面加载过程
- sqlitedabase提供的CRUD(增、删、改、查)方法
- 内核态和用户态通信(二)--实现
- Swift初见(一)
- 简单音频扫码提示
- 小鼠迷宫问题
- 【Unity&Shader】关于变灰Shader的探究
- mvc单独ckfinder 图片上传
- Spring MVC之@RequestMapping 详解
- LINUX下FTP服务器搭建部署
- 自定义EditText实现IP输入框
- 一种多尺度的KCF跟踪程序代码分析(二)——图片视频转换和初始框输入
- jenkins 自动部署脚本 自动启停tomcat并部署项目