Halo semuanya. Di postingan kali ini, kita akan menginstall package react-native-bluetooth-escpos-printer ke project kita. Package ini digunakan untuk menghubungkan aplikasi android dengan printer bluetooth.
Di posting ini, saya menggunakan react native versi 0.67.3. React native nya di compile menggunakan komputer dengan OS Windows 10. Package react-native-bluetooth-escpos-printer yang digunakan adalah versi 0.0.5. Walaupun di postingan ini belum ada hubungannya dengan printer, namun printer yang saya gunakan adalah printer thermal merk IWARE dengan seri ZJ-5809.
Berikut adalah langkah untuk menginstall package react-native-bluetooth-escpos-printer:
1.) Install package, menggunakan command berikut
npm install react-native-bluetooth-escpos-printer --save
2.) Link plugin dengan project kita, menggunakan command berikut
react-native link react-native-bluetooth-escpos-printer
Sebenarnya, kalau berdasarkan official documentationnya, instalasi selesai disini. Namun pada kasus saya, setelah melakukan kedua langkah di atas, saya masih belum bisa mengcompile coding. Ketika mengcompile, akan terdapat error Could not resolve all dependencies for configuration ':react-native-bluetooth-printer:classpath'.
Dalam kasus saya, untuk menangani hal ini, saya perlu menyamakan versi buildtools, sdk, dan gradle antara yang ada di dalam package react-native-bluetooth-escpos-printer dengan yang digunakan di project saya. Sehingga ada tambahan langkahnya, yaitu:
3.) Menyamakan versi buildtools, sdk, dan gradle antara package dengan project dan mengubah http jadi https
Untuk melihat versi yang digunakan di project kita, lihat di file:
android/build.gradle
Sedangkan untuk melihat versi yang digunakan package react-native-bluetooth-escpos-printer, lihat di file:
node_modules/react-native-bluetooth-escpos-printer/android/build.gradle
Sama kan versi yang ada di variabel compileSdkVersion, buildToolsVersion, minSdkVersion, targetSdkVersion, dan gradle (yang ada dengan tulisan classpath("com.android.tools.build:gradle:x.x.x")). Yang disesuaikan itu yang di package ya, bukan yang di project kita. Dalam kasus saya, project saya menggunakan compileSdkVersion 31, buildToolsVersion 31.0.0, minSdkVersion 21, targetSdkVesion 31, dan gradle 4.2.2.
Selain itu, ubah juga url http menjadi https yang ada di file node_modules/react-native-bluetooth-escpos-printer/android/build.gradle (pada bagian jcenter dan maven, dengan total 4 url).
Setelah melakukan langkah ketiga, kemudian melakukan compile coding, coding berhasil di compile tanpa ada error. Memang sih, menurut saya pun, penyelesaian dengan mengubah file di node_modules memang kurang ideal sebenarnya. Namun dalam kasus ini, saya sudah mencoba beberapa package lainnya, dan hampir semuanya juga terdapat error dan tidak bisa di compile langsung. Karena itu, saya beranggapan jika memang package ini "mungkin" sudah jarang di maintenance lagi, sehingga perlu ada penyesuaian sendiri dari kita untuk mengupdate package tersebut.
Sekian tentang cara install package react-native-bluetooth-escpos-printer. Untuk cara pakainya bisa lihat di postingan React Native - Cara Print dengan Package React Native Bluetooth Escpos Printer. Semoga postingan ini membantu bagi kalian yang mengalami hal sama seperti saya. Selamat membaca dan mencoba.
Salam Share,
Funtastic Share
Komentar
Posting Komentar