Professional Documents
Culture Documents
ANDROID adalah sistem operasi untuk telepon seluler yang berbasis Linux.
ANDROID menyediakan platform terbuka bagi para pengembang buat menciptakan aplikasi
mereka sendiri untuk digunakan oleh bermacam peranti bergerak. Awalnya, Google Inc.
membeli Android Inc., pendatang baru yang membuat peranti lunak untuk ponsel. Kemudian
untuk mengembangkan ANDROID, dibentuklah Open Handset Alliance, konsorsium dari 34
perusahaan peranti keras, peranti lunak, dan telekomunikasi, termasuk Google, HTC, Intel,
Motorola, Qualcomm, T-Mobile, dan Nvidia.
Kode-kode pada ANDROID bersifat Open Source, sehingga sebagian besar kode-kode
ANDROID dirilis dibawah open-source Apache License, oleh karena itu siapa saja dapat
mendownload source code ANDROID secara utuh dan penuh, dan juga memberikan
keleluasaan kepada Produsen perangkat keras untuk menambahkan ekstensi mereka sendiri
agar membedakan dengan ANDROID dari vendor perangkat lainnya.
Keuntungan dari penggunaan ANDROID adalah bahwa android memberikan
pendekatan unified untuk mengembangkan aplikasinya. Dimana seorang developer hanya
perlu mengembangkan aplikasinya untuk ANDROID, dan aplikasi mereka dapat dijalankan di
berbagai perangkat berbasis ANDROID.
-
Versi ANDROID
Android telah merilis beberapa versi update-nya sejak pertama kali diperkenalkan pada
tahun 2005, berikut adalah tabel versi rilis ANDROID yang telah ada.
akselerasi perangkat keras (hardware) untuk grafis. Tablet pertama yang dibuat dengan
menjalankan Honeycomb adalah Motorola Xoom.
Apa Yang diperlukan dalam membangun sutu aplikasi Android..??
-
ADT (plug-in Eclipse untuk membuat project berbasis ADROID) , Cara Install ADT
plug-in:
1. Pilih menu Help Install new software(pada Eclipse)
2. Pada Dialog box ketik https://dl-ssl.google.com/android/eclipse/
3. Selanjutnya Eclipse akan mencari ADT plug-in
Apabila ADT telah terinstall, maka akan muncul menu berikut ini pada Eclipse.
Modul 1:
Membuat Program Sederhana untuk ANDROID
-
Dengan menggunakan Eclipse, kita buat project baru dari File new Android
Project
Buat nama untuk aplikasi yang akan dibuat, kita akan membuat sebuah aplikasi
dengan nama HelloWorld.
Klik Finish
Selanjutnya kita akan mengubah user interface (UI) dari aplikasi yang akan kita buat,
pengubahan ini dilakukan dengan melakukan perubahan coding pada
main.xml,untuk merubah main.xml klik tab yang berada di bagian bawah
tampilan Eclipse.
Setelah selesai, sekarang saatnya untuk mencoba Program yang baru saja kita buat
pada emulator ANDROID. Caranya dengan menekan F11 pada keyboard, dan pilih
Android Application
Tunggu beberapa saat, akan memerlukan beberapa menit saat pertama kali
menjalankan emulator ANDROID.
Setelah kita tampilkan pada emulator, maka aplikasi akan menjadi seperti gambar
berikut.
Modul 2:
Komponen User Interface (UI) dan Konsep Activity
Setelah pada penjelasan sebelumnya kita telah membuat contoh program sederhana dari
android, maka sekarang kita akan mempeleajari secara umum Arsitektur dari User
Interface (UI). Yang termasuk komponen UI pada Android adalah Activity dan User
Interface. Pada aplikasi Android biasanya User Interface berada pada lokasi
res/layout/filename.xml. Di mana coding java untuk memanggilnyu kita kenal
dengan R.layout.filename.
android:id
Resources is, yang berisi variable unik dari elemen tersebut.
android:layout_height
7
android:layout_width
Dimensi valuenya (width) yang diikutinya dengan opsi fill_parent atau
wrap_content
<View>
Sama seperti <ViewGroup> tetapi <View> lebih dikenal dengan Individual UI
component, atrributnya juga minimal terdiri dari tiga yang sama persis dengan yang
dimiliki oleh <ViewGroup>.
<requestFocus>
Element kosong yang bisa kita defenisikan dalam <view>
<include>
Memasukkan file layout ke dalam layout. Attributnya sama dengan <ViewGroup> dan
<View> tetapi ada satu tambahan attribut yaitu <resources> yang berfungsi untuk
menentukan file layout-nya.
1. Konsep Activity
Activity merupakan public class dalam aplikasi ANDROID. Setiap activity adalah sesuatu
yang unik atau single, yang ditujukan untuk meng-handle macam-macam hal yang
diinginkan oleh user. Setiap activity dimuat di dalam komponen UI dan XML nya terletak
di folder res/layout, contohnya bila anda ingin memuat UI dari main.xml.
setiap activity yang ada di program anda harus di dilisting di
AndroidManifest.xml, listing program pada AndroidManifest.xml akan
terlihat seperti berikut:
Setiap Activity pada aplikasi Android dikelola dengan sistem yang dikenal dengan activity
stack . Ketika suatu activity start , activity diletakkan pada stack yang paling atas dan
activty-activity yang sudah jalan berada dibawahnya.
Berikut ini adalah siklus activity dari saat dimulai, hingga akhir proses pemrograman.
android.app.Activity;
android.os.Bundle;
android.view.View;
android.widget.Button;
java.util.Date;
10
Apabila sudah sesuai, maka jalankan program. Jika coding sudah benar, maka hasilnya
akan seperti ini saat program di-run pada emulator
11
Modul 3 :
File Java
Berupa file java dimana merupakan file yang mengimplementasikan aksi dari widget.
Jika anda mendefenisikan suatu widget beserta posisinya di layar yang didefenisikan
dari file XML, kita harus melakukan coding di file java agar dapoat mengambil semua
nilai atribut dari tata letak yang didefinisikan di XML.
File XML
Sebuah file XML yang berada di res/values yang mendefenisikan komponenkomponen elemen XML yang digunakan untuk menginisialisasi widget serta attribut
yang mendukungnya.
12
Isikan dengan coding yang bercetak tebal berikut pada listing coding
main.xml.
<?xmlversion=1.0encoding=utf-8?>
<LinearLayoutxmlns:android=http://schemas.android.com/apk/res/android
android:orientation=vertical
android:layout_width=fill_parent
android:layout_height=fill_parent>
<Button android:id=@+id/btnSave
android:layout_width=fill_parent
android:layout_height=wrap_content
android:text=Save />
<Button android:id=@+id/btnOpen
android:layout_width=wrap_content
android:layout_height=wrap_content
android:text=Open />
<ImageButton android:id=@+id/btnImg1
android:layout_width=fill_parent
android:layout_height=wrap_content
android:src=@drawable/icon />
<EditText android:id=@+id/txtName
android:layout_width=fill_parent
android:layout_height=wrap_content />
<CheckBox android:id=@+id/chkAutosave
android:layout_width=fill_parent
android:layout_height=wrap_content
android:text=Autosave />
<CheckBox android:id=@+id/star
style=?android:attr/starStyle
android:layout_width=wrap_content
android:layout_height=wrap_content />
<RadioGroup android:id=@+id/rdbGp1
android:layout_width=fill_parent
android:layout_height=wrap_content
android:orientation=vertical >
<RadioButton android:id=@+id/rdb1
android:layout_width=fill_parent
android:layout_height=wrap_content
android:text=Option 1 />
<RadioButton android:id=@+id/rdb2
android:layout_width=fill_parent
android:layout_height=wrap_content
android:text=Option 2 />
</RadioGroup>
<ToggleButton android:id=@+id/toggle1
android:layout_width=wrap_content
android:layout_height=wrap_content />
</LinearLayout>
13
Setelah selesai, run program pada emulator. Apabila coding benar, maka saat di run,
akan tampil seperti gambar berikut pada emulator.
14
Modul 4 :
DroidDraw, Android Webkit dan Bekerja dengan Array dalam aplikasi File
1. DroidDraw
DroidDraw merupakan tools design aplikasi android yang bersifat free dan dapat didownload di http://www.droiddraw.org. Dengan tools ini kita dapat dengan mudah mendesain
tampilan Android.
Tampilan DroidDraw
Berikut kita akan mecoba membuat sebuah aplikasi dengan menggunakan DroidDraw.
-
Pada bagian ini kita akan membuat aplikasi converter nilai mata uang dollar menjadi nilai
mata uang rupiah, dimana kita akan mendesain dua buah inputan dan satu buah button untuk
proses Converter. Langkah-langkahnya adalah sebagai berikut :
o Buka DroidDraw dan jadikan root layout adalah Relative Layout seperti terlihat pada
gambar berikut ini :
15
o Double click pada linear layout dan jadikan nilai properties-nya menjadi :
Width : 200px
Heigth : 130px
Setelah itu click apply
o Pilih tab Widget, drag and drop 2 buah TextView dan 2 buah EditText serta 2 buah
radio button sehingga akan tampak seperti gambar berikut,
o Drag and drop kembali satu buah button dan tempatkan pada RelativeLayout,
sehingga akan tampak seperti gambar berikut.
o Double click TextView pertama dan ubah text menjadi Dollar dengan huruf bercetak
tebal (bold) begitu juga TextView kedua, dan ubah menjadi Rupiah. Jadikan
properties EditText pertama menjadi @+id/dollars dan text-nya kosong serta widthnya 100px. Kemudian EditText kedua menjadi @+id/rupiah dan text-nya kosong
serta width-nya 100px. Edit RadioButton pertama menjadi id @+id/dtor dan textnya : Dollar to Rupiah, kemudian Edit RadioButton kedua menjadi id @+id/rtod
dan text-nya : Rupiah to Dollar. Yang terakhir adalah edit Button menjadi
@+id/convert dan text-nya Convert. Sehingga tampak seperti gambar berikut.
16
o Click tombol Generate untuk mendapatkan layout tampilan dalam coding xml,
sehingga coding xml akan nampak seperti berikut.
o Program diatas masih belum dapat di jalankan pada emulator Android, namun kita
perlu menambahkan coding pada file java agar program dapat berjalan.
package com.wilis.converter;
import
import
import
import
import
import
import
android.app.Activity;
android.os.Bundle;
android.view.View;
android.view.View.OnClickListener;
android.widget.Button;
android.widget.RadioButton;
android.widget.TextView;
17
o Apabila coding telah sesuai, dan tidak terdapat keasalahan. Maka Program sudah dapat
berjalan di emulator.
2. Aplikasi WebKit
Webkit adalah suatu program yang menampilkan hasil program pada web browser. Kita
akan membuat sebuah contoh dari aplikasi WebKit yang sederhana.
Project Name
Build Target
Application name
Package Name
Activity
Min SDK
: webkit
: android 2.3
: webkit1
: com.wilis.array1
: webkit1
:9
Webkit1.java
package com.wilis.webkit1;
import android.app.Activity;
import android.os.Bundle;
import android.webkit.WebView;
public class webkit1 extends Activity {
WebView browser;
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
setContentView(R.layout.main);
browser=(WebView)findViewById(R.id.webkit);
browser.loadData("<html><body>Tulisan Pertama yang
ditampilkan di web browser</body></html>",
"text/html",
"UTF-8");
}
}
18
Jika sudah selesai, maka tampilan program akan terlihat seperti ini :
3. Konsep ArrayAdapter
ArrayAdapter adalah ListAdapter yang mengelola dari object array, ArrayAdapter
adalah salah satu class yang terdapat pada android.widget.Adapter.
-
: array1
: android 2.3
: array1
: com.wilis.array1
: array
:9
19
<Button android:id="@+id/save"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Save"
/>
</TableLayout>
</LinearLayout>
Untuk array ini kita membutuhkan dua file java yaitu array1.java sebagai file utama dan
almag.java sebagai class yang menangani class-class input-an pada address manager ini.
Berikut adalah coding untuk array1.java dan admag.java :
array1
package com.wilis.array1;
import
import
import
import
import
import
android.app.Activity;
android.os.Bundle;
android.view.View;
android.widget.Button;
android.widget.EditText;
android.widget.RadioGroup;
20
almag.java
package com.wilis.array1;
21
Modul 5 :
Database Di Android
Pada bagian ini kita akan membahas tentang database. Android juga memiliki fasilitas
untuk membuat database yang dikenal dengan SQLite. SQLite adalah salah satu perangkat
lunak yang embedeed yang sangat populer, kombinasi SQL interface dan penggunaan memory
yang sangat sedikit dan memiliki kecepatan yang cukup baik. SQLite di Android termasuk
Android rountine, sehingga setiap versi dari Android dapat membuat database dengan SQLite.
Dalam sistem Android memiliki beberapa teknik untuk melakukan penyimpanan data.
Teknik yang umum digunakan adalah sebagai berikut:
-
Shared Prefences yaitu menyimpan data beberapa nilai (value) dalam bentuk groups
key yang dikenal dengan Prefences.
Files yaitu menyimpan data dalam file, dapat berupa menulis ke file atau membaca
dari file.
Content Providers, yaitu menyimpan data dalam bentuk content proveders services.
22
Pada latihan kali ini, kita akan mencoba membuat database, tabel serta menyimpan data ke
dalam database. Buatlah project baru seperti ketentuan berikut.
Project nama
Build Target
Application name
Package Name
Activity
Min SDK
: database1
: android 2.3
: database1
: com.wilis.array1
: database1
:9
Terdiri dari dua buah file java, yaitu DVAdapter.java yang meng-handle masalah SQLite
beserta fungsi-fungsi yang dibutuhkan, seperti struktur dan skema database, kemudian
database1.java yang digunakan untuk pengiriman data yang akan ditambahkan ke database,
membuka, meng-edit, dan memanipulasi database.
Berikut adalah listing Code pada DBAdapter.java,
package com.wilis.database1;
import
import
import
import
import
import
import
android.content.ContentValues;
android.content.Context;
android.database.Cursor;
android.database.SQLException;
android.database.sqlite.SQLiteDatabase;
android.database.sqlite.SQLiteOpenHelper;
android.util.Log;
23
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion,
int newVersion)
{
Log.w(TAG, "Upgrading database from version " + oldVersion
+ " to "
+ newVersion + ", which will destroy all old data");
db.execSQL("DROP TABLE IF EXISTS titles");
onCreate(db);
}
}
//---opens the database--public DBAdapter open() throws SQLException
{
db = DBHelper.getWritableDatabase();
return this;
}
//---closes the database--public void close()
{
DBHelper.close();
}
//---insert a title into the database--public long insertTitle(String isbn, String title, String publisher)
{
ContentValues initialValues = new ContentValues();
initialValues.put(KEY_ISBN, isbn);
initialValues.put(KEY_TITLE, title);
initialValues.put(KEY_PUBLISHER, publisher);
return db.insert(DATABASE_TABLE, null, initialValues);
}
//---deletes a particular title--public boolean deleteTitle(long rowId)
{
return db.delete(DATABASE_TABLE, KEY_ROWID +
"=" + rowId, null) > 0;
}
//---retrieves all the titles--public Cursor getAllTitles()
{
return db.query(DATABASE_TABLE, new String[] {
KEY_ROWID,
KEY_ISBN,
KEY_TITLE,
KEY_PUBLISHER},
null,
null,
null,
null,
null);
}
//---retrieves a particular title--public Cursor getTitle(long rowId) throws SQLException
{
Cursor mCursor =
db.query(true, DATABASE_TABLE, new String[] {
KEY_ROWID,
KEY_ISBN,
KEY_TITLE,
KEY_PUBLISHER
},
KEY_ROWID + "=" + rowId,
null,
null,
null,
null,
null);
if (mCursor != null) {
mCursor.moveToFirst();
}
return mCursor;
24
}
//---updates a title--public boolean updateTitle(long rowId, String isbn,
String title, String publisher)
{
ContentValues args = new ContentValues();
args.put(KEY_ISBN, isbn);
args.put(KEY_TITLE, title);
args.put(KEY_PUBLISHER, publisher);
return db.update(DATABASE_TABLE, args,
KEY_ROWID + "=" + rowId, null) > 0;
}
}
25
Modul 6:
Running Aplikasi Pada Device
1. Teknik Debuging
Pada teknik ini kita menganggap device kita sebagai emulator langsung, ketika dijalankan
dari eclipse, project android kita langsung running in device android kita, tentunya syaratnya
devices android kita sudah terhubung dengan PC.
Langkah yang harus dilakukan untuk debuging aplikasi ini adalah sebagai berikut:
- Pastikan devices smartphone kita sudah terhubung dengan PC, dan PC sudah
mengenali USB device kita. Google USB Drivers dapat diinstal melalui Android SDK
Manager.
- Setelah USB Device android anda terhubung dengan PC, kita lakukan pengecekan
untuk memastikan device telah terhubung dengan PC.
- Setelah USB Device terinstall, selanjutnya buka project android, untuk menjalankan
project pada devices perlu dilakukan sedikit penambahan coding pada
AndroidManifest.xml dari project kita, dengan menambahkan perintah
android:debuggable=true pada defenisi <application>. Atau menggunakan GUI
Application AndroidManifest.xml seperti gambar berikut:
Sebelum running aplikasi, pastikan bahwa setting USB Debugging pada Devices
smartphone android kita sudah aktif. Menu > Setting > Application > Develompment
> dan aktifkan USB Debugging.
Running project kita dan perhatikan bahwa project kita dapat langsung jalan pada
device tanpa memerlukan emulator lagi.
26
Membuat sertifikat
27
Setelah lokasi ditentukan, selanjutnya click Finish. Maka aplikasi package android sudah
terbentuk, dan kita bisa mengrimkan ke Device melalui Bluetooth ataupun kita upload ke
Android Market.
28