Implementasi HTTP Connection Implementasi SQLite Implementasi Aplikasi Konversi Mata Uang

4.1.3 Implementasi HTTP Connection

Kode Program 4. 2 Http Connection Kode Program 4.2 merupakan Http Connection yang digunakan aplikasi untuk terhubung ke file kurs.php yang ada di web hosting, sehingga dapat menerima data hasil fetching berupa string pada variabel response. Data yang diterima dapat berupa tanggal atau nilai kurs tergantung request yang dikirim.

4.1.4 Implementasi SQLite

Pengimplementasian SQLite pada aplikasi konversi mata uang ini, berfungsi untuk menyimpan data kurs dari Yahoo Finance. String url = http:alfyan.goodluckwith.uskurs.php?usd=+aw+ct=+awi; HttpClient httpclient = new DefaultHttpClient; HttpRequestBase httpRequest = null; HttpResponse httpResponse = null; InputStream inputStream = null; String response1 = ; String response = ; StringBuffer buffer = new StringBuffer; httpRequest = new HttpGeturl; try{httpResponse = httpclient.executehttpRequest;} catch ClientProtocolException e1{e1.printStackTrace;} catch IOException e1{e1.printStackTrace;} try{inputStream = httpResponse.getEntity.getContent;} catch IllegalStateException e{e.printStackTrace;} catch IOException e{e.printStackTrace;} byte[] data = new byte[512]; int len = 0; try{while -1 = len = inputStream.readdata {buffer.appendnew Stringdata, 0, len;}} catch IOException e{e.printStackTrace;} try{inputStream.close;} catch IOException e{e.printStackTrace;} response = buffer.toString; Kode Program 4.3 Koneksi Sqlite Kode Program 4.3 meng-extend class SQLiteOpenHelper yang berfungsi untuk mengatur pembuatan database onCreate dan manajemen versi onUpdate.

4.1.5 Implementasi Aplikasi Konversi Mata Uang

Dalam aplikasi konversi mata uang, saat pertama kali diakses aplikasi akan memeriksa data di dalam database local phone menggunakan Kode Program 4.4. Kode Program 4.4 Periksa Data private static class DatabaseHelper extends SQLiteOpenHelper { DatabaseHelperContext context { supercontext, DATABASE_NAME, null, DATABASE_VERSION; } Override public void onCreateSQLiteDatabase db { db.execSQLDATABASE_CREATE; db.execSQLDATABASE_CREATE2; } Override public void onUpgradeSQLiteDatabase db, int oldVersion, int newVersion { Log.wTAG, Upgrading database from version + oldVersion + to + newVersion + , which will destroy all old data; db.execSQLDROP TABLE IF EXISTS notes; onCreatedb; Listdata list = new ArrayListdata; Cursor cursor = this.mDb.queryDATABASE_TABLE, new String[] {KEY_TITLE}, null, null, null, null, null; ifcursor.getCount==0{ data dt = new data; dt.setTanggalkosong; list.adddt;} ifcursor.getCount=0{ if cursor.moveToFirst { do { data dt = new data; dt.setTanggalcursor.getString0; list.adddt; } Kode Program 4.4 memeriksa jumlah baris yang ada di dalam tabel tanggal, jika tidak ada baris atau baris sama dengan nol berarti database masih kosong. Apabila jumlah baris tidak sama dengan nol, maka data tanggal akan dimasukkan ke model untuk proses selanjutnya. Jika data di dalam database masih kosong pengguna aplikasi pertama kali setelah diinstall, maka user harus download data kurs terlebih dahulu. Jika database tidak kosong, maka tanggal pada database akan diperiksa untuk menentukan apakah data perlu diperbaharui atau tidak. Gambar 4.3 merupakan alert dialog untuk download data karena data di dalam database local phone masih kosong. Gambar 4.3 Alert Dialog Download Kode Program 4.5 Insert Data Kurs ContentValues initialValues = new ContentValues; initialValues.putKEY_JENIS, dt.getJenis; initialValues.putKEY_NILAI, dt.getNilai; return mDb.insertDATABASE_TABLE2, null, initialValues; Kode Program 4.5 merupakan kode program yang berfungsi untuk menyimpan data hasil fetching yang berupa nilai kurs dan jenis mata uangnya ke tabel kurs. Kode Program 4.6 Insert Data Tanggal Kode Program 4.6 merupakan kode program yang berfungsi untuk menyimpan data hasil fetching yang berupa tanggal kurs ke tabel tanggal. Gambar 4.4 merupakan alert dialog untuk update, karena data tanggal pada database local phone tidak sesuai dengan tanggal yang sedang berlaku pada saat menjalankan aplikasi konversi. Gambar 4.4 Alert Dialog Pilihan Update ContentValues initialValues = new ContentValues; initialValues.putKEY_ROWID, dt.getId; initialValues.putKEY_TITLE, dt.getTanggal; return mDb.insertDATABASE_TABLE, null, initialValues; Kode Program 4.7 Banding Tanggal 1 Kode Program 4.7 berfungsi untuk membandingkan tanggal yang sedang berlaku dengan tanggal dari tabel tanggal. Kedua data tanggal diubah formatnya terlebih dahulu ke date “dd-MM-yyyy”, jika tanggal dari tabel tanggal nilainya sebelum tanggal sekarang maka muncul alert dialog untuk update. Proses membandingkan data tanggal pada database local phone dengan data tanggal Yahoo Finance yang menggunakan Kode Program 4.8 akan berjalan ketika memilih tombol yes pada alert dialog update atau saat memilih menu update. Jika data tanggal pada database local phone adalah sebelum data tanggal Yahoo Finance maka proses update akan berlanjut sampai selesai. Kode Program 4.8 Banding Tanggal 2 DateFormat df = new SimpleDateFormat dd-MM-yyyy; Date date = new Date; int tahun = date.getYear + 1900; int bulan = date.getMonth + 1; int tanggal = date.getDate; try { Date d1 = df.parseString.valueOftanggal.toString + - + String.valueOfbulan.toString + - + String.valueOftahun.toString; Date tau = df.parsedt.getPup; iftau.befored1{ dt.setUgakayo; DateFormat dg = new SimpleDateFormat dd-MM-yyyy; try { Date zz1= dg.parsedt.getPup; Date zz2= dg.parsedt.getPupi; ifzz2.afterzz1{ dt.setUgakayo; } Jika nilai dari variabel zz2data tanggal Yahoo Finance setelah varibel zz1data tanggal pada database local phone, maka proses update akan lanjut. Kode Program 4.9 Update Data Kurs Kode Program 4.9 merupakan kode program yang berfungsi untuk mengubah nilai kurs yang ada di tabel kurs dengan data hasil fetching yang sesuai dengan jenis mata uangnya. Kode Program 4.10 Update Data Tanggal Kode Program 4.10 merupakan kode program yang berfungsi untuk mengubah nilai tanggal yang ada di tabel tanggal dengan data hasil fetching. Gambar 4.5 merupakan menu utama yang akan langsung tampil jika tanggal pada database up to date. ContentValues initialValues = new ContentValues; initialValues.putKEY_NILAI, dt.getNilai; return mDb.updateDATABASE_TABLE2, initialValues, KEY_JENIS + =?, new String[]{dt.getJenis} 0; ContentValues args = new ContentValues; args.putKEY_TITLE, dt.getTanggal; return mDb.updateDATABASE_TABLE, args, KEY_ROWID + = + dt.getId, null 0; Gambar 4.5 Menu Utama Tampilan yang akan keluar saat memilih menu nilai kurs terlihat pada Gambar 4.6. . Gambar 4.6 Tampilan Menu Nilai Kurs Kode Program 4.11 Menu Nilai Kurs Kode Program 4.11 berfungsi untuk memanggil semua data nilai kurs beserta jenis mata uangnya dari tabel kurs, dengan format jenis mata uang=nilai kursnya.

4.2 Pengujian Aplikasi

Dokumen yang terkait

Institutional Repository | Satya Wacana Christian University: Perancangan Aplikasi Mengenal Nama Binatang dalam Bahasa Inggris Berbasis Android T1 562011019 BAB IV

0 0 11

Institutional Repository | Satya Wacana Christian University: Perancangan dan Implementasi Aplikasi Objek Wisata Kabupaten Poso Berbasis Android T1 672006703 BAB IV

0 1 22

Institutional Repository | Satya Wacana Christian University: Perancangan Aplikasi Simulasi TracingAlumni Berbasis Android T1 672007256 BAB IV

0 0 13

Institutional Repository | Satya Wacana Christian University: Pemanfaatan SQLite pada Aplikasi Konversi Mata Uang di Android

0 0 12

Institutional Repository | Satya Wacana Christian University: Pemanfaatan SQLite pada Aplikasi Konversi Mata Uang di Android T1 672007047 BAB I

0 0 5

Institutional Repository | Satya Wacana Christian University: Pemanfaatan SQLite pada Aplikasi Konversi Mata Uang di Android T1 672007047 BAB II

0 0 14

Institutional Repository | Satya Wacana Christian University: Pemanfaatan SQLite pada Aplikasi Konversi Mata Uang di Android T1 672007047 BAB V

0 0 2

Institutional Repository | Satya Wacana Christian University: Perancangan dan Implementasi Aplikasi Virtual Gamelan Berbasis Android T1 672007003 BAB IV

0 0 39

T1__BAB IV Institutional Repository | Satya Wacana Christian University: Perancangan Sistem Monitoring pada Akuarium Ikan Symphysodon Discus Berbasis Android Smartphone T1 BAB IV

1 3 8

T1__BAB IV Institutional Repository | Satya Wacana Christian University: Stop Kontak Terkendali oleh Android Application Via Bluetooth T1 BAB IV

0 0 15