- Eclipse + SDK
- Bluestack
- Efek suara gitar bernada E, A, D, G, B, E
- Gambar texture kayu yang merupakan texture badan gitar sebagai background dari aplikasi ini
- Gambar pick gitar untuk icon aplikasi
- Langkah pertama adalah melakukan pengaturan sambungan dua tools yang akan kita gunakan yakni, eclipse dan bluestack.
- Jalankan kedua aplikasi di atas kemudian koneksikan keduanya. Untuk melakukan koneksi, buka command prompt dan masuk ke folder “platform-tools” pada eclipse.
- Kemudian
masukkan perintah : adb connect localhost , apabila berhasil maka akan muncul pesan
seperti ini.

- Kemudian pada eclipse buatlah project baru, File > New > Android Application Project, lalu klik next
- Kemudian set icon aplikasi dengan gambar pick gitar yang sudah disiapkan.
- Lalu
pada package explorer buka tab res >
layout > activity_main.xml, ubahlah RelativeLayout menjadi LinearLayout
dengan cara pada tab outline klik kanan
> change layout > linearlayout(vertical) > OK
- Masukkan gambar kayu ke dalam project dengan cara buka tab res kemudian drag and drop gambar ke dalam menu drawable > copy file > ok.
- Buka
tab res > drawable kemudian buat
file xml baru dengan nama patternbgwood.xml
untuk membuat background kayu. file tersebut dibuat dengan melakukan klik kanan drawable > new > android
xml file kemudian isi kode di bawahpatternbgwood.xmlxml version="1.0" encoding="utf-8"?><bitmap xmlns:android="http://schemas.android.com/apk/res/android"android:src="@drawable/wood"android:tileMode="repeat" ></bitmap>
- Kemudian
buat kelas xml lain pada drawable dengan nama circle_black.xml untuk membuat dasar hole gitar berwarna hitamcircle_black.xmlxml version="1.0" encoding="utf-8"?><shapexmlns:android="http://schemas.android.com/apk/res/android"android:shape="oval"><solidandroid:color="#000000"/><sizeandroid:width="12dp"android:height="12dp"/></shape>
- Buat
satu lagi file xml dengan nama buttonstring.xml
untuk membuat layout senar yang nanti dijadikan tombol senarbuttonstring.xmlxml version="1.0" encoding="utf-8"?><selector xmlns:android="http://schemas.android.com/apk/res/android"><item android:state_pressed="true"><shape><solid android:color="#262523" /></shape></item><item><shape><gradient android:angle="180"android:endColor="#262523"android:startColor="#8c8c8c" /></shape></item></selector>
- Buka editor activity_main.xml di tab res > layout lalu ketikkan source code berikut.
Setelah source code diatas dibuat nantinya pada menu graphical layout akan menghasilkan tampilan seperti ini.activity_main.xml<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:id="@+id/LinearLayout1"android:layout_width="match_parent"android:layout_height="match_parent"android:layout_gravity="center_horizontal"android:background="@drawable/paternbgwood"android:gravity="center_horizontal"android:orientation="vertical"tools:context=".MainActivity" ><FrameLayoutandroid:layout_width="match_parent"android:layout_height="match_parent"android:layout_gravity="center_horizontal" ><Viewandroid:id="@+id/view1"android:layout_width="250dp"android:layout_height="250dp"android:layout_gravity="bottom|center_horizontal"android:layout_marginBottom="24dp"android:background="@drawable/circle_black" /><LinearLayoutandroid:layout_width="match_parent"android:layout_height="match_parent"android:layout_gravity="center_horizontal"android:gravity="center_horizontal" ><FrameLayoutandroid:layout_width="wrap_content"android:layout_height="match_parent" ><Buttonandroid:id="@+id/Ebtn"android:layout_width="9dp"android:layout_height="match_parent"android:layout_marginLeft="16dp"android:layout_marginRight="16dp"android:background="@drawable/buttonstring" /><TextViewandroid:id="@+id/TextView05"android:layout_width="32dp"android:layout_height="32dp"android:layout_gravity="center_horizontal"android:layout_marginTop="32dp"android:background="@drawable/circle_white"android:gravity="center_horizontal"android:padding="4dp"android:text="E"android:textAppearance="?android:attr/textAppearanceMedium" /></FrameLayout><FrameLayoutandroid:layout_width="wrap_content"android:layout_height="match_parent" ><Buttonandroid:id="@+id/Abtn"android:layout_width="8dp"android:layout_height="match_parent"android:layout_marginLeft="16dp"android:layout_marginRight="16dp"android:background="@drawable/buttonstring" /><TextViewandroid:id="@+id/TextView04"android:layout_width="32dp"android:layout_height="32dp"android:layout_gravity="center_horizontal"android:layout_marginTop="32dp"android:background="@drawable/circle_white"android:gravity="center_horizontal"android:padding="4dp"android:text="A"android:textAppearance="?android:attr/textAppearanceMedium" /></FrameLayout><FrameLayoutandroid:layout_width="wrap_content"android:layout_height="match_parent" ><Buttonandroid:id="@+id/Dbtn"android:layout_width="7dp"android:layout_height="match_parent"android:layout_marginLeft="16dp"android:layout_marginRight="16dp"android:background="@drawable/buttonstring" /><TextViewandroid:id="@+id/TextView03"android:layout_width="32dp"android:layout_height="32dp"android:layout_gravity="center_horizontal"android:layout_marginTop="32dp"android:background="@drawable/circle_white"android:gravity="center_horizontal"android:padding="4dp"android:text="D"android:textAppearance="?android:attr/textAppearanceMedium" /></FrameLayout><FrameLayoutandroid:layout_width="wrap_content"android:layout_height="match_parent" ><Buttonandroid:id="@+id/Gbtn"android:layout_width="6dp"android:layout_height="match_parent"android:layout_marginLeft="16dp"android:layout_marginRight="16dp"android:background="@drawable/buttonstring" /><TextViewandroid:id="@+id/TextView02"android:layout_width="32dp"android:layout_height="32dp"android:layout_gravity="center_horizontal"android:layout_marginTop="32dp"android:background="@drawable/circle_white"android:gravity="center_horizontal"android:padding="4dp"android:text="G"android:textAppearance="?android:attr/textAppearanceMedium" /></FrameLayout><FrameLayoutandroid:layout_width="wrap_content"android:layout_height="match_parent" ><Buttonandroid:id="@+id/Bbtn"android:layout_width="5dp"android:layout_height="match_parent"android:layout_marginLeft="16dp"android:layout_marginRight="16dp"android:background="@drawable/buttonstring" /><TextViewandroid:id="@+id/TextView01"android:layout_width="32dp"android:layout_height="32dp"android:layout_gravity="center_horizontal"android:layout_marginTop="32dp"android:background="@drawable/circle_white"android:gravity="center_horizontal"android:padding="4dp"android:text="B"android:textAppearance="?android:attr/textAppearanceMedium" /></FrameLayout><FrameLayoutandroid:layout_width="wrap_content"android:layout_height="match_parent"android:layout_gravity="center_horizontal" ><Buttonandroid:id="@+id/E2btn"android:layout_width="4dp"android:layout_height="match_parent"android:layout_marginLeft="16dp"android:layout_marginRight="16dp"android:background="@drawable/buttonstring" /><TextViewandroid:id="@+id/textView1"android:layout_width="32dp"android:layout_height="32dp"android:layout_gravity="center_horizontal"android:layout_marginTop="32dp"android:background="@drawable/circle_white"android:gravity="center_horizontal"android:padding="4dp"android:text="E"android:textAppearance="?android:attr/textAppearanceMedium" /></FrameLayout></LinearLayout></FrameLayout></LinearLayout></LinearLayout>- Masukkan resource efek suara yang telah disiapkan dengan melakukan drag & drop di res > raw(apabila folder raw belum tersedia, silahkan buat folder baru)
- Sekarang
tinggal membuat method yang dapat menjalankan button yang telah dibuat
MainActivity.java pada menu src >
package > MainActivity.javaMainActivity.javapackage com.guitar.tuner.app;import android.media.MediaPlayer;import android.os.Bundle;import android.app.Activity;import android.view.Menu;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.Toast;public class MainActivity extends Activity implements OnClickListener {private MediaPlayer player;private Button EButton;private Button BButton;private Button GButton;private Button DButton;private Button AButton;private Button E2Button;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);EButton = (Button) findViewById(R.id.Ebtn);AButton = (Button) findViewById(R.id.Abtn);DButton = (Button) findViewById(R.id.Dbtn);GButton = (Button) findViewById(R.id.Gbtn);BButton = (Button) findViewById(R.id.Bbtn);E2Button = (Button) findViewById(R.id.E2btn);EButton.setOnClickListener(this);AButton.setOnClickListener(this);DButton.setOnClickListener(this);GButton.setOnClickListener(this);BButton.setOnClickListener(this);E2Button.setOnClickListener(this);}@Overridepublic boolean onCreateOptionsMenu(Menu menu) {// Inflate the menu; this adds items to the action bar if it is present.getMenuInflater().inflate(R.menu.main, menu);return true;}@Overridepublic void onClick(View arg0) {// TODO Auto-generated method stubswitch (arg0.getId()) {case R.id.Ebtn:playSound(1);break;case R.id.Abtn:playSound(2);break;case R.id.Dbtn:playSound(3);break;case R.id.Gbtn:playSound(4);break;case R.id.Bbtn:playSound(5);break;case R.id.E2btn:playSound(6);break;}}private void playSound(int i) {// TODO Auto-generated method stubtry {if (player.isPlaying()) {player.stop();player.release();}} catch (Exception e) {}switch (i) {case 1:player = MediaPlayer.create(this, R.raw.e_tune);break;case 2:player = MediaPlayer.create(this, R.raw.a_tune);break;case 3:player = MediaPlayer.create(this, R.raw.d_tune);break;case 4:player = MediaPlayer.create(this, R.raw.g_tune);break;case 5:player = MediaPlayer.create(this, R.raw.b_tune);break;case 6:player = MediaPlayer.create(this, R.raw.e2_tune);break;}player.start();}public void onPause() {try {super.onPause();player.pause();} catch (Exception e) {}}public void onStop() {super.onStop();player.stop();}}
- Jalankan
aplikasi dengan cara klik kanan project
> Run As > Android Application. Apabila langkah yang dilakukan sudah
benar maka tampilan akan seperti gambar di bawah.










