Showing posts with label android. Show all posts
Showing posts with label android. Show all posts

Monday, July 18, 2016

      Untuk generasi yang tidak mau ketinggalan update gadget - gadget terkiri, biasanya kita selalu browsing - browsing mencari informasi gadget – gatget keluaran terbaru yang sedang ngetren sekarang ini, guna untuk menggantikan gadget kita yang telah usang dan ketinggalan teknologi. Gadget keluaran terbaru pasti menawarkan spesifikasi yang lebih tinggi dan lebih bagus dari gadget – gadget generasi sebelumnya.  Semakin maju dan berkembangnya teknologi yang memudahkan para penggunanya, semakin banyak pula fitur-fitur yang di tawarkan para vendor gadget. Memaksimalkan produk mereka agar mempunyai banyak kemampuan dan multifungsi.  Dulunya perangkat genggam yang hanya dapat di gunakan untuk telefon dan mengirim pesan. Sekarang sudah dapat digunakan untuk mendengarkan radio, menonton siaran televisi, camera, video call, Navigasi dan masih banyak lainnya, untuk bernavigasi sebuah perangkat device harus tertanam sebuah alat / chip GPS agar dapat terhubung ke satelit.

GPS adalah sistem untuk menentukan letak di permukaan bumi dengan bantuan penyelarasan sinyal satelit.. Mulai dari menunjukkan lokasi koordinat, kecepatan jalan saat bernavigasi, menunjukkan waktu yang lebih akurat, dan masih banyak lainnya. Sekarang ini perangkat GPS sudah banyak dibutuhkan oleh aplikasi – aplikasi di smartphone, contohnya seperti GEOtag, saat kamu mengambil foto melalui camera gatget kamu, aplikasi camera akan membutuhkan perangkat GPS yang terkoneksi ke satelit untuk mengambil lokasi kamu saat mengambil foto berupa data koordinat dan menyimpannya ke dalam identitas foto kamu. aplikasi lain yang membutuhkan perangkat GPS  contohnya, Gojek, NDrive, atau aplikasi navigasi lainnya. Selain aplikasi, sekarang sudah banyak bermunculan game - game yang membutuhkan perangkat GPS salah satunya yang sedang ngetrend sekarang ini adalah “Pokemon Go”. Dimana pada penggunanya harus berjalan ke lokasi yang sudah di tentukan pada game.  

Pada umumnya, ada 2 cara untuk mengambil lokasi koordinat pada gadget kita, yang pertama menggunakan provider kartu yang di pasang pada smartphone, atau juga bisa menggunakan koneksi wifi atau jaringan lainnya asalkan terkoneksi dengan internet. cara ini tidak membutuhkan perangkat  GPS tetapi membutuhkan jaringan internet, dan pastinya internet tidak gratis. cara yang ke-dua yaitu menggunakan perangkat GPS langsung yang tertanam pada gadget, yang menembak langsung ke satelite. Akan tetapi tidak semua gadget terpasang alat ini, itu sebabnya kamu harus upgrade gadget kamu dengan yang baru. Gadget keluaran terbaru sekarang pastinya sudah di tanamkan perangkat GPS, ini perangkat ini sudah memjadi suatu kewajiban oleh para produsen gadget sekarang ini, jika ingin produk mereka laku di pasaran, seperti layaknya camera hp yang wajib ada di semua jenis hp keluaran terbaru saat ini.

Saat kita memiliki gadget yang support dengan GPS, kadang terbesit di pikiran kita. "Jika gadget kita terkoneksi langsung ke satelit, satelit siapa yang kita pakai ?, Negara mana? Dan pertanyaan – pertanyaan kepo lainnya.. Jika kamu mengetahui jawaban itu semua pasti akan sangat membantu kamu saat memilih gadget yang memiliki kemampuan terbaik di antara gadget - gadget lainnya.

Kadang pada detail spesifikasi gadget / smartphone sudah di tulis dengan lengkap pada bagian GPS tertulis Support "A-GPS" atau "GPS - GLONASS", kebanyakan menggunakan salah atu dari 2 Satelit tersebut, A - GPS (Global Positioning System) adalah Satelit milik US dan GLONASS (Navigazionnaya Sputnikovaya Sistema, or Global Navigation Satellite System) adalah satelit milik Rusia. Tiap vendor hp memilih GPS pilihan mereka, ada yang menggunakan “A-GPS” ada juga yang menggunakan “GLONASS”, bahkan ada yang menggunakan keduanya. Apakah semua berbayar? Jawabannya tidak, keduanya gratis untuk pengguna gadget seperti kita.

GPS dan GLONASS

Keduanya jenis satelit ini adalah satelit – satelit yang mengelilingi bumi. Jika di total jumlahnya sekitar 55 satelit yang mengelilingi bumi. diantaranya 31 satelit milik GPS dan 24 satelit milik GLONASS.



Ke 55 satelit tersebut masih belum terhitung satelit lainnya, seperti GALILEO yang mempunyai 30 satelit milik Uni Eropa dan European Space Agency. BeiDou Navigation Satellite System milik china yang memiliki 35 satelit, dan IRNSS or Indian Regional Navigation Satellite System milik India sebanyak 4 satelit di orbit. Akan tetapi satelit – satelit di atas jarang di gunakan untuk gadget, atau mungkin belum di gunakan dan bisa jadi digukan untuk keperluan tertentu.

Untuk ketinggian orbit pada satelit GPS sejauh 19130 km, sedangkan pada satelit GLONASS lebih jauh sekitar 21150 Km. Untuk keakuratannya GPS di klaim lebih akurat di banding dengan GLONASS. Akan tetapi, Kemudian banyak badan riset atau organisasi yang melakukan pengetesan ke 2 jenis satelit ini. Dan hasilnya dangan data yang di peroleh, banyak yang menyatakan bahwa GLONASS lebih baik dari GPS dengan keakuratan yang hampir sama. Walaupun jika di hitung dari jumlah satelit lebih banyak GPS (31) di banding dengan GLONASS (24). Hasil lainnya menyatakan bahwa GPS sering mengalami kesulitan koneksi jika sinyal ke satelit terhalang benda, seperti  bangunan, gunung atau object lainnya. Tetapi tidak untuk GLONASS, itu sebabnya banyak sekali perangkat mobile maupun kendaraan yang memasang teknologi support dengan Satelit GLONASS untuk bernavigasi, kemampuan satelit ini akan terus mengalami perkembangan, (GLONASS-K )  dengan kemampuan yang lebih baik, dengan akurasi yang lebih tinggi di banding dengan generasi sebelumnya ( GLONASS-M ).

Dan jika kamu ingin mendapatkan akurasi yang lebih tinggi, dapat di lakukan dengan mengkombinasikan keduanya (GPS + GLONASS), sekarang sudah banyak bermunculan device yang mengusung teknologi tersebut, yang mempunyai dua satellite system untuk mendapatkan lokasi dengan akurasi yang tinggi.  

Kenapa kita membutuhkan tingkat akurasi yang tinggi, fungsinya jika kita sedang bernavigasi menggunakan perangkat GPS contohnya, yang menunjukkan jalan saat berkendara pada satu jalan besar yang mempunyai banyak jalur, karena perangkat yang tidak akurat sehingga perangkat akan menunjukkan jalur yang salah. Setelah posisi jalan menjauh beberapa meter dari jalur sebenarnya, maka perangkat baru akan memberitahu bahwa jalur yang di ambilnya salah. Itu akan sangat merugikan pengguna perangkat tersebut.

Naah jika, kamu mempunyai pilihan gadget yang support dengan GPS, GLONASS, atau keduanya.. Mana yang kamu pilih ?

Saturday, November 30, 2013


Aplikasi menggambar ini hampir sama dengan aplikasi MS Paint di sistem operasi windows. bedanya aplikasi ini aku buat untuk sistem operasi mobile Android, dan mungkin fiturnya masih kalah sama Ms Paint yang aslinya..hehe. Aplikasi ini mempunyai beberapa fitur unggulan diantaranya seperti dapat mengganti corak canvas / background dengan warna, dapat mengganti background dengan gambar yang diambil dari gallery, atau juga dapat mengganti dari foto yang diambil langsung dari camera. 

Aplikasi ini mempunyai user interface yang sangat user friendly, pada aplikasi ini mempunyai 3 tools utama yaitu crayon (digunakan untuk menggambar), warna ( untuk memilih warna yang diinginkan ), dan penghapus ( untuk menghapus ). selain itu fitur tambahannya. fitur tambahannya diantaranya dapat menyimpan hasil gambar ke-gallery, sharing hasil gambar ke media lain via bluetooth atau via lainnya sesuai dengan perangkat yang dimiliki, dapat merubah bentuk crayon menjadi brush, dan masih banyak lagi fitur lainnya.

tampilan aplikasi 

  
hasil menggambar warna crayon
  
hasil menghapus

  
menu pilihan

Aplikasi ini sangat bermanfaat untuk anda yang mempunyai adik, keponakan, atau buah hati anda yang masih kecil dan suka dengan yang namanya coret mencoret. Mayoritas anak kecil yang berumur 3 sampai 7 tahun, menyukai hobi yang namanya coret mencoret, bahkan tak jarang kita temui hasil karya dimana – mana. Mulai dari sprei, di buku, di meja, di pintu, bahkan di dinding rumah anda. Sampai satu rumah penuh dengan grafity – grafity abstrak versi mereka. naah.. dengan adanya aplikasi ini dapat membantu adik, keponakan, tetangga, atau buah hati anda untuk menyalurkan hobi dan bakat mereka. Aplikasi ini mempunyai banyak manfaatnya, selain dapat digunakan sebagai pengganti buku dan peralatan gambar. Apikasi juga menghemat biaya anda (untuk membeli buku dan peralatan gambar baru) dan dapat menjaga kebersihan... “Menjaga kebersihan apa mas ?? “, menjaga kebersihan dinding rumah anda tentunya..hehe. dan Anda tidak usah repot – repot untuk membeli cat baru, untuk mengecat tembok anda yang penuh dengan coretan mereka..hehe Sudaaahlah, tidak usah saya lanjutkan lagi, nanti ujung2nya malah ke iklan cat tembok. 

Kemudahan lainnya lagi, karena aplikasi ini dapat di install digadget android anda ( TAB, atau smartphone ), tentunya dapat mereka bawa ke mana – mana. dan dapat mereka jalankan di mana saja, dan kapan saja.

Yang unik lagi pada aplikasi ini yaitu ketika memilih salah satu warna yang disediakan, akan muncul suara yang menyebutkan warna yang dipilih. Jadi jika si anak memilih warna merah, maka akan keluar suara yang menyebutkan warna “merah”, begitu juga dengan warna yang lainnya. Asikkan.., dengan fitur ini mereka (anak - anak) juga akan belajar mengenal warna. 


Dan ada lagi niie, fitur tambahan, selain dapat digunakan untuk menggambar juga ada fitur untuk mewarnai. pada aplikasi ini sudah disediakan beberapa gambar yang dapat dipilih, dan si anak dapat mewarnai sesuka hati mereka.


tampilan layar menwarnai


Jika anda ingin mencobanya, silahkan download apknya di sini  : Mobile Paint.APK


Thursday, March 14, 2013


Aku mau share game android yang pernah aku buat. sebenarnya game ini adalah tugas dari mata kuliah Mobile Programming yang pernah aku ambil di semester kemarin. dan saya yakin kalian semua sudah pernah memainkan game ini, game ini seperti game (kalo dibahasa jawakan) Ingat-ingatan. jadi kita harus buka dua kartu ( memilih diantara banyak kartu yang disediakan ), tetapi gambar kartu yang kita buka harus sama, jika gambar kartu yang kita buka gg sama maka kartunya akan nutup lagi, jadi harus kita ingat baik - bak letak kartunya jika kita menemukan kartu lain yang mempunyai gambar yang sama dengan kartu yang pernah kita buka sebelumnya, kalo kedua kartu yang kita buka benar, maka dua kartu tersebut bakalan hilang, n jika kartunya sudah habis samua sebelum warktu yang ditentukan habis, maka kamu berhasil ...gampang kan. !!

Game ini ada ceritanya cob. sebenarnya sih awal aku buat gg ada ceritanya, tapi sma Dosenku di suruh dikasih cerita, kaya macam Angry birth gituu.. sempat kesulitan juga kasih cerita apa enaknya. nyari ide muter2 keliling surabaya "Ngalorr ngidulll gg karuan" mulai dari bunderan waru sampe kebun binatang surabaya aku jelajahi hanya untuk mencari sebuah ide. Nahh...! pas masuk ke kebun binatang aku ketemu sama saudara lama kita " Monyet ", pas aku ngelihat wajah monyet yang wajahnya sama kaya yang baca tulisan ini, ide cemerlang langsung datang dari kepala saya..Tiiiing...!! dialah yang bakal jadi pemeran utama di gameku ini.

jadi ceritanya gini... dengarin baik baik ?? jangan tidur dulu yaa...


Pada suatu hari, ada seorang monyet yang sangat gannnteeeeeng sekali, moyet itu kelaparan karena kehabiisan makanan di hutan.(apa hubungannya ama ganteng coba !). terus monyet itu turun dari hutan ke pemukiman penduduk untuk mencari makanan yang bisa dia makan. moyet itu masuk ke dalam rumah - rumah penduduk dan pada akhirnya dia menemukan sebuah lemari yang penuh dengan buah2an, ( Kulkas maksudnya ). sambil sembunyi - sembunyi dia memakan semua makanan di dalam kulkas tersebut, dia harus cepat agar tidak ketauan ama yang empunya kulkas. setalah menghabiskan semua makanan, tapi dia masih belum kenyang juga, karena rasa laparnya "kata tante Sahrini" sungguh cethar membahana terpampang luas ke luar angkasa. lalu dia pindah dari rumah satu kerumah lainnya untuk mencari makanan lagi. ternyata di rumah lainnya juga menemukan makanan tetapi yang dia temukan bukan buah - buahan seperti di rumah sebelumnya, dia menemukan roti2 n cake yang enak sekali. dia menghabiskan semua roti di dalam kulkas tersebut, yang pastinya dengan sembunyi2 jugaa.. tapi dia masih belum kenyang juga... "kasihan bangeeeet iyaaa ..!!" Kata tante Syahrini lagii. lalu dia pindah lagi kerumah lainnya..begitu seterusnya. kalian lanjutkan sendiri yaa lanjutanna... kalo ketauan yaa game over gitu aja..hehe.. 

nahh itu tadi cerita dari kak setoo adik2..  Looh yang belakang sendiri itu koq tidurr...!!!(*&((*%^&

Pada game ini, kartu yang bergambar makanan pada game, diibaratkan makanan yang ada di dalam kulkhas. jika pemain berhasil menyamakan 2 kartu otomatis 2 kartu tersebut bakalan hilang atau didalam cerita, monyet (kamu) berhasil memakan satu makanan.. begitu dan begitu seterusnya sampai makanannya habis, sebelum waktu yang ditentukan habis. jika waktunya habis sebelum makanannya habis, maka kamu ketauan sma yang empunya kulkas. bisa2 di gebukin kamuu hehe..begitulah hubungan antara cerita dan gamenya...
yaah agaak sedikit gg nyambung ya, cerita sma gamenya.. gimana lgii. itu ide yang paling BERLIAN menurut aku pada saat itu.

Nii ScreenShot SplashScreennya....!!


Yang punya HP android langsung download aja gamenya (dot) APK-nya disini.

dan buat yang pengen Ngembangin game ini aku kasih projectnya disini.

Game ini masih dalam masa pengembangan jadi jangan kaget jika masih menemukan bug yaa..hehe

Friday, November 30, 2012


Setelah memposting program android sederhana saya yang pertama "Hello World", kali ini saya akan share project kedua  saya, project yang kedua ini saya beri nama program menghitung berat badan ideal. Program ini bisa dibilang program yang masih lumayan gampang, karena di program ini hanya dibutuhkan sebuah inputan, Proses ( berisi rumus untuk menghitung berat badan idealnya ), kemudian sebuah output ( hasil perhitungan dari rumus kita tadi ), selesai.

Yeaah, bisa dibilang program ini adalah program kalkulator, karena fungsinya adalah untuk menghitung, sama seperti kalkulator yang sering kita temui, asalkan kita tau rumus n cara menghitungnya aja, kalo gak tau ya sama aja bhong…hehe, mendingan pkek program ni aja. Tapi jangan salah program ini sangat bermanfaat bget sob. Coba kamu bayangkan dengan mengetahui berat badan ideal kamu bisa mengetahui kondisi tubuh kamu, apakah mengalami Obesitas ( kegemukan ) atau tidak. Hal ini penting karena ketika tubuh memiliki berat yang berlebih akan menyebabkan timbulnya berbagai macam penyakit seperti, diabetes, kolesterol, dan penyakit berbahasa lainya. Loohh koq jadi ngelantur sayaa…hehehe, Ups.. jangan diambil hati yaa, bukan maksud saya menyinggung kamu yang berbadan gemuk, mksudnya saya baik kq, dengan mengetahui kondisi tubuh kita, kita jadi bisa mengontrol hidup kita untuk menjalankan pola hidup yang lebih sehat heheh..

Oke kembali ke permasalahan. Rumus yang saya gunakan di program ini adalah Rumus BMI, BMI adalah singkatan dari bahasa jawa yang kepanjanganya (Body Mass Index), BMI adalah salah satu rumus yang digunakan untuk menghitung berat badan ideal. Rumus yang lainnya ada banyak sekali. tapi yang saya gunakan BMI aja deh, karena apa ? karena yang saya tau cuma BMI saja, hehehe..

Yaah kurang lebihnya seperti itulah program yang akan saya buat. sekarang mari kita mulai membangun programnya, siapkan project baru terlebih dahulu.

1. langkah pertama isi file strings.xml di res --> values --> strings.xml

strings.xml

<resources>;

    <string name="app_name">;BMICalculator</string>;
    <string name="menu_settings">;Settings</string>;
    <string name="title_activity_main">;BMI Calculator</string>;
    
    <string name="satu">   BMI < 18.5           --> Badan kurang Ideal</string>;
    <string name="dua">   BMI 18.5 - 22.9  --> Berat badan Ideal</string>;
    <string name="tiga">   BMI 23 - 24.9      --> Mendekati Obesitas</string>;
    <string name="empat">   BMI 25 - 29.9      --> Diambang batas Obesitas</string>;
    <string name="lime">   BMI >; 30              --> Melebihi Obesitas</string>;

    <color name="Kuning">#a2b314</color>;
    <color name="merah">#990000</color>;
    <color name="MerahOrange">#d25e09</color>

    <color name="hijau">#1fb314</color>
    <color name="birumuda">#14a6b3</color>
    <color name="hitam">#000000</color>
    <color name="putih">#ffffff</color>


    <string name="InputTinggibadan">Inputkan Tinggi Badan (cm)</string>
    <string name="InputBeratBadan">Inputkan Berat Badan (kg)</string>
   
    <string name="errorButton_hitung">OK</string>
    <string name="errorTitle_hitung">Error !</string>
    <string name="errorMessage_hitung">Data kurang lengkap !</string>

    <string name="errorButton_hasil">OK</string>
    <string name="errorTitle_hasil">Error !</string>
    <string name="errorMessage_hasil">hasil masik kosong</string>

</resources>


2. langkah kedua, buat 3 file xml yang akan jadi interface di program kita, dan letakkan di res --> layout :
   1. splashe.xml
   2. main.xml
   3. hasil.xml

1. splashe.xml



<?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:background="@drawable/ww"
    android:orientation="vertical" >

</LinearLayout>


2. main.xml



    <TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:background="@color/hitam" >

        <TextView
            android:id="@+id/textView1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />

        <TextView
            android:id="@+id/textView2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Tinggi Badan ( cm )"
            android:textColor="@color/putih" />

        <EditText
            android:id="@+id/tinggi_id"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:ems="10"
            android:hint="@string/InputTinggibadan"
            android:inputType="numberDecimal" >

            <requestFocus />
        </EditText>

        <TextView
            android:id="@+id/textView3"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />

        <TextView
            android:id="@+id/textView4"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Berat Badan ( kg )"
            android:textColor="@color/putih" />

        <EditText
            android:id="@+id/berat_id"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:ems="10"
            android:hint="@string/InputBeratBadan"
            android:inputType="number|numberDecimal" />

        <TextView
            android:id="@+id/textView5"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />

        <Button
            android:id="@+id/btn_hitung"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Hitung" />

        <TextView
            android:id="@+id/textView6"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />

        <TextView
            android:id="@+id/textView7"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Hasil "
            android:textColor="@color/putih" />

        <EditText
            android:id="@+id/hasil_id"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:ems="10" />

        <TextView
            android:id="@+id/textView8"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />

        <Button
            android:id="@+id/btn_lihathasil"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Lihat Hasil" />

    </TableLayout>


3. hasil.xml


<?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:layout_gravity="center"
    android:background="@color/hitam"
    android:orientation="vertical" >

    <TextView
        android:id="@+id/kosong1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:textAppearance="?android:attr/textAppearanceSmall" />

    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:text="Skala BMI"
        android:textAppearance="?android:attr/textAppearanceLarge"
        android:textColor="@color/putih" />

    <FrameLayout
        android:id="@+id/abang"
        android:layout_width="match_parent"
        android:layout_height="30dp"
        android:background="@color/merah" >

        <TextView
            android:id="@+id/textView05"
            android:layout_width="305dp"
            android:layout_height="wrap_content"
            android:layout_gravity="center_vertical|center_horizontal"
            android:text="@string/lime"
            android:textAppearance="?android:attr/textAppearanceSmall"
            android:textColor="@color/putih" />

    </FrameLayout>

    <FrameLayout
        android:id="@+id/orange"
        android:layout_width="match_parent"
        android:layout_height="30dp"
        android:background="@color/MerahOrange" >

        <TextView
            android:id="@+id/textView04"
            android:layout_width="306dp"
            android:layout_height="wrap_content"
            android:layout_gravity="center_vertical|center_horizontal"
            android:text="@string/empat"
            android:textAppearance="?android:attr/textAppearanceSmall"
            android:textColor="@color/putih" />

    </FrameLayout>

    <FrameLayout
        android:id="@+id/semuijo"
        android:layout_width="match_parent"
        android:layout_height="30dp"
        android:background="@color/Kuning" >

        <TextView
            android:id="@+id/textView03"
            android:layout_width="306dp"
            android:layout_height="wrap_content"
            android:layout_gravity="center_vertical|center_horizontal"
            android:text="@string/tiga"
            android:textAppearance="?android:attr/textAppearanceSmall"
            android:textColor="@color/putih" />

    </FrameLayout>

    <FrameLayout
        android:id="@+id/ijo"
        android:layout_width="match_parent"
        android:layout_height="30dp"
        android:background="@color/hijau" >

        <TextView
            android:id="@+id/textView02"
            android:layout_width="306dp"
            android:layout_height="wrap_content"
            android:layout_gravity="center_vertical|center_horizontal"
            android:text="@string/dua"
            android:textAppearance="?android:attr/textAppearanceSmall"
            android:textColor="@color/putih" />

    </FrameLayout>

    <FrameLayout
        android:id="@+id/biru"
        android:layout_width="match_parent"
        android:layout_height="30dp"
        android:background="@color/birumuda" >

        <TextView
            android:id="@+id/TextView01"
            android:layout_width="305dp"
            android:layout_height="wrap_content"
            android:layout_gravity="center_vertical|center_horizontal"
            android:text="@string/satu"
            android:textAppearance="?android:attr/textAppearanceSmall"
            android:textColor="@color/putih" />

    </FrameLayout>

    <TextView
        android:id="@+id/TextView04"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:textAppearance="?android:attr/textAppearanceSmall" />


    <TextView
        android:id="@+id/TextView03"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:text="Berat badan anda termasuk"
        android:textAppearance="?android:attr/textAppearanceMedium"
        android:textColor="@color/putih" />


    <FrameLayout
        android:id="@+id/abang1"
        android:layout_width="match_parent"
        android:layout_height="30dp"
        android:layout_gravity="center"
        android:background="@color/merah" >

        <TextView
            android:id="@+id/hasilakhir"
            android:layout_width="306dp"
            android:layout_height="wrap_content"
            android:layout_gravity="center_vertical|center_horizontal"
            android:textAppearance="?android:attr/textAppearanceSmall"
            android:textColor="@color/putih" />

    </FrameLayout>

    <TextView
        android:id="@+id/TextView07"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:textAppearance="?android:attr/textAppearanceSmall" />

    <FrameLayout
        android:id="@+id/abang2"
        android:layout_width="match_parent"
        android:layout_height="30dp"
        android:layout_weight="0.88"
        android:background="@color/merah" >

        <TextView
            android:id="@+id/keterangan"
            android:layout_width="305dp"
            android:layout_height="125dp"
            android:layout_gravity="center_vertical|center_horizontal"
            android:textAppearance="?android:attr/textAppearanceSmall"
            android:textColor="@color/putih" />

    </FrameLayout>

</LinearLayout>


Langkah ketiga, buat 3 class.java di folder src --> package kamu :
    1. Splash.java
    2. Main.java
    3. Hasilnyaa.java

1. Class Splash.java

public class Splash extends Activity{

    protected int _splashTime = 5000;

    private Thread splashTread;

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

        final Splash sPlashScreen = this;

        // thread for displaying the SplashScreen
        splashTread = new Thread() {
            @Override
            public void run() {
                try {
                    synchronized(this){

                            //wait 5 sec
                            wait(_splashTime);
                    }

                } catch(InterruptedException e) {}
                finally {
                    finish();

                    //start a new activity
                    Intent i = new Intent();
                    i.setClass(sPlashScreen, Main.class);
                            startActivity(i);

                    stop();
                }
            }
        };

        splashTread.start();
    }

    //Function that will handle the touch
    @Override
    public boolean onTouchEvent(MotionEvent event) {
        if (event.getAction() == MotionEvent.ACTION_DOWN) {
            synchronized(splashTread){
                    splashTread.notifyAll();
            }
        }
        return true;
    }

}


2. Class Main.java

public class Main extends Activity {

                public static final String statusnya="";
                private EditText tinggi_e;
                private EditText berat_e;
                private EditText hasil_e;
                private Button but_hit;
                private Button but_has;
                private double BMI;
                private double tinggi;
                private double berat;
                private int status;
               
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
       
        tinggi_e=(EditText) findViewById(R.id.tinggi_id);
        berat_e=(EditText) findViewById(R.id.berat_id);
        hasil_e=(EditText) findViewById(R.id.hasil_id);
        but_hit=(Button) findViewById(R.id.btn_hitung);
        but_has=(Button) findViewById(R.id.btn_lihathasil);
       
        but_hit.setOnClickListener(hitung);
       
        but_has.setOnClickListener(hasile);
    }
    OnClickListener hitung=new OnClickListener() {
                               
                                public void onClick(View v) {
                                                if(tinggi_e.getText().length()==0 && berat_e.getText().length()==0){
                AlertDialog.Builder alert = new AlertDialog.Builder(Main.this);
                alert.setTitle(R.string.errorTitle_hitung);
                alert.setMessage(R.string.errorMessage_hitung);
                alert.setPositiveButton(R.string.errorButton_hitung, null);
                alert.show();
                     }else{
                        tinggi=Double.parseDouble(tinggi_e.getText().toString())/100;
                        berat=Double.parseDouble(berat_e.getText().toString());
                        BMI = (berat / (tinggi * tinggi));
                         hasil_e.setText(String.valueOf(BMI));
                                                               
                      if(BMI >= 30){
                           status=5;
                      }else if(BMI >= 25 &&BMI <=29.9){
                          status=4;
                      }else if(BMI >= 23 && BMI <=24.9){
                            status=3;
                      }else if(BMI >= 18.5 && BMI <=22.9){
                          status=2;
                      }else if(BMI < 18.5){
                           status=1;
                      }else{
                             status=0;
                      } }}};
               
    OnClickListener hasile=new OnClickListener() {
                               
                                public void onClick(View v) {
                                                if(hasil_e.getText().length()==0){
                AlertDialog.Builder alert = new AlertDialog.Builder(Main.this);
                alert.setTitle(R.string.errorTitle_hasil);
                alert.setMessage(R.string.errorMessage_hasil);
                alert.setPositiveButton(R.string.errorButton_hasil, null);
                alert.show();
                                                }else{
                                          Intent viewCon = new Intent(Main.this, Hasilnyaa.class);
                                          viewCon.putExtra(statusnya, status);
                                          startActivity(viewCon);
                      }                                             
              }
        };           
}


3. Class Hasilnyaa.java

public class Hasilnyaa extends Activity{
      
       private int id;
       private FrameLayout frame1;
       private FrameLayout frame2;
       private TextView hasile;
       private TextView kandani;

       public void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         setContentView(R.layout.hasil);
              
         frame1=(FrameLayout) findViewById(R.id.abang1);
         frame2=(FrameLayout) findViewById(R.id.abang2);
              
         hasile=(TextView) findViewById(R.id.hasilakhir);
         kandani=(TextView) findViewById(R.id.keterangan);
         Bundle oleh=getIntent().getExtras();
         id=oleh.getInt(Main.statusnya);
              
    if(id==1){
         frame1.setBackgroundResource(R.color.birumuda);
         frame2.setBackgroundResource(R.color.birumuda);
         hasile.setText(R.string.satu);
         kandani.setText("Badan kamu kurus, Disarankan kamu untuk banyak makan dan olah raga ");
                    
    }else if(id==2){
         frame1.setBackgroundResource(R.color.hijau);
         frame2.setBackgroundResource(R.color.hijau);
         hasile.setText(R.string.dua);
         kandani.setText("Badan kamu ideal, tetapi tetap jaga pola makan dan olah raga secukupnya");
     }else if(id==3){
         frame1.setBackgroundResource(R.color.Kuning);
         frame2.setBackgroundResource(R.color.Kuning);
         hasile.setText(R.string.tiga);
         kandani.setText("Berat badan kamu masih tergolong normal-ideal mendekati obesitas, kamu perlu memperbaiki pola makan dan perbanyak olahraga");
      }else if(id==4){
         frame1.setBackgroundResource(R.color.MerahOrange);
         frame2.setBackgroundResource(R.color.MerahOrange);
         hasile.setText(R.string.empat);
         kandani.setText("Berat badan anda diambang batas obesitas, kondisi bahaya, segera ubah kebiasaan makan /kembali ke gaya hidup sehat");
       }else if(id==5){
         frame1.setBackgroundResource(R.color.merah);
         frame2.setBackgroundResource(R.color.merah);
         hasile.setText(R.string.lime);
         kandani.setText("Waduhh parah nie sob...!! berdoa aja moga2 gak cepet mati !");
       }else{
         frame1.setBackgroundResource(R.color.putih);
         frame2.setBackgroundResource(R.color.putih);
         hasile.setText("error");
               }
        }
}


4. langkah terakhir, kita rubah sedikit file AndroidManifest.xml

AndroidManifest.xml


<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="okin.example.bmicalculator"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="15" />

    <application
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name=".Splash"
            android:label="@string/title_activity_main" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity android:name="Main"></activity>
        <activity android:name="Hasilnyaa"></activity>
    </application>

</manifest>

Note : yang berwarna hijau adalah sourcode hasil penambahan atau perubahan

Siiippp program siap dijalankan jangan lupa di build and clean dulu mas Sob.. and coba jalankan.

Klik kanan project --> Run as --> 1. Android Application

Tampilan Splash Screennya.


Saya coba masukkan berat badan dan tinggi badan saya.. kamudian klik hitung akan keluar hasilnya di EditText "Hasil" kemudian klik tombol "Lihat hasil" maka akan keluar form baru yang akan memberi tahu Kondisi berat badan kamu.

 

Alhamdulillah, berat badan saya termasuk ideal sob hehe,

aku tambahin lagi nie buat seru seruan, jika hasil perhitungan berat badan kamu melebihi batas, lebih dari atau sama dengan 30.



Kaaak kaak kak kakakakka.....!!!

Jika menemukan kesuliatan saat pengerjaan programnya dan mulai stress n depresi berat.. bisa langsung donlot aja sourcecodenya di link ini


Mau tau kondisi berat badan kamu ? download apknya disini

Propellerads

Popular Posts