Tutorial Pemrograman dan Source Code, Android, Web, Mobile, Desktop, Database dan Software. Tutorial Pemrograman Android, Web, PHP, Javascript, VB.NET, C#, ASP.NET dan Java
Selasa, 04 Desember 2012
Membuat Aplikasi Android dengan Timer untuk Menjalankan Proses secara Berkala
Wah sudah lama sekali tidak menulis blog :)
Penulis ingin memulai dulu dengan sesuatu yang sedikit dahulu tetapi berbobot, kali ini kita pelajari cara membuat Timer di Android yang dapat digunakan untuk melakukan sesuatu secara berkala, dalam kasus ini kita pakai saja untuk menampilkan Tanggal Bulan Tahun Jam Menit Detik setiap 1 detik, sehingga tulisan di TextView seakan-akan berdetak.
Program utama kita letakkan di MainActivity
MainActivity.java
package com.amijaya.androidtimer;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Timer;
import java.util.TimerTask;
import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
// http://cariprogram.blogspot.com
// nuramijaya@gmail.com
public class MainActivity extends Activity {
Timer timer = new Timer();
long starttime = 0;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//starttime = System.currentTimeMillis();
timer = new Timer();
//timer.scheduleAtFixedRate(new doTask(), 0, 1000);
//timer.schedule(new TimerTask() {
timer.schedule(new TimerTask() {
@Override
public void run() {
MainActivity.this.runOnUiThread(new Runnable() {
public void run() {
TextView txt = (TextView)findViewById(R.id.TextView01);
SimpleDateFormat s = new SimpleDateFormat("dd/MM/yyyy HH:mmss");
String format = s.format(new Date());
txt.setText(format);
}
});
}
}, 100, 1000);
}
}
Kemudian tampilannya kita pakai saja tampilan default kemudian ditambah sat buah TextView dengan nama TextView01 :
main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello"
/>
<TextView android:text="@+id/TextView01" android:id="@+id/TextView01" android:layout_width="wrap_content" android:layout_height="wrap_content"></TextView>
</LinearLayout>
Android Manifest tidak perlu kita ubah, sesuai dengan Activity yang telah dibuat dalam hal ini MainActivity.
AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.amijaya.androidtimer"
android:versionCode="1"
android:versionName="1.0">
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".MainActivity"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
<uses-sdk android:minSdkVersion="8" />
</manifest>
Hasilnya
Project selengkapnya silakan didownload disini :
https://docs.google.com/open?id=0B4i1FYc_4RXzNlNyMlgzYzl5OWs
Semoga bermanfaat, Selamat Coding.