<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: vasco</title>
    <description>The latest articles on Forem by vasco (@krisisxxxxxx).</description>
    <link>https://forem.com/krisisxxxxxx</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F333006%2Fb56d6a44-29ad-48f0-aa26-91581d592099.jpg</url>
      <title>Forem: vasco</title>
      <link>https://forem.com/krisisxxxxxx</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/krisisxxxxxx"/>
    <language>en</language>
    <item>
      <title>Membuat Kiblat dengan React Native</title>
      <dc:creator>vasco</dc:creator>
      <pubDate>Mon, 31 Aug 2020 08:58:56 +0000</pubDate>
      <link>https://forem.com/krisisxxxxxx/membuat-kiblat-dengan-react-native-55n3</link>
      <guid>https://forem.com/krisisxxxxxx/membuat-kiblat-dengan-react-native-55n3</guid>
      <description>&lt;p&gt;Halo semua nya. Kembali lagi sama krisna&lt;/p&gt;

&lt;p&gt;Pada kesempatan kali ini kita akan belajar membuat aplikasi di mobile atau HP atau smartphone yaitu membuat aplikasi kompas kiblat. Pembuatan aplikasi ini menggunakan yang namanya React Native. React Native ini adalah sebuah framework untuk menghasilkan sebuah aplikasi pada mobile. Apa itu framework, menurut saya framework itu seperti kerangka untuk kita menciptakan suatu program, ada framework untuk program di mobile atau juga untuk sebuah website dll. React Native menggunakan pemrograman Javascript. Selengkap nya kalian bisa lihat-lihat disini &lt;a href="https://reactnative.dev/"&gt;documentnya&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Untuk bisa membangun sebuah aplikasi menggunakan react-native ada beberapa syarat yang harus kalian lakukan terlebih dahulu. Maksudnya ibarat akan masak kalian perlu alat-alat untuk memasaknya kan jadi seperti itu.&lt;br&gt;
Syarat-syarat yang perlu kalian lakukan bisa dilihat disini &lt;a href="https://reactnative.dev/docs/environment-setup"&gt;Setting up the development environment&lt;/a&gt;.&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--BS-dkSY0--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/9077x3ymtiq7wdlvc91k.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--BS-dkSY0--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/9077x3ymtiq7wdlvc91k.png" alt="Setting up the development environment"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Untuk jenis React Native nya pilih yang CLI&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--kyZR92DH--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/3uwhrp1bwlyn8nyqvpex.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--kyZR92DH--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/3uwhrp1bwlyn8nyqvpex.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;br&gt;
Kemudian sesuaikan jenis komputer/laptop apa yang kamu gunakan mac atau window, untuk saat ini target aplikasi nya kita pilih membuat aplikasi Android&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--uXYo0aDG--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/kf6l99ripcbbjbgcn9z8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--uXYo0aDG--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/kf6l99ripcbbjbgcn9z8.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Kemudian kalian langsung ikuti saja petunjuk disitu untuk bisa membuat aplikasi react native. Kamu juga bisa googling pastiny untuk tahap ini.&lt;br&gt;
Mari buat aplikasi kompas kiblat menggunakan React Native.&lt;/p&gt;

&lt;p&gt;Pertama mari kita init sebuah projek baru dengan perintah sebagai berikut.&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;&lt;code&gt;npx react-native init KompasKiblat&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--5jkKhTOP--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/98efnjtttz71mwrlkoj3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--5jkKhTOP--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/98efnjtttz71mwrlkoj3.png" alt="npx react-native init KompasKiblat"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Bila sudah selesai akan ada folder baru bernama KompasKiblat yang tadi sudah di init.&lt;br&gt;
Untuk menjalankan programnya kamu bisa menggunakan emulator android yang sudah di terinstall atau bisa juga menggunakan HP android. Aku disini pake HP android yang di colok ke laptop, pastikan setting HP Debug nya dinyalakan pada menu setting developer. Bisa googling juga &lt;a href="https://www.google.com/search?q=cara+debug+mode+hp+android&amp;amp;oq=cara+debug+mode+hp+android"&gt;debug mode&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Untuk cek apakah HP sudah terhubung dengan laptop bisa dengan command&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;&lt;code&gt;adb devices&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--rMSXjbAM--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/zlnoic69zi4fsmvxmmz7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--rMSXjbAM--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/zlnoic69zi4fsmvxmmz7.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Mari kita jalankan aplikasi. Masuk kedalam foldernya pastikan kamu sudah ada di dalam folder project&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Mhvt-4A_--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/0gfpye04hvl5f6pjdwoa.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Mhvt-4A_--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/0gfpye04hvl5f6pjdwoa.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Lalu jalankan command berikut&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;&lt;code&gt;npx react-native run-android&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--O-jI2Ju7--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/r17qw8dh56m8pywhkvb7.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--O-jI2Ju7--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/r17qw8dh56m8pywhkvb7.jpeg" alt="Alt Text"&gt;&lt;/a&gt;&lt;br&gt;
Sekarang buka folder project kita dengan text editor yang kamu suka, disini aku pake &lt;a href="https://code.visualstudio.com/"&gt;Visual Code Studio&lt;/a&gt; buat ngetik-ngetik kode nya.&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--spnQK192--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/yv1zwafcjxs9isdal3p2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--spnQK192--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/yv1zwafcjxs9isdal3p2.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h1&gt;
  
  
  Install Kompas
&lt;/h1&gt;

&lt;p&gt;Sekarang kita akan menggunakan library ini &lt;a href="https://github.com/firofame/react-native-compass-heading"&gt;react-native-compass-heading&lt;/a&gt; untuk kompas nya.&lt;br&gt;
Kita install library nya di projek kita. Baik nya kita matikan dulu server React Native kita nya dengan &lt;code&gt;ctrl+c&lt;/code&gt;&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--uk6chFXl--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/0sv4i4fkrh48plhcfqj0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--uk6chFXl--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/0sv4i4fkrh48plhcfqj0.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;br&gt;
tips kita install library nya melalui terminal di tempat Visual Code, cari cara buka terminalnya.&lt;/p&gt;

&lt;p&gt;Kita install library dengan command berikut:&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;&lt;code&gt;npm install react-native-compass-heading&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--e3hlM2e9--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/tca748ufwgkzc4qaumuf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--e3hlM2e9--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/tca748ufwgkzc4qaumuf.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;br&gt;
Setelah berhasil di install, kita update kode yang di App.js &lt;br&gt;
&lt;/p&gt;
&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;


&lt;p&gt;Kamu juga perlu memasukan gambar untuk kompasnya lalu simpat di folder projek. Gambar kompas download &lt;a href="https://raw.githubusercontent.com/firofame/react-native-compass-heading/master/Example/compass.png"&gt;disini&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Coba jalankan lagi projek RN kita&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;&lt;code&gt;npx react-native run-android&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--ZdrsewOE--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/3div8ec05w4ycbz7zp5g.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--ZdrsewOE--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/3div8ec05w4ycbz7zp5g.gif" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Sekarang kompas kita sudah berhasil jalan.&lt;br&gt;
Bagaimana kode ini berjalan, jadi pada smartphone ini mempunyai sensor Gyroscope dengan Accelerometer. Sensor ini memberikan nilai angka 0 derajat sampai 360 derajat. Gambar yang ada di aplikasi menjadi animasi dan menjadi patokan kalau 360 itu adalah utara.&lt;/p&gt;

&lt;p&gt;Langkah selanjutnya menentukan lokasi kita untuk dihitung posisinya mengarah ke arah kiblat. Lokasi ini yaitu menggunakan latitude dan longitude.&lt;/p&gt;

&lt;p&gt;kita install library untuk mendapatkan latitude dan longitude.&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;&lt;code&gt;npm install @react-native-community/geolocation --save&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;setelah itu tambah juga kode ini ke dalam AndroidManifest.xml untuk izin lokasi&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;// KomplasKiblat/android/app/src/main/AndroidManifest.xml
&amp;lt;uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /&amp;gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;Setelah itu kita akan membutuhkan gambar panah yang selalu mengarah ke kiblat kamu bisa download disini. Masukan ke dalam folder projek kita&lt;/p&gt;

&lt;p&gt;Sekarang kita update kode kita&lt;br&gt;
&lt;/p&gt;
&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;



&lt;p&gt;Coba jalankan lagi projek RN kita&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;&lt;code&gt;npx react-native run-android&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--mxONWohu--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/tuzwvqqp3bib7265pmg2.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--mxONWohu--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/tuzwvqqp3bib7265pmg2.jpeg" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Lalu kita buat fungsi untuk mengambil arah kiblat kita &lt;br&gt;
Fungsi ini namanya bearing. Untuk selengkapnya kamu bisa belajar &lt;a href="http://www.movable-type.co.uk/scripts/latlong.html"&gt;disini&lt;/a&gt;. &lt;/p&gt;

&lt;p&gt;Mari kita update kode kita &lt;br&gt;
&lt;/p&gt;
&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;


&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--99OMN2qV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/2einx8l6kej5m7oo610f.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--99OMN2qV--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/2einx8l6kej5m7oo610f.jpeg" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Selamat kamu berhasil membuat kompas.&lt;br&gt;
Kamu bisa liat projek folder file ini disini &lt;a href="https://github.com/krisnailafat/KompasKiblat"&gt;github.com/krisnailafat/KompasKiblat&lt;/a&gt;. Terimakasih sudah mencoba.&lt;/p&gt;

&lt;p&gt;Kalau ada pertanyaan kamu bisa kontak saja :)&lt;br&gt;
Kalau boleh kamu bisa bantu kirim dukungan buat team ini &lt;a href="https://saweria.co/krisnailafat"&gt;saweria.co/krisnailafat&lt;/a&gt;&lt;br&gt;
&lt;em&gt;Ig : krisnailafat&lt;/em&gt;&lt;/p&gt;

</description>
      <category>reactnative</category>
      <category>compass</category>
      <category>kiblat</category>
      <category>indonesia</category>
    </item>
  </channel>
</rss>
