SharedObject, cookienya Flash

Pernah dengar cookie dan fungsinya ?
Berikut ini analogi dari aplikasi yang menggunakan cookie.


Bayangkan anda menghadiri suatu grand opening pusat perbelanjaan terbesar di kota anda. Jika anda membawa kendaraan, tentu anda menitipkan kendaraan anda di tempat parkir. Setelah acara selesai, anda ingin melanjutkan acara grand opening di tempat lain misalnya.


Apa yang anda lakukan ? tentunya anda mendatangi tempat parkir untuk mengambil kendaraan anda dengan menunjukkan karcis parkir anda yang diberikan sebelumnya. Hanya pemegang karcis yang dapat mengambil kendaraan.


Karcis tersebut adalah 'cookie' jika kita terjemahkan ke dalam bahasa aplikasi web.
Jika anda login ke Friendster dan kemudian anda restart komputer anda tanpa log out dari Friendster terlebih dahulu. Kemudian anda buka lagi halaman friendster, apa yang terjadi? Ya anda akan otomatis login tanpa memasukkan username dan password lagi.


Jadi aplikasi friendster bisa mengenali komputer mana yang sebelumnya telah melakukan login. Dengan kata lain komputer anda telah menyimpan 'karcis' utk dapat masuk ke friendster.


Kembali ke judul, aplikasi Flash juga memiliki sistem ini yang bernama sharedObject. Dengan sharedObject, flash player dapat menyimpan suatu variabel di komputer lokal. Dengan demikian pengunjung dapat memperoleh tampilan yang berbeda2 tergantung variabel yg disimpan tersebut.


Selanjutnya akan kita demonstrasikan sebuah aplikasi flash yang menyimpan jumlah kunjungan dari user (komputer).



Berikut ini contoh aplikasi sharedObject dengan ActionScript 3.0

 

 

 

 

Perhatikan angka jumlah kunjungan anda, Sekarang coba anda refresh browser anda. Sudah ? sekarang jumlah kunjungan pasti akan bertambah. Jika anda kurang kerjaan , bisa juga anda coba restart komputer anda dan kembali lagi ke halaman ini. Anda akan melihat bahwa jumlah kunjungan akan tetap tersimpan walaupun komputer dimatikan. Dengan demikian aplikasi Flash tersebut dapat mengingat berapa kali anda mengakses dia.

Selanjutnya akan kita bahas source code dengan ActionScript 3.0 dari aplikasi sederhana diatas.

Buat sebuah file dengan ActionScript 3.0 sebagai publish settingnya. Tambahkan dua buah static text dan dua buah dynamic text seperti gambar dibawah.

Berikan instance name pada dynamic text masing-masing 'jumlah' dan 'tanggal'. Setelah itu tambahkan layer baru untuk menuliskan script di bawah ini :

 

Show Plain Text
  1. var so:SharedObject = SharedObject.getLocal("local_data");
  2.  
  3. if(!so.data.jumlahKunjungan) so.data.jumlahKunjungan=1;
  4. else so.data.jumlahKunjungan++;
  5.  
  6. jumlah.text=so.data.jumlahKunjungan+" kali";
  7.  
  8. if(!so.data.kunjunganTerakhir)tanggal.text="Ini kunjungan Pertama Anda!";
  9. else tanggal.text=so.data.kunjunganTerakhir;
  10.  
  11. var hariIni:Date = new Date();
  12. so.data.kunjunganTerakhir = hariIni;    
  13. so.flush();
  14.  

 

Berikut penjelasan dari script diatas.

Baris pertama adalah pendefinisian variable yang bernama so dengan type SharedObject. So akan mengakses suatu paket bernama local_data. Nah, local_data inilah identifier dari variable2 yang akan kita proses nantinya.

Baris 3 adalah pengecekan variable yg bernama 'jumlahKunjungan' . Pada saat pertama kali diakses, tentu komputer anda belum tersimpan variable 'jumlahKunjungan' pada paket local_data sehingga kondisional 'if' menjadi true dan variable jumlahKunjungan akan diberi nilai 1. Sedangkan jika anda sudah mengakses, variable tersebut akan bertambah satu.

Show Plain Text
  1. so.data.jumlahKunjungan++;

Baris ke- 8sama dengan baris ke-3, hanya saja variable yang ditest adalah 'kunjunganTerakhir'. Variable ini akan terisi dengan nilai waktu lpada komputer anda. Saat pertama kali mengakses, variable ini belum ada dan yang akan dimunculkan adalah "Ini kunjungan Pertama Anda !!".

Baris 13 merupakan perintah untuk menuliskan kedua variable diatas ke komputer lokal dengan identitas 'local_data'.
Lalu, bagaimana komputer lokal menangani variable 2 dari flash player? Berapa space yg disediakan?

 

Sebelum melanjutkan membaca, silakan terlebih dulu anda klik kanan pada contoh aplikasi. Terus pilih setting dan pilih gambar folder, nah anda akan menemukan dialog box tentang berapa banyak space yang diijinkan untuk sharedObject.

 

shared object


Jika Anda nol-kan, maka akan ada peringatan semua variable akan terhapus dan selama space yang anda set adalah nol maka flash player tidak mengijinkan adanya penyimpanan variable.

Add your comment

CAPTCHA
reload code