Selasa, 12 Juni 2012

Perbedaan Java dan C++


Java dirancang untuk menjadi bahasa yang sederhana, meminimalkan kesalahan, namun tangguh! Suatu aplikasi Java ditulis dalam bahasa Java dan memanfaatkan Java API (Application Programming Interface). Java API berisi koleksi class-class siap pakai yang mempermudah dalam penulisan aplikasi. Aplikasi ini juga hampir mirip dengan C++ dalam hal syntax perintahnya, namun tetap saja Java tidaklah sama dengan C++. Adapun perbedaan antara Java dengan C++ adalah sebagai berikut :

  • Pada Java, manajemen memory dinamis dan pointer dilakukan secara otomatis. Pada C++ pemrograman melakukan sendiri alokasi dan dealokasi memory. Otomatisasi ini menghilangkan kemungkinan bagi penggunaan pointer yang dapat merusak kestabilan program dan system operasi.
  • Java tidak mengenal multiple inheritance seperti pada C/C++. Multiple Inheritance membingungkan dan berakibat pada sulitnya pembuatan aplikasi dan compiler. Sebagai ganti yang lebih baik, Java menggunakan interface.
  • Java merupakan bahasa OOP murni sedangkan C++ adalah bahasa OOP hybrid.
  • Java menggunakan model Exception dalam menangani kesalahan program.
  • Java tidak mempergunakan compiler-directive pada source code.
  • Java memiliki fasilitas garbage-collector yang bekerja secara otomatis untuk menjamin ketersediaan memori dengan membebaskan memori yang tidak terpakai.
  • Java sangat portable baik pada file sumbernya maupun hasil kompilasinya, sedangkan C++ hanya portable pada level kode sumbernya saja.
  • Spesifikasi bahasa dan implementasi Java sudah ditetapkan dan tidak mengikuti suatu mesin atau platform tertentu, C++ sangat tergantung pada mesin dan platform yang akan digunakan.


Jumat, 08 Juni 2012

Membuat splash screen android

Yeahhh... Akhirnya kmaren selesai presentasi 2 project sekaligus. Sesuatu banget pokoknya :p Sekarang tanggung jawab saya tinggal PSBO (Pengembangan Sistem Berorientasi Objek), tapi projectnya belum saya kerjain padahal senin ini sudah mau UAS. Ckckck, semangatlahh...

Oke langsung saja ke topik utama yaitu bikin splash screen pada android. Sebelumnya teman-teman sudah pada tahu kan apa itu splash screen? Nahh splash screen itu adalah tampilan awal sebelum program dijalankan. Splash screen juga bisa digunakan untuk mempercantik aplikasi yang dibuat supaya aplikasinya kelihatan lebih professional gitu :p

Langsung saja ke kodingannya ya, supaya saya tidak panjang lebar lagi ngomongnya. hehe

Pertama kita buat splash.java


import jie.belajar.android.BuserActivity;
import android.app.Activity;
import android.content.Intent;
import android.content.pm.ActivityInfo;
import android.os.Bundle;
import android.view.MotionEvent;

public class Splash extends Activity {
    protected boolean _active = true;
    protected int _splashTime = 2000;

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
        setContentView(R.layout.splash);

        // thread for displaying the SplashScreen
        Thread splashTread = new Thread() {
            @Override
            public void run() {
                try {
                    int waited = 0;
                    while(_active && (waited < _splashTime)) {
                        sleep(100);
                        if(_active) {
                            waited += 100;
                        }
                    }
                } catch(InterruptedException e) {
                    // do nothing
                } finally {
                    finish();
                    Intent newIntent=new Intent(Splash.this,BuserActivity.class);
                    startActivityForResult(newIntent,0);
                }
            }
        };
        splashTread.start();
    }

    @Override
    public boolean onTouchEvent(MotionEvent event) {
        if (event.getAction() == MotionEvent.ACTION_DOWN) {
            _active = false;
        }
        return true;
    }
}

Selanjutnya kita buat splash.xml
Untuk splash.xml saya tambahin progressBar, supaya tampilannya lebih menarik :D

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center|center_horizontal"
    android:background="@drawable/splash">

    <ProgressBar
        android:id="@+id/progressBar2"
        style="?android:attr/progressBarStyleSmall"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

</LinearLayout>
NB : Untuk yang berwarna Merah berarti saya membuat splash screen dari gambar dari folder drawable dengan nama splash.png.

 Terakhir untuk AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="jie.belajar.android"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk android:minSdkVersion="10" />
    <application
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name" >
      
        <activity
            android:name=".Splash"
            android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
             </intent-filter>
        </activity>
       
        <activity
            android:name=".BuserActivity"
            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>
</manifest>

 Oke sudah selesai, segitu saja... hehe




Kamis, 07 Juni 2012

Parsing timeline twitter with JSON | Android

Masih di minggu-minggu GALAU presentasi project dan UAS. Saya mau sharing-sharing dulu potongan-potongan kodingan yang bakalan saya pake buat project saya nantinya. Itung-itung bagi-bagi pengetahuan sama temen-temen dan juga sebagai catatan online bagi saya. :p

Adapun yang mau saya bagi adalah cara Parsing timeline twitter dengan JSON untuk Android. Nah jadi intinya kita mau parsing twit-twitnya sasaran (ngomongnya sasaran... :p) kita supaya bisa ditampilin di Android kesayangan. Adapun caranya :

  • Di Android manifest-nya jangan lupa tambahkan <uses-permission android:name="android.permission.INTERNET" /> dulu supaya nanti kita punya hak akses buat internet.
  • Untuk di Main.xml-nya
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
<ScrollView
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextView
android:id="@+id/json"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:autoLink = "all"
    />
</ScrollView>


  •  Nahh yang terakhir yang paling penting nih, kodingan [dot]java-nya
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.StatusLine;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
public class JSON extends Activity {
TextView json;
@Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        String twitterTimeline = getTwitterTimeline();
try {
String tweets = "";
JSONArray jsonArray = new JSONArray(twitterTimeline);
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject jsonObject = jsonArray.getJSONObject(i);
tweets +="Transjakarta \n";
tweets += "" + jsonObject.getString("text") + "\n\n";
}
    json= (TextView)findViewById(R.id.json);
    json.setText(tweets);
} catch (JSONException e) {
e.printStackTrace();
}
    }
    public String getTwitterTimeline() {
StringBuilder builder = new StringBuilder();
HttpClient client = new DefaultHttpClient();
HttpGet httpGet = new HttpGet("http://twitter.com/statuses/user_timeline/BLUTransJakarta.json");
try {
HttpResponse response = client.execute(httpGet);
StatusLine statusLine = response.getStatusLine();
int statusCode = statusLine.getStatusCode();
if (statusCode == 200) {
HttpEntity entity = response.getEntity();
InputStream content = entity.getContent();
BufferedReader reader = new BufferedReader(new InputStreamReader(content));
String line;
while ((line = reader.readLine()) != null) {
builder.append(line);
}
} else {
//Couldn't obtain the data
}
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return builder.toString();
}
}




Skrinsut : 


Twit-nya BLUTransjakarta


NB : Untuk yang warna merah, teman-teman bisa ganti dengan timeline apa yang mau teman-teman parsing. Kalau saya, parsing timeline-nya twitter BLUTransJakarta.


Gimana??  Udah bisa belum?? Haha, untuk lebih mudahnya download aja projectnya dimari.




Rabu, 06 Juni 2012

GALAU itu...

GALAU itu...
Ketika kita melihat jutaan pasang mata polos yang takut, bahkan tak berani mengandaikan ingin menjadi apa dirinya dimasa depan nanti.

GALAU itu...
Ketika kita menyaksikan jutaan kaki-kaki mungil yang menempuh berkilo-kilo jalan, menyebrang sedalam-dalamnya sungai, menelusuri serimbun-rimbunnya hutan, hanya untuk belajar apa itu huruf A I U E O.

GALAU itu...
Ketika kita menatap jutaan bangunan reyot, gubuk yang hampir collapse, yang bahkan tak layak sebagai tempat peristirahatan binatang dijadikan tempat jutaan mata polos dan kaki mungil itu mengeja PANCASILA.

GALAU itu...
Ketika kita hanya mampu menatap dari kejauhan dan menggalau disudut ruangan.

GALAU itu...
Ketika kita hanya diam menyaksikan.


Selasa, 05 Juni 2012

Cara pasang flash banner pada blog.

flash
Mungkin anda ingin memasang banner flash pada blog anda.banner flash ini lebih menarik dipasang jika ingin mengiklan sesuatu pada blog kerana ia berbentuk animasi.Flash banner ini telah digunakan secara meluas pada web site ketika ini.
Berikut adalah cara bagi memasang flash banner pada blog anda:
Mula mula anda perlu sediakan fail flash terlebih dahulu.fail ini boleh kita buat dengan menggunakan web site yang menyediakan khidmat membuat free banner maker secara online.
Sesudah banner disiapkan anda perlu mengupload banner tersebut.Anda boleh mengupload banner ini pada mana mana web hosting dan dapatkan url flash banner untuk diletakkan pada blog.Anda juga boleh gunakan googlesite.

Langkah bagi mengupload file
1.Anda perlu membuat akaun di  https://sites.google.com/
2.Log in menggunakan akaun blog,pada dashboard klik pada create.
3.Pada name your site,letakkan nama site anda dan masuk kod verification dibawahnya
4.Kemudianpada dashboard  klik ikon new page diatasnya,pada new page letakkan nama
  page anda dan klik create.
  Sesudah Berjaya mencipta page klik pada add file dan browse fail flash anda dan upload


upload fail

Sesudah Berjaya mengupload file anda ,nama fail tersebut akan berada diatas ikon add file.Klik pada kanan pada fail tersebut dan ambil copy link location.Simpan link ini untuk langkah seterusnya.
Contoh link adalah seperti dibawah ini.

https://sites.google.com/site/labulabiblog/lab/flash%20banner.swf?attredirects=0
teks yang berwarna oren boleh didelete

Memasukkan fail flash pada blog:

untuk dashboard lama:
pada dashboard ambil design....page elements..
add a gadget...html/javascript

untuk dashboard baru
ambil layout...add a gadget
pilih HTML/Javascript

dan masukkan kod dibawah ini:

<embed src=https://sites.google.com/site/labulabiblog/lab/flash%20banner.swf" quality="high" allowscriptaccess="always" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" align="middle" height="150" width="150"></embed>

Nota:
Masukkan link banner anda pada teks berwarna merah
ubah saiz banner pada teks warna hijau

kemudian klik pada save.

Senin, 04 Juni 2012

Website Transpakuan | PHP Codeigniter 1.7

Website Transpakuan | PHP Codeigniter 1.7. Aplikasi ini merupakan aplikasi PERDANA saya dalam belajar  PHP dengan mengunakan framework Codeigniter. Jadi kalau tampilannya masih cops or apa harap maklum y :p. Aplikasi ini dibuat untuk memenuhi Project Kuliah Sistem Informasi. Isi dari website yang saya buat merupakan informasi seputar BUS TRANSPAKUAN - Bogor. Langsung saja kita lihat tampilan awalnya :

Halaman Utama Website

Untuk halaman utama website kira-kira seperti diatas. Disana pengguna bisa langsung melihat rute dari bus transpakuan dengan menggunakan peta dari Google Maps. Kalau pengguna memasukkan shelter awal dan tujuan maka di peta tersebut akan menampilkan rute dari shelter awal sampai tujuannya. Di aplikasi ini pengguna juga bisa melihat berita, pengumuman, memberi polling, galeri-galeri dari Transpakuan dan pengguna juga bisa memberikan masukan kepada pihak Transpakuan dengan tinggal klik Menu Navigasi Hubungi Kami. Pada menu tersebut pengguna tinggal mengungkapkan unek-uneknya disitu dan pesan dari pengguna tersebut akan dibaca oleh si admin.

Berikut Skrinsut-skrinsut aplikasi yang dibuat. Selamat menikmati :p

Rute Transpakuan
Berita

Galeri


Dibuat oleh THE POLIZI  :

Pandu Purnomo (G74080037 )
Noer Fitria Putra Setyono (G64090022)
Ozi Jendela-id (G64090030)
Muhammad Kusumah (G64090047)
Lizza Amini Gumilar (G64090105)

Terimakasih kawan atas bantuannya. Maaf gak bisa banyak-banyak kumpul dan belajar ngoding bareng, soalnya ane masih neubie jadi butuh belajar banyak. Hehe...


Kamis, 24 Mei 2012

Tutorial Menampilkan CCTV Transjakarta di Android

Tutorial Menampilkan CCTV Transjakarta di Android - Yeahhh... sekarang saya lagi pusing-pusingnya dengan deadline seabrek project kuliah yang belum selesai sama sekali! haha #devil laugh. Lagi asyik-asyiknya mengutarakan isi hati di tulisan ini, saya mendapatkan berita yang menyedihkan.

"Telah terjadi penembakan di Masjid Al-Hurriyyah IPB pada saat sholat Jum'at dan dari informasi yang saya dari @korpusIPB ada 2 orang korban, yang merupakan UKK (Unit Keamanan Kampus) dan dinyatakan sudah meninggal dunia"Innalillahiwainnailahi rojiun, semoga mereka meninggal dalam keadaan sahid. Amiennn, #Do'a mulai....

Lanjut lagi ke pokok permasalah, yaitu bagaimana cara menampilkan CCTV nya Transjakarta dari websitenya yaitu transjakarta.co.id. Sebenarnya ini project kuliah saya dan sampai sekarang saya masih menggalau gimana caranya make algoritma A* untuk pencarian rute terdekatnya transjakarta, karena masih banyak project-project lain yang harus diselesaikan akhirnya project yang ini sedikit saya telantarkan :p. Maaf ya teman-teman T.T

Oke, karena saya lagi malas merangkai kata. Langsung saja saya bagikan source code menampilkan kamera CCTV transjakarta di ANDROID. Semoga bisa membantu teman-teman yang sedang belajar ANDROID seperti saya :D

Berikut Source codenya :

>> Main.xml


<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >
<ImageView
    android:id="@+id/gambar"
    android:layout_height="wrap_content"
    android:layout_width="fill_parent"
    ></ImageView>

</LinearLayout>

Note : Untuk Main.xml kita tambahkan ImageView sebagai tempat CCTVnya nanti.

>> Activity.java



import java.io.InputStream;
import java.net.URL;
import android.app.Activity;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.os.Handler;
import android.widget.ImageView;
public class Cctv2Activity extends Activity {
    ImageView iv;
    Runnable jalankan;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        loadGambar();
     
        jalankan = new Runnable() {
public void run() {
try {
loadGambar();
} catch (Exception e) {
e.printStackTrace();
}
new Handler().postDelayed(jalankan, 100);
}
};
new Handler().postDelayed(jalankan, 100);
    }
    private void loadGambar(){
    try{
    iv = (ImageView) findViewById(R.id.gambar);
    URL url = new URL("http://transjakarta.co.id/haltecam/Bank_Indonesia.jpg?1337867289300");
    InputStream is = (InputStream) url.getContent();
    Drawable gambar = Drawable.createFromStream(is, "src");
    iv.setImageDrawable(gambar);
    is.close();
    }catch (Exception e){
    e.printStackTrace();
        }
        }
}

Note :

  • Penjelasan untuk yang berwarna BIRU : Fungsinya untuk mer-refresh gambar CCTV transjakarta dalam 100 miliseconds. Jadi CCTV transjakarta itu dikirimkan dalam bentuk gambar yang diperbarui terus perdetiknya. Nahh jadi kita harus menggunakan fungsi ini untuk memperbarui gambar tersebut terus menerus, kalau kita tidak menggunakan fungsi ini maka gambar yang akan kita lihat tidak akan pernah berubah kecuali kalau kita keluar aplikasi dan aplikasinya kita buka kembali.
  • Penjelasan untuk yang berwarna MERAH : Itu merupakan URL dari CCTV di Halte Bank Indonesia,  adapun cara mendapatkannya kita tinggal Klik kanan pada gambar CCTV di website transjakarta, lalu Copy Image URL. Setelah itu Paste-kan pada URL di kodingan kita tersebut.
Terakhir, kita jangan sampai lupa untuk menambahkan permissions untuk mengaktifkan internet di Manifest.xml. 

>> Manifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="jie.coba.lagi"
    android:versionCode="1"
    android:versionName="1.0" >
    <uses-sdk android:minSdkVersion="6" />
    <uses-permission android:name="android.permission.INTERNET"/>     <application
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name" >
        <activity
            android:name=".Cctv2Activity"
            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>
</manifest>

Yapzz... Mungkin hanya sebatas itu yang bisa saya share ke teman-teman. Apabila ada salah-salah kata saya mohon maaf, karena saya juga masih NEUBIE dan baru belajar ANDROID.

Skrinsut aplikasi yang dibuat :

CCTV Halte BI


Download source code disini.

Selamat berkreasi ^^