
Hallo gan :D , kembali lagi dengan penulis gagah dan berani ini hehe , kali ini saya penulis di belicode.com ingin berbagi tutorial cara dasar membuat aplikasi drum dengan android studio , nah yang kita bahas ini buka sampai menjadi aplikasi jadi yg siap publish ya gan tapi dasar dasar nya saja , nanti agan kembangin sendiri . Atau jika agan ingin membeli yang full versi silakan kunjungi : Source Code Aplikasi Drum Android Studio Suport Admob + Play MP3 + Record Audio . nah pada Tutorial Dasar Membuat Aplikasi Drum Dengan Android studio ini kita membuat dengan SoundPool pemutar audio sejenis MediaPlayer yang sudah di sediakan Android Studio sendiri .
1. Langkah pertama silakan seperti biasa kita buat new project dengan Nama : Drum Simulator
2. Langkah selanjutnya download file png yang nanti akan di gunakan pada imageview ,
3. Siapkan file .ogg yang ingin di gunakan pada suara drum
4.Bukin folder asset dengan cara : klik kanan pada folder app->new->Folder->Asset Folder


xml version="1.0" encoding="utf-8"?>xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
xmlns:ads="http://schemas.android.com/apk/res-auto"
>
android:id="@+id/bass"
android:layout_width="185.0dip"
android:layout_height="170.0dip"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:src="@drawable/snare" />




package com.belicode.drumsimulator;
import android.content.Context;
import android.content.res.AssetManager;
import android.media.SoundPool;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.MotionEvent;
import android.view.View;
import android.widget.ImageView;
import android.widget.Toast;
import java.io.IOException;
public class MainActivity extends AppCompatActivity {
ImageView imgbass;
SoundPool bass_sound;
int bass_audio;
AssetManager mAssetManager;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
imgbass = (ImageView) findViewById(R.id.bass);
MainActivity.this.bass_sound = new SoundPool(6, 3, 0);
MainActivity.this.mAssetManager = getAssets();
MainActivity.this.bass_audio = loadSound("bass.ogg");
imgbass.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
int motionEvent = event.getAction() & MotionEvent.ACTION_BUTTON_PRESS;
if (motionEvent == 0 || motionEvent == 5) {
switch (v.getId()) {
case R.id.bass:
MainActivity.this.bass_sound.play(bass_audio, 1.0f, 1.0f, 1, 0, 1.0f);
break;
}
}
return true;
}
});
}
private int loadSound(String str) {
try {
return this.bass_sound.load(this.mAssetManager.openFd(str), 1);
} catch (IOException e) {
e.printStackTrace();
Context applicationContext = getApplicationContext();
StringBuilder stringBuilder = new StringBuilder();
stringBuilder.append("Load failed ");
stringBuilder.append(str);
Toast.makeText(applicationContext, stringBuilder.toString(), Toast.LENGTH_SHORT).show();
stringBuilder = new StringBuilder();
stringBuilder.append("Load failed ");
stringBuilder.append(str);
Log.d("FAILED", stringBuilder.toString());
return -1;
}
}
}

45