Postingan

Menampilkan postingan dari Maret, 2022

Kode Java Software Backup Project Android Studio

Gambar
Salah satu kewajiban menjadi developer Android adalah diperlukannya backup source code app berkala. Hal ini penting dilakukan, sebagai cadangan, jika terjadi hal-hal yang tidak diinginkan, seperti terjadinya rusak atau bad sector pada hardisk device yang digunakan untuk membuat aplikasi. Masalahnya, file-file project app Android dengan Android Studio, biasanya jumlahnya banyak, meskipun ukurannya kecil-kecil. Dan menurut penulis, di dalamnya lebih banyak file yang hanya akan memakan space memory, jika penyimpanannya secara satu project penuh. Mungkin pada sebagian developer tidak akan mempermasalahkan keadaan ini. Tetapi jika jumlah app-nya sudah banyak, seperti edugameapp penulis, akan lebih baik untuk menyimpan source code dan file-file yang diperlukan saja, yang memungkinkan untuk menyimpan di Cloud Service seperti di Google Drive, sebagai cadangan yang lain. Oleh karena itu, kode Java di bawah ini, penulis menawarkan software sederhana berbasis dekstop, yang berguna untuk mengambi...

Memperoleh Data Terbaru dari Join Dua Tabel di MySQL

Dimisalkan, suatu instansi memberikan status kepada karyawannya menjadi tiga tingkat. Yaitu kontrak, tidak tetap dan tetap. Setiap status, memiliki kode nomor karyawan sendiri, yang akan berganti jika sang Karyawan telah layak naik pangkat, sesuai dengan loyalitas dan prestasinya. Di mana ketika karyawan berganti status, nomor lama ke yang baru, nomor yang lama akan tetap tersimpan di database (tanpa dihapus), kemudian nomor yang baru akan otomatis menjadi nomor acuan karyawan yang bersangkutan. Lalu bagaimanakah desain databasenya? Kesalahan yang potensial dihadapi sebagai programmer, untuk kasus di atas adalah menganggap nomor karyawan sebagai acuan di database. Penulis yakin, dengan melihat NIK (Nomor Induk Karyawan), pasti kebanyakan programmer database, akan menjadikan NIK sebagai ID acuan utama karyawan. Hal ini karena NIK dianggap tidak akan berubah sampai karyawan itu pensiun. Sebab, biasanya, jika ID acuan diganti, maka data-data sebelumnya yang mengacu pada ID lama, bisa-bisa...

Permintaan Penambahan Ad ID Permission dari Google Play

Gambar
Pada tanggal 15 Maret 2022, penulis mendapatkan email dari Google Play terkait permintaan penambahan Ad ID Permission pada setiap aplikasi penulis di Edugameapp, sebelum 1 April 2022. Penambahan permission ini penting, karena dapat mengakibatkan tidak akan tampilnya iklan dalam aplikasi. Yang juga berarti dapat berpotensi terjadinya pengurangan terhadap pendapatan, jika penulis sebagai developer mengabaikannya. <uses-permission android:name="com.google.android.gms.permission.AD_ID"/> Mulanya, penulis pikir perlu menambahkan kode di atas, pada masing-masing manifest setiap app. Dengan jumlah aplikasi yang telah lebih dari 50 buah, sehingga akan menjadi pekerjaan yang melelahkan sendiri, meski hanya menambahkan satu permission saja. Untungnya Google tidak sejahat itu. Dengan hanya melakukan upgrade SDK iklan terbaru, permission tersebut secara otomatis ditambahkan ke manifest, yang lebih detailnya dapat dilihat di bagian merge manifest.

Membuat Widget HTML untuk Polylang Wordpress

Gambar
Polylang adalah salah satu plugin Wordpress yang dapat digunakan untuk membantu membangun website multi-bahasa. Menurut penulis, plugin ini bagus, meskipun hanya digunakan versi gratisnya. Namun untuk menampilkan Widget yang dapat menyematkan kode HTML, saat tulisan ini dibuat, Widget Custom HTML bawaan Wordpress tidak dapat menampilkan pilihan bahasa. Sehingga perlu dibuat widget yang dapat menampilkan pilihan bahasa, sehingga widget hanya akan muncul ketika website dilihat pada pilihan bahasa yang ditentukan pengunjung (user). Berikut ini adalah kode widget, yang dapat disematkan di file functions.php theme Wordpress yang digunakan. function uboiz_html_register_widget() { register_widget( 'uboiz_html_widget' ); } add_action( 'widgets_init', 'uboiz_html_register_widget' ); class uboiz_html_widget extends WP_Widget { function __construct() { parent::__construct( // widget ID 'uboiz_html_widget', // widget name __('Uboiz HTML Widget...

Menambahkan Custom Top Sidebar di Theme OceanWP

Gambar
OceanWP adalah salah satu theme dari Wordpress. Karena tampilannya yang elegan, mudah dimodifikasi, bervariasi dan cocok untuk situs pendidikan, penulis seringkali menggunakan theme ini untuk membuat situs-situs instansi pendidikan yang meng-kontrak tenaga penulis. Namun, mungkin untuk versi gratis, OceanWP tidak menyediakan sidebar pada bagian atasnya, yang seringkali berguna bagi penulis untuk menyematkan link-link yang penting, tetapi bukan untuk website itu sendiri. Oleh karena itu, berikut ini adalah tutorial singkat, percobaan penulis menambahkan top sidebar untuk theme OceanWP. Pertama, tambahkan kode di bawah ini ke file function.php, yang berada di folder /wp-content/themes/ , letakkan di dalam fungsi register_sidebars(). // Top Sidebar by Uboiz. register_sidebar( array( 'name' => esc_html__( 'Top Sidebar by Uboiz', 'oceanwp' ), 'id' => 'top-sidebar-uboiz', 'description' => esc_html__( '...

Progress Loader Tengah Vertical dan Horizontal dengan CSS

Gambar
Seperti yang pernah penulis sebutkan dalam posting sebelumnya. Salah satu hal terpenting dalam membuat aplikasi, adalah menampilkan progress loader untuk suatu proses. Sebab, jika tidak menampilkan kondisi tersebut, pengguna tidak akan tahu bahwa aplikasi sedang melakukan proses, yang kemungkinan besar dapat membuat pengguna lari meninggalkan aplikasi. Apalagi jika aplikasi itu berupa website. Pengguna akan lebih memilih untuk pergi ke halaman lain, jika website buatan kita itu seperti crash atau kosong. Berikut ini adalah kode satu halaman web, yang menunjukkan contoh progress loader menggunakan CSS sesuai gambar di atas: <html> <head> <meta name="viewport" content="width=device-width,initial-scale=1"> <style> #loader,.boxloader{ position:absolute; top: 50%; left: 50%; background-color:white; padding:20px; display:flex; flex-flow:column; align-items:center; border: 1px solid #eee; border-radius:8px; -ms-transform: translate(-5...