Thursday, April 2, 2020

Cara Mengatasi Unabel to locate Android SDK (Android toolchain)

Bismillahirrohmanirrohim
Assalamu'alaikum warohmatullohi wabarokatuh



Alhamdulillah, segala puji bagi Allah yang masih memberikan ana kesempatan untuk berbuat baik dengan sesama, pada postingan kali ini mimin mau sharing seputar error bagaimana cara mengatasi unable to locate android sdk, pada saat kita menjalankan perintah flutter doctor pada command prompt (cmd), untuk mengetahui apa saja yang sudah maupun yang belum terpasang dengan baik.

Setelah googling2 dan mencari tahu mengenai cara mengatasi error semacam ini, akhirnya mimin berhasil menemukan solusi yang dapat mem fix kan masalah ini, yakni dengan menggunakan perintah :

flutter config --android-sdk /path/to/android/sdk
flutter config --android-studio-dir /path/to/android/studio

flutter config --android-sdk "LOKASI SDK"
ex:
flutter config --android-sdk "D:\personal\software\sdkmanager\Appsendiri"

Alhamdulillah, setelah di setting sudah tidak error lagi, dan sekarang sudah berwarna kuning, sebab masih ada yang perlu dilakukan yakni pada android licenses nya seperti pada gambar dibawah ini


Selanjutnya yakni tuliskan perintah sesuai instruksi yang tertera pada android toolchain, guna memperbaiki licenses yang belum accepted, cukup tuliskan

flutter doctor --android-licenses

maka proses akan mulai berjalan, dan tunggu hingga prosesnya selesai, maka akan ada tampilan seperti di bawah ini

Jika tampilannya seperti pada gmabar di atas, berarti menandakan bahwa ada file yang tidak terload dengan baik / ada package license yang belum accepted, maka lakukan saja review license dengan mengketik y, maka license nya akan di review 


Ketik saja y untuk menyetujui semua package license yang not accepted tadi, sehingga nanti akan ada pesan All SDK package licenses accepted menandakan bahwa semua package licenses yang tadi belum accepted sekarang sudah di accepted, maka langkah terakhir yakni pengecekan dengan menggunakan perintah

flutter doctor -v

sehingga jika sesuai instruksi maka status android toolchain nya sudah berubah menjadi hijau saat ini, dan yang ada tanda panah merah itu yang baru saja kita lakukan

Cukup sampai disini pembahasan kali ini mengenai cara mengatasi android toolchain yang error dan warning, semoga ilmu ini bisa bermanfaat bagi yang lain yang sedang mengalami kendala yang serupa dengan mimin, dan jangan lupa untuk bersyukur karena sudah dapet solusinya yach haha...

Sekian dari mimin
See you next time

Wassalamu'alaikum warohmatullohi wabarokatuh

Sunday, February 24, 2019

Cara Memunculkan Kembali ADB Interface di Device Manager

Bismillahirrohmanirrohim
Assalamu'alaikum warohmatullohi wabarokatuh

Alhamdulillah, mimin kembali mau sharing mengenai pengalaman mimin dalam menangani soal bagaimana cara menginstall driver adb interface yang tidak terdeteksi di device manager / muncul tanda seru pada driver device yang terpasang.

Pada gambar diatas, sebenarnya adb mimin sudah terpasang, jadi mimin gambarkan keadaan sebelum mimin mencoba cara yang akan mimin jabarkan nanti. Awalnya Android Device yang paling atas itu tidak muncul, dan yang ada justru device android yang mimin hubungkan ke laptop malah bertanda seru, dan munculnya di dalam lingkaran merah pada gambar (disitu nama device mimin memang sudah tidak ada, sebab sudah fix troublenya hehe ...)

Berikut tips agar memunculkan kembali Android Device (ADB Interface) pada Device Manager :
1. Download terlebih dahulu Software yang akan kita butuhkan, yakni ADB Driver Installer. Sobat bisa mendownload nya disini, lalu pilih yang Automated Installation (Universal)
2. Khusus untuk pengguna Windows 8 dan 10, baik itu 32bit atau 64bit, ikuti langkah2 dibawah ini hingga selesai, dan untuk pengguna Windows Vista / XP / 7 baik itu 32bit atau 64bit, langsung saja menuju step 9
3. Klik icon windows, lalu buka change advanced start-up options
4. Setelah muncul pop-up Recovery, pada bagian Advanced Start-up klik Restart, maka perangkat kalian akan di restart. Lalu setelah hidup kembali pilih Troubleshoot
5. Pilih Advanced options
6. Pilih Startup Settings, lalu klik Restart

7. Setelah laptop hidup kembali, maka pilih no 7 atau tekan F7, untuk memilih Disable driver signature enforcement, setelah itu tekan Enter untuk masuk ke windows
8. Settingan ini akan kembali normal, setelah di restart.
9. Hubungkan device sobat ke laptop dengan menggunakan kabel USB

10. Lalu buka kembali ADB Driver Installer nya, dan buka file ADBDriverInstaller.exe nya
11. Setelah device terbaca, maka tekan Install
12. Maka akan muncul pop-up messege seperti dibawah ini, yang menanyakan apakah yakin ingin menginstall driver software yang tampil, maka pilih saja "Install this driver software anyway"
13. Tunggu hingga proses penginstallan selesai, maka driver yang dimaksud akan terinstall di laptop dengan baik, dimana yang awalnya bertanda seru, namun berubah menjadi bertanda ceklist
14. Setelah selesai, maka cek kembali device managernya, maka Insyaallah driver Android Device (ADB Interface) nya akan kembali muncul pada bagian atas device manager

Sekian sharing dari mimin, semoga bermanfaat bagi yang lain, dan menjadi solusi juga bagi yang mengalami hal yang serupa seperti yang mimin alami.

Wassalamu'alaikum warohmatullohi wabarokatuh

2 Cara Mendapatkan SHA1 pada Flutter

Bismillahirrohmanirrohim
Assalamu'alaikum warohmatullohi wabarokatuh

Alhamdulillah, mimin kembali bisa sharing dengan sobat studiyers semua, kali ini mimin ingin sharing tentang bagaimana cara mendapatkan key sha1 pada bahasa pemrograman dart, dimana mimin menggunakan framework flutter. Ada 2 cara yang mimin tahu mengenai cara mendapatkan key sha1 ini

CARA 1
1. Buka Project Flutter yang ingin dilihat key sha1 nya dengan editor yang digunakan, dimana mimin menggunakan VS Code
2. Klik tab Terminal, lalu ketikan seperti dibawah ini :
keytool -exportcert -list -v -alias androiddebugkey -keystore %USERPROFILE%\.android\debug.keystore
keytool -exportcert -list -v -alias androiddebugkey -keystore C:\Users\Dwiki\.android\debug.keystore 

3. Tekan Enter, lalu akan tampil disitu key sha1 nya beserta detail yang lainnya, dan jika ternyata belum berhasil / malah muncul pesan error, ex seperti ini ... (maka bisa gunakan cara 2)


CARA 2
1. Buka folder project yang ingin diketahui key sha1 nya, lalu buka folder dibawah ini :
<letakproject>\android
D:\...\IPCalc\android
2. Pada kolom letakproject/android, langsung ketikan cmd, sehingga akan langsung tampil command prompt, seperti pada gambar di bawah ini :



3. Lalu jalankan perintah ini :
gradlew signingReport
4. Tunggu hingga proses download nya selesai, maka pada endingnya akan menampilkan seperti key sha1 beserta detail yang lainnya seperti pada gambar dibawah ini

Semoga bisa bermanfaat untuk yang lain, dan bisa menjadi solusi juga bagi yang mengalami hal yang serupa seperti yang mimin alami

Wassalamu'alaikum warohmatullohi wabarokatuh 

Saturday, February 23, 2019

Cara Memunculkan debug.keystore di Users pada Flutter

Bismillahirrohmanirrohim
Assalamu'alaikum warohmatullohi wabarokatuh

Alhamdulillah, mimin kembali bisa sharing kepada sobat studiyers semua seputar pengalaman mimin dalam membuat program dengan framework flutter ini. Kali ini mimin mendapatkan kendala yakni file debug.keystore yang terdapat di
C:\Users\Dwiki\.android\debug.keystore
 menjadi hilang karena sebab laptop habis di inul. Sekejap bingung karena soal ini belum dipikirkan sebelumnya, tapi Alhamdulillah tak lama berselang, mimin teringat dengan salah satu step di android studio, dimana step ini bisa menjadi solusi untuk dapat kembali memunculkan file debug.keystore tersebut. Cara ialah :

1. Buka Android Studio nya
2. Buka salah satu project android studio yang ingin dibuat keystorenya
3. Buka tab side sebelah kanan yang bertulis Gradle Project

4. Lalu klik 2x pada tulisan signingReport, maka akan muncul proses dibawahnya
Setelah itu cek kembali folder .android pada Usersnya, Insyaallah file debug.keystore akan muncul kembali. Semoga bermanfaat untuk yang sobat studiyers semua, dan bisa menjadi solusi yang sedang mengalami hal yang serupa.

Wassalamu'alaikum warohmatullohi wabarokatuh

Friday, February 22, 2019

Cara Mengatasi Android License Status Unknown pada Flutter


Bismillahirrohmanirrohim
Assalamu'alaikum warohmatullohi wabarokatuh

Alhamdulillah, hari ini bisa berbagi lagi dengan sobat studiyers semua, di kesempatan kali ini mimin mau share seputar bagaimana cara mengatasi error tentang android license pada flutter, dimana ketika mimin sedang mencoba untuk melanjutkan project skripsi, namun apalah daya karena suatu sebab akhirnya mimin memutuskan inul laptop karena sebab yang tak terduga. And efeknya mimin install ulang lagi dah editor VS Code nya, dan ketika mau lanjutin projectnya lagi, muncul lah error ini, dimana awalnya mimin keder karena solusi yang biasanya jitu dalam mengatasi ini, tahunya malah kurang ampuh. Setelah sekian lama googling dan coba2, akhirnya mimin berhasil mengatasi error ini, kurang lebih pesan errornya seperti ini

Error message :
[!] Android toolchain - develop for Android devices (Android SDK 27.0.3)
✗ Android license status unknown.

Dan solusi dalam mengatasinya, seperti yang mimin lakukan yakni menurunkan versi JDK yang sudah terinstall pada laptop, karena waktu itu mimin sudah menginstall JDK 11, maka mimin pun mencoba menurunkan versinya ke JDK 8, dan Alhamdulillah error Android license berhasil diatasi


Semoga sharingan mimin ini bisa menjadi kebaikan yang lain dan solusi juga bagi yang sedang mengalami masalah yang sama

Wassalamu'alaikum warohmatullohi wabarokatuh

Sunday, February 17, 2019

Cara Mengatasi Your local changes to the following files would be overwritten by merge pada Flutter

Bismillahirrohmanirrohim
Assalamu'alaikum warohmatullohi wabarokatuh
Alhamdulillah, akhirnya mimin bisa kembali berbagi dengan kawan2 semua di blog yang Insyaallah mimin suka ini. Untuk postingan kali ini mimin ingin berbagi tentang pengalaman mimin dalam mempelajari bahasa pemrograman dart pada framework Flutter. Dan Editor yang mimin pakai yakni Visual Studio Code. Nah berbicara soal ngoding, terkadang ada aja kendala2 yang dihadapi bagi seorang programmer dalam merancang aplikasi yang ingin dibuatnya. Sesuai dengan judul postingan ini, mimin kali ini ingin memberikan solusi bagi yang mendapatkan warning yang sama seperti yang mimin dapatkan ketika mempelajari flutter ini. Dan pesan warning ini akan tampil ketika hendak ingin mengupgrade versi flutter yang terbaru.

Pesan Warning nya kurang lebih seperti ini nih :
Your local changes to the following files would be overwritten by merge: packages/flutter/lib/src/painting/text_style.dart
packages/flutter/lib/src/widgets/basic.dart

NAH NAH NAH
Alhamdulillah, solusinya cukup simple ajah, yakni cari kedua file yang ditampilkan pada pesan warning tadi di dalam folder flutter. Nah ketika sudah ketemu, hapus file2 tersebut / pindahkan file2 tersebut ke tempat lain untuk sekedar backup saja. Setelah yakin kedua file tersebut telah hilang dari dalam foldernya masing2, baru deh coba di jalankan kembali fungsi upgrade flutternya, Insyaallah sudah bisa kembali di upgrade lagi flutter nya ke versi yang terbaru.

Thursday, October 5, 2017

Polymorphism

Assalamu'alaikum

Selamat pagi sobat My Study semua, bagaimana kabarnya hari ini ? semoga dalam keadaan baik-baik saja yahhh...

Sudah lama tidak memposting lagi, dan kali ini mimin ingin kembali posting mengenai Polymorphism pada Pemrograman Berbasis Objek Java, dan selain itu postingan ini juga ditujukan untuk menyelesaikan tugas kuliah mimin dan kelompok juga sih hehe...

Ok, mari kita masuk ke dalam materinya yahhh, sebelum kita bahas terlalu mendalam, hal pertama yang harus dipahami ialah

apa itu polymorphism ?
dan ada apa saja di dalam polymorphism ?

Karakteristik dari polymorphism yaitu memungkinkan suatu objek dapat memiliki berbagai bentuk atau banyak bentuk. Bentuk dari objek ini bisa sebagai Object dari Classnya sendiri atau Object dari
superClassnya.
atau
suatu aksi yang memungkinkan pemrogram menyampaikan pesan tertentu keluar dari hirarki obyeknya, dimana obyek yang berbeda memberikan tanggapan/respon terhadap pesan yang sama sesuai dengan sifat masing-masing obyek.

Contoh code Program Method Overriding :
DATA HOSTED WITH ♥ BY PASTEBIN.COM - DOWNLOAD RAW - SEE ORIGINAL
  1. //Buat Class Binatang
  2. public class Binatang {
  3.  
  4.     public void tampilSuara(){
  5.      //membuat method tampil suara ()
  6.     System.out.println("Tampil Suara Binatang ");
  7.      //statement  dari perilaku yaitu menampilkan pesan text
  8.       }
  9. }
  10. //Buat Class Anjing
  11. public class Anjing extends Binatang {
  12.    
  13.     public void tampilSuara(){
  14.         //membuat method tampilSuara() yang sama dengan class Binatang
  15.     System.out.println("Suara Anjing : Guk Guk Guk ");
  16.        //statement  dari perilaku yaitu menampilkan pesan text
  17.        // berbeda dari class binatang
  18.    }
  19. }
  20. //Buat Class Kucing
  21. public class Kucing extends Binatang
  22. {
  23.   public void tampilSuara(){
  24.      //membuat method tampilSuara() yang sama dengan class Binatang
  25.     System.out.println("Suara Kucing : Meow Meow");
  26.      //statement  dari perilaku yaitu menampilkan pesan text
  27.        // berbeda dari class binatang
  28.        
  29.    }
  30.    
  31. }
  32. //Main Class
  33. public class Cetak {  
  34.     //Main Class
  35.     public static void main(String[] okedroid) {  //method void main utama
  36.    Anjing object = new Anjing();
  37.    Kucing object2 = new Kucing();
  38.    object.tampilSuara(); //memanggil method sama namun dengan hasil berbeda
  39.    object2.tampilSuara(); //memanggil method sama namun dengan hasil berbeda
  40.     }
  41. }



Output :

Suara Anjing : Guk Guk Guk 
Suara Kucing : Meow Meow


Kemampuan method sama namun dengan paramater yang berbeda-beda ,ini juga bisa disebut method Overloading. Method ini juga menganut konsep dari Polymorphism.

Contoh code Program Method Overloading :
DATA HOSTED WITH ♥ BY PASTEBIN.COM - DOWNLOAD RAW - SEE ORIGINAL
  1. public class Cetak {  
  2.     //Main Class
  3.    
  4.     static double maxNum(double a, double b){
  5.         //method sama parameter berbeda
  6.         //tipe data double
  7.         if (> b){
  8.             return a;
  9.         }
  10.         else {
  11.             return b;
  12.         }
  13.     }
  14.     static int maxNum(int a ,int b){
  15.         //method sama parameter berbeda
  16.         //tipe data integer
  17.         if (> b ){
  18.             return a;
  19.         }
  20.         else {
  21.             return b;
  22.         }
  23.     }
  24.     public static void main(String[] okedroid) {  //method void main utama
  25.         System.out.println (maxNum(9,20));
  26.         System.out.println(maxNum(3.16,7.88));
  27.         //hasil akan tampil sesuai dengan tipe data parameternya
  28.         // 9,20 = tipe data integer
  29.         // 3.16,7.88 = tipe data double      
  30.  
  31.     }
  32. }



Output :
20
7.88

Contoh code lain yang bisa kita gunakan , dengan menggunakan  konsep Polymorphism.

Berikut codenya :



DATA HOSTED WITH ♥ BY PASTEBIN.COM - DOWNLOAD RAW - SEE ORIGINAL
  1. Anak.java //Sub Class
  2. public class Anak extends OrangTua{
  3.  
  4.     @Override
  5.     public void bisaMakan() {
  6.      System.out.println("Anak Bisa Makan !");
  7.      
  8.      //mengoverride method dari class Orangtua (Super Class)
  9.        
  10.     }
  11.  
  12.     }
  13.  
  14. OrangTua.java //Super Class
  15. public class OrangTua {
  16.    
  17.   String makan = "OrangTua Bisa Makan !";
  18.    
  19.     public void bisaMakan(){
  20.  
  21.         System.out.println(makan);
  22.        
  23.         //mendefinisikan method dari class OrangTua (Super Class)
  24.        
  25.     }
  26.  
  27. }
  28.  
  29.  
  30. Latihan.java //Main Class
  31.  
  32. public class Latihan {
  33.  
  34.     public static void main(String[] okedroid) {
  35.         {
  36.  
  37.      
  38.        OrangTua anak = new Anak();
  39.        //membuat objek dengan class OrangTua(Super Class)
  40.        //namun dengan Constructor Anak (Sub Class)
  41.      
  42.        anak.bisaMakan();
  43.        //memanggil method bisa makan  
  44.       //value yang tampil adalah
  45.      // value di definisikan di class Anak (Sub Class)
  46.        
  47.         }
  48.    
  49.  
  50.     }
  51.    
  52.  
  53. }
Output:

Anak Bisa Makan !

 Penjelasan : 

Seperti yang kalian lihat pada code diatas , kita dapat membuat objek dengan class OrangTua (Super class ) ,namun dengan Constructor(Anak()) dari class Anak (Sub Class). Nah , nilai atau value akan secara otomatis tampil ,adalah nilai atau value yang berada di class Anak. Yaitu :  Anak Bisa Makan !.


Nah , bagaimana caranya jika kita ingin mengakses method yang bukan dari hasil overriding(override) dari class OrangTua ?. Untuk itu , kita perlu mengkonversikan class dari objek yang menggunakan konsep Polymorphism.

Berikut contoh codenya:

DATA HOSTED WITH ♥ BY PASTEBIN.COM - DOWNLOAD RAW - SEE ORIGINAL
  1. Anak.java
  2. public class Anak extends OrangTua
  3. {
  4.  
  5.     public void anakLagiMakan(){
  6.         //method dari class Anak yang bukan override
  7.          
  8.         System.out.println("Anak Lagi Makan !");
  9.        
  10.     }
  11.     }
  12.    
  13. Latihan.java //Main Class
  14.  
  15. public class Latihan {
  16.  
  17.     public static void main(String[] okedroid) {
  18.         {
  19.  
  20.        OrangTua anak = new Anak();
  21.        //membuat objek dengan class OrangTua
  22.        //dengan constructor anak
  23.      
  24.      
  25.        Anak konversianak = (Anak)anak;
  26.        //membuat objek dan mengkonversi objek dari class Anak
  27.        //agar dapat mengakses method yang bukan override
  28.        
  29.        konversianak.anakLagiMakan();
  30.        
  31.        //mengakses method yang ada di class Anak
  32.        //yang bukan merupakan overriding atau override
  33.         }
  34.    
  35.     }

Output:

 Penjelasan :

Pada code diatas , kita dapat mengetahui bahwa  ,untuk mengakses method yang bukan hasil overriding(override) dari class OrangTua, kita dapat mengkonversikan class dari objek dengan menggunakan syntax.  ClassChild objekchild = (ClassChild)objekparent;  . 


Sumber :
https://hanakirei91.wordpress.com/2010/04/14/pengertian-polymorphisme-inheritance-dan-enkapsulasi/
http://www.okedroid.com/2016/06/belajar-polymorphism-overriding-overloading-di-bahasa-pemrograman-java.html