Belajar Laravel : Laravel Content Project (public) PART V

Belajar Laravel : Laravel Content Project (public) PART V

Belajar Laravel : Laravel Content Project (public) PART V

Ngulik kode - Hallo teman-teman kembali lagi bareng gw revi, untuk article ini kita bakal bahas public pada laravel, semangat terus belajar aa teteh 😁, oke kita mulai materinya!.


Review!
Jadi sebelumnya kita sudah belajar cara membuat data dummy, cara seeding ke database, dan membuat file migration supaya tidak perlu lagi membuat structure nya di storage engine.

Materi!
Pertama kita menuju folder public pada project namaproject lalu kita lihat seluruh directory didalamnya.
Folder public

Jadi folder public itu adalah folder diman kita menyimpan file front end yang akan mensupport file HTML, baik itu CSS, JS, JQUERY, dan lain sebagainya.
Bagaimana cara memanggilnya file yang berada pada folder public pada file blade?

Cara pemanggilan file
Untuk menambah materi pada article ini, apa itu .htaccess ?
.htaccess adalah file konfigurasi yang digunakan pada web server yang menjalankan aplikasi apache web server. File ini bisa memanipulasi konfigurasi pada apache web server untuk menggunakan / menonaktifkan tambahan fitur yang apache miliki. Jika kalian ingin mengetahui lebih jauh silahkan klik disini.

Oke materi sudah selesai semoga teman-teman ngulikode bisa mengerti materi diatas dan bisa langsung dicoba di project kalian. Terima kasih sudah berkunjung pada blog ini, ikuti terus perkembangannya ya, semua article di laravel akan berkesinambungan, see u and keep learning!.



Belajar Laravel : Laravel Content Project (database) PART IV

Belajar Laravel : Laravel Content Project (database) PART IV

Belajar Laravel : Laravel Content Project (database) PART IV

Ngulik kode - Hallo teman-teman kembali lagi bareng gw revi udah lama nih ga lanjut materi lagi, untuk article ini kita bakal bahas database pada laravel, yup kita fokus ke Factories, oke kita mulai materinya!.




Review!

Jadi sebelumnya kita sudah bahas tentang app - bootstrap - config, tapi kenapa sih mimin ga jelasin seluruh file yang ada di ketiga folder itu?

  • Pertama di laravel seluruh fitur yang tersedia diberikan, tapi tidak seluruh file itu sering dipakai pada project besar maupun kecil.
  • Kedua mungkin mimin belum pernah menggunakan file yang tidak mimin jelaskan untuk mencegah ketidakjelasan materi.

Semoga penjelasan diatas bisa kalian pahami, yup next materi kita lanjut!

Materi!
Pertama kita akan membahas Factories, pada modelfactory.php kita bisa membuat data dummy yang jumlahnya sesuai keinginan kita yang bisa diinput secara otomatis dan juga kita bisa mencoba apakah project kita available dengan data besar?

Contoh model factory
Pada script diatas mimin ingin membuat data dummy ke model Menu.

  • $factory : variabel yang berfungsi untuk mendefinisikan class \Illuminate\Database\Eloquent\Factory, lalu di return ke function Faker
  • App\Menu::class : Merupakan model yang terhubung dengan tabel pada DB Engine, tentunya model tersebut sudah dilampirkan field tertentu.
  • 'status' : Salah satu field yang akan diberikan data dummy yang memiliki format numberBetween(0,1), maksudnya data yang tersimpan angka antara 0 s/d 1, dan dipilih secara acak oleh Faker.
Untuk FakerFormat kalian bisa mempelajar lebih detail disini fzaninotto/Faker.
Kedua, setelah membuat model di modelfactory.php sekarang beralih ke Seeds, disini kita membuat statement bahwa factory yang telah kita buat sudah siap dan DB Engine siap juga untuk di seed atau diisi data dummy.
Contoh file seed yang bernama ForYouCulinar
File diatas bernama ForYouCulinar.php, lalu memiliki function run(), yang didalamnya terdapat statement pada factory(App\menu::class) buatlah data dummy sebanyak 50data/rows.

Seeding menggunakan cmd
Running script ForYouCulinar.php menggunakan perintah db:seed seperti gambar diatas.
Kalian bisa mempelajar lebih detail tentang Seeders disini LaravelSeeders

Terakhir kita membahas tentang migrations, fungsinya adalah kita tidak perlu lagi membuat tabel beserta seluruh structure nya pada DB Engine, bagaimana membuatnya?


  1. Buka cmd
  2. Pindah ke directory project
  3. Gunakan perintah make:migration
Kalian bisa mempelajar lebih detail tentang migrations disini LaravelMigrations
Contoh migration CreateUsersTable
Diatas adalah salah satu file migrations bawaan yaitu CreateUsersTable.php jika kalian make:migration file akan dibuat otomatis seperti screenshot diatas, tinggal kalian inisialisasi structure table nya, jika sudah dibuat lalu save.
Sekarang file migration harus kita migrate ke DB Engine, dengan cara :

Jika sudah, lalu enter, sekarang check ke DB Engine apakah structure table sudah terbuat, jika sudah selamat kita akan ke materi selanjutnya.

Akhirnya materi database sudah selesai, semoga teman-teman ngulikode bisa mengerti materi diatas dan bisa langsung dicoba di project kalian. Terima kasih sudah berkunjung pada blog ini, ikuti terus perkembangannya ya, semua article di laravel akan berkesinambungan, see u and keep learning!.
Belajar Laravel : Laravel Content Project (config/auth) PART III

Belajar Laravel : Laravel Content Project (config/auth) PART III

Belajar Laravel : Laravel Content Project (config/auth) PART III

Ngulik kode - Hallo guys kembali lagi nih bareng saya revi, untuk article ini kita bakal bahas config/auth pada laravel, sekarang kita fokus ke auth.php lebih dulu, oke kita mulai materinya!.






Review!
Jadi sebelumnya kita sudah bahas tentang config/app dan ini adalah materi lanjutan tentu maksudnya kita sudah lanjut ke file selanjutnya yang terdapat pada project laravel, buat kalian yang belum belajar silahkan mampir (disini).

Materi!
Siapa yang tidak tahu authentication, authentication adalah proses untuk memverifikasi apakah yang memproses ini betul-betul user atau apakah yang memproses ini betul-betul terdapat datanya pada database system.
Laravel memiliki dua fasilitas authentication, yaitu "guard" dan "provider", apa itu guard? guard menentukan bagaimana pengguna diauthentikasi saat setiap melakukan request. Provider menentukan bagaimana pengguna mengambil dari penyimpanan persisten user sendiri.


Kapan kita menggunakannya?
Kita menggunakannya ketika suatu page atau controller atau system ingin diberikan hak akses, hanya orang tertentulah yang bisa mengatur ke system itu, authentication akan berhubungan dengan middleware.

Bagaimana cara kerja dari authentication?

Authentication workflow

Authentication paling mudah kita temukan ketika kita sudah pernah login ke dalam suatu system, ketika kita mengunjungi suatu page yang dibatasi hak akses, credential yang didapat akan dibandingkan dengan data yang terdapat pada database user atau hak akses, jika credential cocok maka proses selesai dan pengguna diberi authorization untuk mengakses.

Kita fokus kembali ke topik, pada laravel authentication terdapat tiga jenis, yaitu:

Authentication Defaults
Jenis auth ini mengontrol auth "guard" dan password reset secara default.



Authentication Guards
Sekarang kalian bisa mendefinisikan setiap authentication guard pada system, disini kita bisa memakai session storage dan eloquent user provider, maksudnya user benar-benar diambil dari database user atau hak akses, atau tempat penyimpanan lain yang digunakan oleh laravel.


Guard custom yang mimin buat


User Providers
Seluruh authentication driver harus memiliki user provider, dimana kita sebagai user akan dipaparkan di banyak file, terutama pada MVC, jika kita memiliki banyak user hak akses, kalian paparkanlah dengan menambah provider pada script. Pada driver kita bisa memilih fasilitas dari laravel yaitu eloquent, eloquent adalah object-relational mapping yaitu teknik pemrograman untuk memetakan antara object dengan database, jadi jika pada native PHP kita harus membuat suatu query tapi disini kita hanya perlu membuat ORM yang terdapat di laravel yaitu eloquent.

Contoh custom providers

Resetting Passwords
Pada reset password digunakan ketika berapa lama kita ingin menghapus session, reset password akan dilakukan ketika kita tidak menggunakan aplikasi laravel tetapi kita tidak melakukan logout hak akses. Jadi ketika kita registrasi hak akses, pada db akan terdapat remember token dan token itu akan hidup sementara jika kita menggunakan resetting password untuk kemanan system.

Custom resetting password untuk provider admins

Oke teman-teman materi auth telah selesai sekian dari saya semoga dapat bermanfaat, terima kasih sudah berkunjung pada blog ini, ikuti terus perkembangannya ya, semua article di laravel akan berkesinambungan, see u and keep learning!.
Belajar Laravel : Laravel Content Project (config/app) PART II

Belajar Laravel : Laravel Content Project (config/app) PART II

Belajar Laravel : Laravel Content Project (config/app) PART II

Ngulik kode - Hallo guys kembali lagi nih bareng saya admin yang sekarang sering nongol di Ngulik kode 😆. Pada article ini kita bakal bahas config/app laravel. Config laravel terdapat banyak file yang masing-masing di dalam filenya terdapat banyak fungsi tersendiri, tetapi sekarang kita fokus ke app.php, oke kita mulai materinya!.




Review!
Jadi kemarin kita udah bahas tentang app dan bootstrapnya laravel, ini adalah materi lanjutannya, buat kalian yang belum belajar silahkan mampir (disini).

Materi!
Seluruh file konfigurasi framework Laravel berada di direktori CONFIG, sebetulnya semua file yang berada di Laravel sudah terdapat dokumentasi supaya kita bisa mengetahui apasih fungsi file tersebut?, tidak hanya file di konfigurasi saja tentunya.




--------------------------------------------------------------------------------------------------------------------------



Application name adalah nama dari aplikasi kalian sendiri (Laravel). Value ini digunakan ketika framework kita ingin diberikan nama aplikasi, nama aplikasi bisa ditempatkan di berbagai lokasi aplikasi anda dengan syarat kita memanggil package dengan
{{ app()->getName() }}



application environment adalah app yang memutuskan bagaimana anda memilih untuk konfigurasi layanan yang terdapat di aplikasi Laravel anda pada file .env




Application Debug Mode adalah sebuah app yang bisa kalian pakai saat digunakan untuk debugging aplikasi kalian, seluruh error dan stack akan tercetak, untuk memakainya ganti status menjadi true sebaliknya false.



Application URL berfungsi untuk menghasilkan URL dengan benar dengan menggunakan artisan console (command promt), kita harus masuk ke directory Laravel supaya bisa memakai artisan.



Application Timezone, disini kalian bisa menggunakan value date-time untuk dipaparkan pada aplikasi Laravel kalian.



Application Locale Configuration, fungsi ini dipakai untuk menentukan bahasa apa yang akan digunakan pada aplikasi Laravel, kalian juga bisa mengganti bahasanya sesuai keinginan.



Encryption Key, fungsi ini digunakan oleh Illuminate encrypter service, dan akan diubah menjadi nilai random, 32 karakter string, jika aplikasi Laravel kalian ingin di deployment pastikan lakukan enkripsi.



Autoloaded Service Providers, service provider yang tercantum akan dimuat secara otomatis jika aplikasi anda melakukan request.



Class alias digunakan ketika jika kita ingin menggunakan class yang digunakan singkat, kita juga bisa menggunakannya saat di artisan command line.

Sekian dari saya semoga dapat bermanfaat, terima kasih sudah berkunjung pada blog ini, ikuti terus perkembangannya ya 💪😁.
Belajar Laravel : Laravel Content Project (app & bootstrap) PART I

Belajar Laravel : Laravel Content Project (app & bootstrap) PART I

Belajar Laravel : Laravel Content Project (app & bootstrap) PART I

Ngulik kode - Hallo guys kembali lagi nih bareng saya admin yang katanya baru nongol di Ngulik kode 😆. Pada article ini kita bakal bahas seluruh content atau isi project laravel (maksudnya yang ada di dalam folder project laravel). Tapi karna kita mau bahas semua fungsi seluruh content jadi mimin manage postnya, article ini membahas folder app dan bootstrap.



Review!
Jadi kemarin kita udah install semua kebutuhan laravel mulai dari composer sampai install laravel yang berlokasi di htdocs (monggo mampir).

Materi!
Oke ini adalah materi lanjutan, jadi setiap folder dan file di dalam project laravel punya fungsi masing-masing yang berkesinambungan dengan folder dan file lain yang tentunya tetap di dalam project laravel .

Contoh : maksud berkesinambungan itu gimana sih?
laravel adalah framework yang arsitektur aplikasinya MVC (Model View Controller), pada file model adalah tempat untuk memaparkan field yang berhubungan dengan file view dan mengkoneksikan database menggunakan file controller.

----------------------------------------------------------------------------------------------------

Content laravel project


Folder :

  • app
Kernel and Handler
Oke yang pertama kita bahas file Kernel.php yang berada di folder Console, file Kernel.php berfungsi untuk ketika kita berinteraksi dengan aplikasi kita melalui command line, dan ketika kamu menggunakan artisan, scheduled job is processed,  queued job is processed, semua itu kita bisa gunakan dan setting di console kernel. 

Kedua Handler.php yang berada pada folder Exceptions, file itu berfungsi sebagai Error handler authenticated, yang terdapat pada default file tersebut ketika kita login bukan sebagai auth, kita akan di redirect ke route login, jika kita memiliki banyak guard atau banyak user dan banyak admin dan banyak pilihan redirect kita bisa menambahkan kondisi pada file disini .

Controller and middleware
Ketiga, seluruh file yang berada di folder controller berfungsi untuk mengatur bagaimana mengambil data dari database, bagaimana source bisa terhubung dengan model, bagaimana ketika suatu aksi direspon dengan reaksi dengan menampilkan view yang harus sesuai dengan route.

Keempat, seluruh file yang berada di folder middleware berfungsi untuk membatasi suatu page beserta routenya, pada php native dikatakan SESSION, nah ketika kita memiliki multiple user kita harus membatasi hak aksesnya kemana saja si user akan di arahkan, semua itu bisa setting di middleware.

Nah di folder http terdapat juga file Kernel.php, file kernel di http berbeda dengan di console, perbedaannya yang terdapat di folder http digunakan untuk memproses permintaan yang masuk melalui web (HTTP), contohnya seperti request, ajax, dan sebagainya.

Providers
Providers adalah tempat utama semua bootstrap laravel, dan juga semua layanan inti Laravel di-bootstrap melalui service provider. Apa yang dimaksud dengan "bootstrapped"? Secara umum, laravel bermaksud mendaftarkan barang, termasuk me-registrasi service container bindings, middleware, dan route. Service provider adalah tempat utama untuk mengkonfigurasi laravel.


Bootstrap
Pada folder bootstrap disini bukan tempat untuk menyimpan file style page dari framework bootstrap, tetapi digunakan untuk inisialisasi (setting up path & environments) framework.

Sekian dari saya semoga dapat bermanfaat, terima kasih sudah berkunjung pada blog ini, next kita bahas folder config 💪😁.
Belajar Laravel : Installasi Framework Laravel 5.4 dengan XAMPP

Belajar Laravel : Installasi Framework Laravel 5.4 dengan XAMPP

Belajar Laravel : Installasi Framework Laravel 5.4 dengan XAMPP

Ngulik Kode - Hallo guys saya admin baru di Ngulik Kode, panggil saja saya revi, saya bakal bahas lebih lanjut masalah Framework Laravel yang lagi meledak-ledak di dunia nih hehe, kalo mau tau lebih lanjut tentang saya silahkan PM, dan buat yang punya masalah sama Laravel bisa comment di bawah ya 😁.

Article ini adalah lanjutan dari article sebelumnya yaitu Cara install composer pada XAMPP di sistem operasi windows , jadi yang belum pernah otak atik laravel jangan buru-buru ya...ikuti saja alurnya 😂.



System requirements
  • PHP >= 5.6.4
  • OpenSSL PHP Extension
  • PDO PHP Extension
  • Mbstring PHP Extension
  • Tokenizer PHP Extension
  • XML PHP Extension

Installing Laravel
   Untuk menginstall laravel ada dua cara yaitu via laravel installer dan via composer create-project, disini saya menginstall menggunakan via composer create-project karena lebih cepat dan mudah.

Buka command promt (cmd) lalu pindahkan directory ke lokasi tujuan (C:\xampp\htdocs => lokasi optional), jika sudah ketik composer create-project --prefer-dist laravel/laravel namaproject , perlu diketahui namaproject adalah folder project yang kita tentukan, dan kita akan memulai coding di project itu sendiri.


Jika sudah diketik, lalu enter, mohon menunggu karena proses download laravel sebesar 25.4 MB (26,722,635 bytes) s/d 34.6 MB (36,311,040 bytes), foto dibawah jika proses download sudah selesai.



Sekarang kita check di directory htdocs bagaimana keberadaan folder namaproject??? yupss dan ternyata berhasil...



Ini adalah isi dari folder Laravel 5.4, masing-masing folder memiliki fungsi berbeda, untuk fungsinya check disini!!! (coming soon)



Sekarang kita ganti DocumentRoot dan Directory server nya supaya memudahkan kita , jadi kelebihannya disini memudahkan saat menggunakan route laravel, karna jika kita run laravel secara manual url yang di masukkan 'localhost/namaproject/public/routetujuan' tapi jika kita perpendek menjadi 'localhost/routetujuan', cara menggantinya yaitu :

  • Buka XAMPP
  • Pilih Apache (httpd.conf) => tambahkan atau ganti supaya menjadi seperti script dibawah ini
    DocumentRoot "C:/xampp/htdocs/namaproject/public/"
    <Directory "C:/xampp/htdocs/namaproject/public/">

  • Save file
  • Start Apache dan MySql



Finally waktunya eksekusi di search engine dengan url 'localhost' :



Selamat datang di Laravel!!!, gambar diatas adalah tampilan welcome khusus dari framework ini, selanjutnya kita bakal bahas routing, apa itu routing? fungsinya untuk apa? nah jangan sampai ketinggalan materinya ya!.

Sekian dari saya semoga dapat bermanfaat, terima kasih sudah berkunjung pada blog ini. :)
Belajar Laravel : Cara Install Composer Laravel Pada XAMPP

Belajar Laravel : Cara Install Composer Laravel Pada XAMPP

Belajar Laravel : Cara Install Composer Laravel Pada XAMPP

Ngulik Kode - Composer adalah sebuah tools pakage manager yang di fungsikan untuk mengelola pakage pada proyek pemrogramman PHP salah satunya yaitu Framework Laravel dengan penggunaan Composer ini. Dengan menggunakan Composer ini, akan menjadi lebih mudah dalam mengelola depedency (library) yang dibutuhkan pada aplikasi php ini antara lain adalah pengaturan, autoload, download hingga update depedency, semua menjadi akan lebih mudah dengan penggunaan Composer ini.


Download & Install Composer Untuk Windows

Untuk sebelum memulai menggunakan Composer ini yang pertama perlu dilakukan adalah men-Download dan Install Composer pada Windows. Silahkan langsung saja menuju ke situs https://getcomposer.org/ untuk mendapatkan Installer Composer resmi.


Setelah anda download, lalu jalankan installer untuk memulai proses installasi.  Perlu anda ketahui  untuk install Composer ini kita perlu terhubung dengan koneksi internet, karena selama proses tersebut, installer akan mendownload komponen Composer yang dibutuhkan.

Setelah menjalankan file installer Composer-Setup.exe maka akan muncul jendela setup Composer seperti gambar dibawah ini, Lalu klik next untuk memulai menjalankan installer.


Kemudian pastikan kita sudah meng-Install local server, bisa menggunakan xampp, wampp atau yang lainya. yang terdapat file php.exe pada folder installasi local server, jika sudah pilih next untuk melanjutkan proses installasi.


Pilih lokasi local server anda, saya disini menggunakan xampp, jika sudah klik next kemudian tunggu sampai proses Installasi Composer selesai lalu klik finish. Untuk cek apakah composer sudah terinstall dengan benar atau belum bisa anda cek seperti berikut :


Jika seperti ini proses installasi composer anda sudah berhasil tinggal bisa anda gunakan untuk proses development aplikasi menggunakan framework laravel, yang akan saya bahas pada artikel berikutnya.

Sekian dari saya semoga dapat bermanfaat, terima kasih sudah berkunjung pada blog ini. :)
Belajar Implementasi Perangkat Kamera Pada Aplikasi Android

Belajar Implementasi Perangkat Kamera Pada Aplikasi Android

Belajar Implementasi Perangkat Kamera Pada Aplikasi Android

Ngulik Kode - Pada kesempatan kali ini saya ingin kembali memberikan tutorial cara implement perangkat kamera pada aplikasi android. Pada saat ini untuk dapat belajar android itu tidak begitu sulit, dibandingkan oleh beberapa tahun lalu karena kurangnya tutorial dan forum diskusi untuk developer android ini. Dulu pernah sempat terpikir untuk membuat aplikasi dengan pemanfaatan perangkat kamera pada android, namun karena kurangnya informasi untuk bagaimana cara mulai membuatnya jadi sempat tertunda. Sekaranglah saatnya saya ingin membagikan kepada anda yang baru ingin belajar membuat aplikasi android dengan pemanfaatan perangkat kamera pada android ini.


Langsung saja untuk memulai membuat aplikasi dengan mengikuti langkah-langkah dibawah ini.

Membuat Proyek Baru

Memulai membuat sebuah aplikasi pada android, langkah yang paling utama adalah membuat proyek baru, agar proyek yang lama tidak tercampur dan dapat menimbulkan error.

Membuat Proyek Baru Pada Eclipse
  • Membuat proyek baru pada Eclipse IDE dengan membuka menu File ⇒ New ⇒ Android Application Project
Membuat Proyek Baru Pada Android Studio
  • Membuat proyek baru pada Android Studio dengan membuka menu File ⇒ New ⇒ New Project

1. Setelah selesai membuat proyek baru, kemudian buka file activity_main.xml lalu lakukan perubahan pada file tersebut hingga menjadi seperti kode dibawah ini.

activity_main.xml

Ada dua bagian yang kita gunakan pada layout yaitu Button dan ImageView. Pada bagian Button digunakan untuk mengaktifkan pengambilan gambar lewat kamera, dan kemudian pada bagian ImageView digunakan untuk menampung gambar hasil jepretan untuk di tampilkan.

2. Kemudian selanjutnya buka file MainActivity.java lalu lakukan perubahan hingga menjadi seperti kode dibawah ini. Berikut adalah kode lengkapnya untuk file MainActivity.java.

MainActivity.java

Jika sudah selesai sampai bagian ini, sekarang kita coba jalankan aplikasi untuk mencobanya terdapat error atau tidak. Jika aplikasi tidak ada yang error maka akan tampak seperti gambar dibawah ini.

 

Nah itu dia hasil dari proyek yang kita bikin. Sekian yang dapat saya sampaikan kurang lebihnya mohon maaf. Semoga dapat bermanfaat dan sampai bertemu pada tutorial berikutnya.
Tutorial Membuat Aplikasi Senter Dengan Pemanfaatan Flash Kamera Pada Android

Tutorial Membuat Aplikasi Senter Dengan Pemanfaatan Flash Kamera Pada Android

Tutorial Membuat Aplikasi Senter Dengan Pemanfaatan Flash Kamera Pada Android

Ngulik Kode - Pada kesempatan kali ini saya ingin kembali membuat tutorial cara membuat senter pada android dengan penggunaan flash kamera. Aplikasi ini dapat meghidupkan dan mematikan senter dengan tombol sederhana. Perlu anda ketahui, aplikasi ini hanya di targetkan untuk perangkat ponsel, tapi jika anda ingin mencobanya pada perangkat tablet, saya tidak yakin aplikasi ini dapat digunakan. Dan pastinya juga perangkat sudah memiliki flash pada kamera.


Sebelum kita mulai membuat kode program pertama kita sediakan beberapa gambar untuk digunakan sebagai tombol untuk menyalakan atau mematikan dari senter yang kita akan buat. Untuk gambarnya seperti dibawah ini :

Kemudian setelah itu anda juga menyiapkan sound effect untuk ketika tombol di tekan memiliki effect suara saklar seperti sesungguhnya.


Untuk kedua file tersebut saya sudah menyiapkanya untuk anda, Jadi anda tinggal unduh dan bisa langsung mencoba membuat aplikasinya. UNDUH DISINI (ImageButton) - UNDUH DISINI (SoundEffect)


Membuat Proyek Baru

Jika semua file sudah siap, sekarang kita masuk pada pembuatan aplikasi. Sebelum membuat aplikasi kita perlu membuat sebuah project baru.

Membuat Proyek Baru Pada Eclipse
  • Membuat proyek baru pada Eclipse IDE dengan membuka menu File ⇒ New ⇒ Android Application Project
Membuat Proyek Baru Pada Android Studio
  • Membuat proyek baru pada Android Studio dengan membuka menu File ⇒ New ⇒ New Project

1. Buka file AndroidManifest.xml dan anda tambahkan yang diperlukan. Pada aplikasi ini saya tidak menggunakan mode landscape hanya menggunakan mode potrait. Untuk hanya menggunakan mode portrait anda dapat menggunakan kode berikut android:screenOrientation=”portrait” properti.

android.permission.CAMERA - Digunakan untuk mengakses prangkat kamera
android.hardware.camera - Digunakan untuk mengakses fitur hardware kamera

AndroidManifest.xml


2. Letakkan semua file gambar yang anda download, kedalam directory Drawable. Pada file gambar button saya memberikan nama dengan btn_switch_on.png dan btn_switch_off.png

3. Buat file XML dengan nama radial_background.xml lalu simpat pada directory res ⇒ drwable. Pada file ini digunakan untuk membuat background pada aplikasi.

radial_background.xml


4. Sekarang anda buka file activity_main.xml yang berada pada folder res ⇒ layout dan ketikkan kode seperti berikut. File layout ini berfungsi untuk layar utama dari aplikasi.

Pada kode berikut kita menggunakan background gradient menggunakan file radial_background.xml yang telah kita buat tadi. Setelah itu kita pasang sebuah ImageButton dengan gambar switch.

activity_main.xml


5. Kemudian selanjutnya, buka file MainActivity.java lalu lakukan perubahan seperti kode dibawah ini. Pada kode berikut hanya untuk melakukan deklarasi variabel yang di butuhkan.

MainActivity.java


Pengecekkan Perangkat Tersedia Flashlight atau Tidak

Pada langkah ini adalah langkah yang paling penting untuk memperingati pengguna dengan menampilkan dialog pesan kalau perangkat tidak tersedia Flashlight.

6. Masih tetap pada file MainActivity.java lalu lakukan perubahan/penambahan kode seperti dibawah ini. Pada kode ini lah dialog pesan yang akan di tampilkan jika perangkat tidak tersedia Flashlight dan akan menutupnya dengan finish() 

MainActivity.java


Fungsi Menyalakan Senter

7. Untuk menyalakan senter bisa dilakukan dengan menyetel flash kamera ke FLASH_MODE_TOUCH. Dua fungsi berikut getCamera() dan turnOnFlash() akan bekerja untuk kita, maka langkah yang perlu anda lakukan adalah tambahkan fungsi ini kedalam file MainActivity.java.

MainActivity.java

Fungsi Mematikan Senter

8. Flashlight juga bisa dimatikan dengan cara mengatur mode flash menjadi FLASH_MODE_OFF. Lalu tambahkan fungsi dibawah ini kedalam MainActivity.java.

MainActivity.java


Kemudian pemanggilan function klik button.


Fungsi Perubahan Gambar Ketika Tombol Diklik on/off

9. Pada fungsi ini melakukan perubahan gambar ketikan tombol pada mode on atau pada mode off. toggleImageButton() dipanggil pada fungsi turnOnFlash() dan turnOffFlash(). Lalu tambahkan Kode seperti berikut.

MainActivity.java


Fungsi Menambahkan Effect Suara Pada Tombol

10. Langkah selanjutnya adalah membuat effect suara seperti saklar ketika button di klik yang pertama adalah anda siapkan terlebih dahulu file dengan format mp3 dengan nama file light_switch_on.mp3 untuk effect suara ON ketika tombol di klik dan file satu lagi dengan nama light_switch_off.mp3 untuk effect suara OFF ketika tombol di klik. Kedua file tersebut sudah saya sediakan diatas.

11. Kemudian kalian buat folder raw didalam folder res, Lalu letakkan kedua file tersebut pada folder raw yang sudah kalian buat (res ⇒ raw ⇒ light_switch_on.mp3, light_switch_off.mp3).

12. Jika semua sudah dilakukan sekarang kita mulai tambahkan fungsi playSound() pada  file MainActivity.java, pada fungsi ini juga dipanggil pada fungsi turnOnFlash() dan turnOffFlash(). Selanjutnya tambahkan kode seperti dibawah ini.

MainActivity.java


13. Kemudian jangan lupa matikan kamera ketika keluar dari aplikasi, karena mungin aplikasi lain ada yang membutuhkan akses kamera juga. Lalu tambahkan kode seperti berikut pada file MainActivity.java.

MainActivity.java

Kode Langkap MainActivity.java

14. Berikut kode langkapnya dari beberapa potongan penjelasan diatas. 

MainActivity.java

Sekian yang dapat saya sampaikan, kurang lebihnya mohon maaf dan semoga dapat bermanfaat.