android 音频播放器,(一)SoundPool音频播放实例
创始人
2024-11-13 21:06:59
0次

1. Apk内,预定义按键与触发按键:

layout 按键定义:
            android:id="@+id/start"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:textAllCaps="false"
        android:text="start"/>
            android:id="@+id/pause"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:textAllCaps="false"
        android:text="false"/>

按键触发,代码处理:
    public void onClick(View v) {
        switch (v.getId()) {
            case R.id.start:
                playSound(1,3);
                break;
            case R.id.pause:
                mSoundpool.pause(1);
                mSoundpool.stop(1);
                break;
            default:
                break;
        }
    }

2. 创建SoundPool对象,与启动停止播放:

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        initSp();
        start = (Button) findViewById(R.id.start);
        pause = (Button) findViewById(R.id.pause);

        start.setOnClickListener(this);
        pause.setOnClickListener(this);

    }
    
    private void initSp() {   // 初始化 mSoundpool     
        if (Build.VERSION.SDK_INT >= 21) {
            SoundPool.Builder builder = new SoundPool.Builder();
            builder.setMaxStreams(1);
            AudioAttributes.Builder attrBuilder = new AudioAttributes.Builder();
            attrBuilder.setLegacyStreamType(AudioManager.STREAM_MUSIC);
            builder.setAudioAttributes(attrBuilder.build());
            mSoundpool = builder.build();
        } else {
            mSoundpool = new SoundPool(1, AudioManager.STREAM_MUSIC, 0);
        }

            map = new HashMap();
            // 加载资源文件
            map.put(1, mSoundpool.load(this, R.raw.008, 1));
    }
    

    //  进行播放
    private void playSound(int sound, int number) {
    mSoundpool.play( sound, 
                 1,       // leftVolume
                 1,       // rightVolume
                 1,       // priority
                 number,  // loop
                (float)1);// rate,1为正常速度
    }


3. 按照,如上最简步骤进行调试,即可通过Soundpool类对象Api进行音频播放测试。 

相关内容

热门资讯

今日重大通报!wepoker软... 很多人使用云端 AI 时,都担心wepoker软件辅助程序、内部资料上传带来隐私风险。这款本地运行的...
传递经验!wpk辅助哪里买,德... 本地部署 AI 黑科技工具迎来新版本,不用上传文件到云端就能完成wpk辅助哪里买解析、 AI 处理、...
我来教大家!!wpk私人局辅助... 一款 AI 游戏攻略黑科技工具上线,查攻略效率直接开挂。它整合版本更新、装备搭配、BOSS 打法、牌...
安装教程!wejoker私人辅... AI 黑科技赛道又上新,这款智能处理工具堪称效率开挂,专门面向短视频创作者打造。它打通脚本撰写、AI...
玩家必备教程!wpk辅助插件,... 您好,玩家必备教程!wpk辅助插件,wepoker开挂工具插件(先前存在有透视挂)这款游戏可以开挂的...
一分钟揭秘!德扑之心免费透视,... 一分钟揭秘!德扑之心免费透视,wepoker真的有挂教程(果然是真的有开挂)AI 是一款可以让一直输...
重大通报!德扑圈有透视吗,德普... 您好:德扑圈有透视吗这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现很多用户的牌特...
一分钟揭秘!德普之星有辅助软件... 德普之星有辅助软件吗AI 游戏攻略黑科技上线本地缓存功能,离线查阅能力开挂。提前下载对应游戏攻略数据...
热点推荐!wepoker辅助真... 『标题:当前标题』主打赛后复盘的 AI 游戏攻略黑科技走红,对局总结能力开挂。上传对局回放或者战绩截...
详细教程!德普之星辅助器怎么用... 本地部署 AI 黑科技工具迎来新版本,不用上传文件到云端就能完成德普之星辅助器怎么用解析、 AI 处...