Androidアプリ開発

アプリに効果音をつける

この記事は約7分で読めます。
スポンサーリンク

こんにちは、まっさん(@Tera_Msaki)です。

この記事はAndroidスマホ用のアプリ開発の中で、
今後の開発で再使用性が高いと思われるコーディングをまとめたものです。
Javaでの開発経験、XML構文規則、Androidのアプリ開発経験がある方を対象としています。
Androidのアプリ開発でお役にたててれば、嬉しいです。
(これからAndroidのアプリ開発やJavaでの開発を始めたい方への案内は、記事の最後で紹介します)

◎テーマ
Androidスマホのアプリ開発で効果音を実装する

◎ポイント

Androidスマホのアプリ開発で処理の実行を通知する仕組みとして、効果音は有効な手段のひとつです。
Androidスマホのアプリで効果音を出す場合、音源となるmp3形式のファイルを再生します。

◎mp3ファイルをリソースに登録する

リソース(res)に音源(mp3ファイル)を格納するためのフォルダ(raw)を作成します。
作成したフォルダにアプリで使用するmp3ファイルを格納します。

◎mp3ファイルをロードする

mp3ファイルの再生には、SoundPoolを使用します。
ActivityのonCreateなどイニシャルプロセスで、使用する
mp3ファイルをあらかじめロードします。

    //効果音
    public SoundPool                soundPool;
    public int[]                    action = { 0,0,0,0 };
    :

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        :
        // 効果音
        AudioAttributes audioAttributes = new AudioAttributes.Builder()
                .setUsage(AudioAttributes.USAGE_MEDIA)
                .setContentType(AudioAttributes.CONTENT_TYPE_MUSIC)
                .build();
        soundPool = new SoundPool.Builder()
                .setAudioAttributes(audioAttributes)
                .setMaxStreams(3)
                .build();
        action[0] = soundPool.load(this, R.raw.out, 1);
        action[1] = soundPool.load(this, R.raw.in, 1);
        action[2] = soundPool.load(this, R.raw.omit, 1);
        action[3] = soundPool.load(this, R.raw.add, 1);
    }

効果音を実装する

mp3ファイルの再生は、playメソッドを使用して再生します。

        :      
        customDialogMessage.setCustomDialogListener(new CustomDialogListener() {
            @Override
            public void doOkClick(View view) {
                    soundPool.play(action[2], 1f , 1f, 0, 0, 1f);
                    :
            }

SoundPoolは効果音など再生時間が短い音源を再生するのに適したライブラリです。
BGMなど再生時間が長い音源を再生する場合は、MediaPlayerなどの使用を検討ください。

効果音を入手するには

mp3ファイルですので、自分で作成することも可能ですが、フリー音源を利用することも可能です。
フリーであっても、クレジット表示など利用するためのポリシーもありますので、確認の上、利用していただければと思います。

ブログランキング・にほんブログ村へ

◎これからAndroidのアプリ開発やJavaでの開発を始めたい方へ

初めてのAndroidのアプリ開発では、アプリケーション開発経験がない方や、
アプリケーション開発経験がある方でも、JavaやC#などのオブジェクト指向言語が初めての方は、
書籍などによる独学ではアプリ開発できるようになるには、
かなりの時間がかかりますので、オンラインスクールでの習得をおススメします。

コメント欄

タイトルとURLをコピーしました