SQL Lite









SQL LITE
pertama-tama kita buat sebuah project android baru terlebih dahulu. Nama package nya terserah, tapi pada program ini nama package-nya adalah id.twooh.appinventory. Silahkan nanti disesuaikan.  Kemudian, karena aplikasi ini menggunakan paradigma MVC. Maka kita akan buat kelas modelnya, yaitu kelas Barang.java.


Kelas barang berfungsi untuk mendefinisikan objek barang beserta fungsi-fungsi dan atribut-atributnya. Yah seperti barang pada umumnya, mereka mempunyai nama, ID, merk, dan sebagainya. Inilah kode untuk kelas Barang.java.


package id.twooh.appinventory;
public class Barang {
    private long id;
    private String nama_barang;
    private String merk_barang;
    private String harga_barang;
    public Barang()
    {
    }
    /**
     * @return the id
     */
    public long getId() {
        return id;
    }
    /**
     * @param id the id to set
     */
    public void setId(long id) {
        this.id = id;
    }
    /**
     * @return the nama_barang
     */
    public String getNama_barang() {
        return nama_barang;
    }
    /**
     * @param nama_barang the nama_barang to set
     */
    public void setNama_barang(String nama_barang) {
        this.nama_barang = nama_barang;
    }
    /**
     * @return the merk_barang
     */
    public String getMerk_barang() {
        return merk_barang;
    }
    /**
     * @param merk_barang the merk_barang to set
     */
    public void setMerk_barang(String merk_barang) {
        this.merk_barang = merk_barang;
    }
    /**
     * @return the harga_barang
     */
    public String getHarga_barang() {
        return harga_barang;
    }
    /**
     * @param harga_barang the harga_barang to set
     */
    public void setHarga_barang(String harga_barang) {
        this.harga_barang = harga_barang;
    }
    @Override
    public String toString()
    {
        return "Barang "+ nama_barang +" "+ merk_barang + " "+ harga_barang;
    }
}
Database Helper sebenarnya sudah ada kelasnya pada Android, yaitu bernama SQLiteOpenHelper. Sehingga kita tinggal meng-extends kelas ini dari kelas SQLiteOpenHelper, atau dengan kata lain, melakukan pewarisan.

Inilah kode untuk kelas DBHelper.java :



package id.twooh.appinventory;
//deklarasi import package
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.util.Log;
public class DBHelper extends SQLiteOpenHelper{
        /** deklarasi konstanta-konstanta yang digunakan pada database, seperti nama tabel,
        nama-nama kolom, nama database, dan versi dari database **/
    public static final String TABLE_NAME = "data_inventori";
    public static final String COLUMN_ID = "_id";
    public static final String COLUMN_NAME = "nama_barang";
    public static final String COLUMN_MERK = "merk_barang";
    public static final String COLUMN_HARGA = "harga_barang";
    private static final String db_name ="inventori.db";
    private static final int db_version=1;
    // Perintah SQL untuk membuat tabel database baru
      private static final String db_create = "create table "
          + TABLE_NAME + "("
          + COLUMN_ID +" integer primary key autoincrement, "
          + COLUMN_NAME+ " varchar(50) not null, "
          + COLUMN_MERK+ " varchar(50) not null, "
          + COLUMN_HARGA+ " varchar(50) not null);";
    public DBHelper(Context context) {
        super(context, db_name, null, db_version);
        // Auto generated
    }
        //mengeksekusi perintah SQL di atas untuk membuat tabel database baru
    @Override
    public void onCreate(SQLiteDatabase db) {
        db.execSQL(db_create);
    }
        // dijalankan apabila ingin mengupgrade database
    @Override
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
        Log.w(DBHelper.class.getName(),"Upgrading database from version " + oldVersion + " to "
                + newVersion + ", which will destroy all old data");
        db.execSQL("DROP TABLE IF EXISTS " + TABLE_NAME);
        onCreate(db);
    }
}
Oke, seperti yang bisa kita lihat di atas. Kelas DBHelper.java kebanyakan berisi konstanta-konstanta seperti nama tabel, nama database, nama kolom, dan sebagainya. Hal ini untuk memudahkan kita nantinya. Dimana ketika ingin menggunakan konstanta tersebut, kita tidak usah lagi menulis nama tabel berulang kali, namun cukup dengan mengaksesnya dari kelasDBHelper.

Kemudian ada juga konstanta berupa SQL statement, yang untuk mereka yang ahli database, sebenarnya perintah itu digunakan untuk membuat tabel database baru. Perintah SQL tersebut kemudian akan dieksekusi pada method onCreate(). 
 TerimaKasih

0 komentar:

Membuat aplikasi memanggil dan mengirim pesan menggunakan android
Aplikasi ini tidak jauh berbeda dengan aplikasi yang hanya saja untuk bentuk pemanggilan berbeda dengan aplikasi telepon yang biasa kita gunakan. Fungsi dari aplikasi ini adalah untuk melakukan dan menerima panggilan telepon,  umumnya juga mempunyai fungsi pengiriman dan penerimaan pesan singkat.
Pada kesempatan kali ini saya akan menjelaskan cara kerja dan cara untuk membuat aplikasi ini.
Langkah pertama ayang saya lakukan adalah membuka aplikasi android.

Setelah itu kita buat nama project dari aplikasi tersebut seperti contoh dibawah ini



<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
   xmlns:tools="http://schemas.android.com/tools"
   android:layout_width="match_parent"
   android:layout_height="match_parent"
   android:paddingBottom="@dimen/activity_vertical_margin"
   android:paddingLeft="@dimen/activity_horizontal_margin"
   android:paddingRight="@dimen/activity_horizontal_margin"
   android:paddingTop="@dimen/activity_vertical_margin"
   android:background="@drawable/back"
   tools:context=".MainActivity" >

   <EditText
       android:id="@+id/editText1"
       android:textColor="#ffffffff"
       android:layout_width="fill_parent"
       android:layout_height="wrap_content"
       android:layout_alignParentTop="true"
       android:hint="Type a number to call"
       android:layout_centerHorizontal="true"
       android:layout_marginTop="80dp"
       android:ems="10" >

       <requestFocus />
   </EditText>

   <Button
       android:id="@+id/button1"
       android:layout_width="fill_parent"
       android:layout_height="wrap_content"
       android:layout_below="@+id/editText1"
       android:layout_centerHorizontal="true"
       android:layout_marginTop="40dp"
       android:text="Call" />

   <Button
       android:id="@+id/button2"
       android:layout_width="fill_parent"
       android:layout_height="wrap_content"
       android:layout_alignLeft="@+id/button1"
       android:layout_below="@+id/button1"
       android:layout_marginTop="16dp"
       android:text="Dial Call" />

</RelativeLayout>


Setelah selesai membuat tampilan layout main.xml sekarang kita buat script java MainActivity.java agar supaya programnya bisa dijalankan. Dibawah ini adalah script yang kita tambahkan di class MainActivity.java.


import android.net.Uri;
import android.os.Bundle;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.telephony.PhoneStateListener;
import android.telephony.TelephonyManager;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

public class MainActivity extends Activity {

private EditText number;
private Button call;
private Button dial;
   @Override
   protected void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);
       setContentView(R.layout.activity_main);
       
       number = (EditText) findViewById(R.id.editText1);
       call = (Button) findViewById(R.id.button1);
       dial = (Button) findViewById(R.id.button2);
       
       MyPhoneListener PhoneListener = new MyPhoneListener();
       TelephonyManager telephonyManager = (TelephonyManager) this.getSystemService(Context.TELEPHONY_SERVICE);
       
       telephonyManager.listen(PhoneListener, PhoneStateListener.LISTEN_CALL_STATE);
       
       call.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
try {
String uri = "tel:" + number.getText().toString();
Intent callIntent = new Intent(Intent.ACTION_CALL, Uri.parse(uri));
startActivity(callIntent);
}catch (Exception e){
Toast.makeText(getApplicationContext(), "Your Call has failed", Toast.LENGTH_SHORT).show();
e.printStackTrace();
}
}
});
       
       dial.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
try {
String uri = "tel:" + number.getText().toString();
Intent dialIntent = new Intent(Intent.ACTION_DIAL, Uri.parse(uri));
startActivity(dialIntent);
}catch (Exception e){
Toast.makeText(getApplicationContext(), "Your Call has failed", Toast.LENGTH_SHORT).show();
e.printStackTrace();
}
}
});
   }
   
   private class MyPhoneListener extends PhoneStateListener{
   
    private boolean onCall = false;
   
    @Override
    public void onCallStateChanged(int state, String incomingNumber){
   
    switch (state){
    case TelephonyManager.CALL_STATE_RINGING:
   
    Toast.makeText(MainActivity.this, incomingNumber + "calls you", Toast.LENGTH_SHORT).show();
   
    break;
   
   
    case TelephonyManager.CALL_STATE_OFFHOOK:
    Toast.makeText(MainActivity.this, "on call", Toast.LENGTH_SHORT ).show();
   
    onCall = true;
    break;
   
    case TelephonyManager.CALL_STATE_IDLE:
    if (onCall == true){
    Toast.makeText(MainActivity.this, "restart app after", Toast.LENGTH_SHORT).show();
   
    Intent restart = getBaseContext().getPackageManager().getLaunchIntentForPackage(getBaseContext().getPackageName());
    restart.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
    startActivity(restart);
   
    onCall = false;
    }
    break;
    default:
    break;
    }
    }
   
   }


   @Override
   public 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;
   }
   
}

Setelah selesai membuat script MainActivity.java sekarang kita coba running di emulator android. Dibawah ini adalah gambar tampilan dari aplikasi.


Untuk menjalankan aplikasi ini kita hanya perlu memasukan nomor tujuan di “Type a number to call” kameudian kita panggil

 

Selain itu kita juga bisa menambahkan nomor kontak diaplikasi ini caranya klik menu “Diel Call” Kemudian pilih menu kontak yang ada diatas lalu pilih gambar kontak yang ada dibawah sebelah kanan
 
Kemudian pilih keep local lalu isi nomor kontak dan data diri anda

Setelah selesai  menginput nomor telopon dan identitas anda klik Done yang ada dibagian atas maka nomor telponnya akan tersimpan.
 
Selain bisa menelpon aplikasi ini juga bisa kita gunakan untuk mengirim pesan caranya klik gambar pesan yang ada disamping nomor telepon maka anda akan pindah ditempat untuk mengirim pesan.
Baiklah tadi saya ssudah menjelaskan bagaimana cara membuat aplikasi call semoga apa yang saya jelaskan tadi bisa bermanfaat bagi pembaca.

0 komentar: