#Aplikasi kompas dengan memakai android studio
Ok pada artikel kali ini saya akan menciptakan aplikasi kompas dengan memakai tools android studio. kurang lebih tampilan aplikasinya yaitu menyerupai gambar berikut ini :
Salah satu komponen pada Android yang sanggup dikembangkan yaitu bab sensor. Beberapa sensor yang ada di perangkat Android umunya yaitu Accelerometer, Light, Orientation, Prioximity, Temperature, Gyroscope, Sound, Magnetic, dan Pressure. Namun dalam satu perangkat sanggup saja tidak mempunyai semua sensor. Untuk mendeteksi sensor apa saja yang terdapat pada perangkat anda sanggup memakai aplikasi yang tersedia di Play Store.
Untuk aplikasi memakai sensor kali ini yang ingin saya kembangkan yaitu menggunakan sensor magnetic dalam menciptakan kompas.
Pertama-tama siapkan gambar kompas yang akan digunakan. Bisa mencari di internet
atau menciptakan sendiri. Lebih baik jikalau gambar dalam bentuk *.png semoga sanggup memiliki
background yang transparan.
Untuk antarmuka aplikasi, saya akan memakai Textview dan widget ImageView.
Untuk TextView sendiri nantinya berfungsi untuk menunjukkan berapa nilai heading daring kompas, sementara ImageView berperan sebagai arah navigasi kompas dengan memakai sebuah gambar navigasi. Aplikasi ini nanti berjalan memakai Android Light Sensor.
Dalam proses pembuatan aplikasinya silahkan ikuti langkah-langkah berikut ini:
#1 Membuat projek Baru
saya kira untuk pembuatan projek gres ini sangat gampang sekali, namun jikalau kalian masih resah silahkan ikuti langkah berikut ini :
- Buka android studio kemudian buatlah projek gres dengan cara klik File==>New==>New Project
- pada Aplication Name berinama kompas==>lalu klik next
- pilih minimum SDK==>klik Next
- pilih Empty Activity==>klik Next==>Finish
- pastikan struktur projeknya menyerupai berikut ini
#2 Script Program
sehabis proses pembuatan projek gres diatas sudah kalian lakukan dengan benar, maka selanjutnya silahkan kalian Copy script berikut ini :
- Pada file MainActivity.j4va silahkan ganti dengan script berikut ini
package com.example.smart.kompasd; import android.os.Bundle; import android.support.design.widget.FloatingActionButton; import android.support.design.widget.Snackbar; import android.support.v7.app.AppCompatActivity; import android.support.v7.widget.Toolbar; import android.view.View; import android.view.Menu; import android.view.MenuItem; import android.app.Activity; import android.hardware.Sensor; import android.hardware.SensorEvent; import android.hardware.SensorEventListener; import android.hardware.SensorManager; import android.os.Bundle; import android.view.animation.Animation; import android.view.animation.RotateAnimation; import android.widget.ImageView; import android.widget.TextView; public class MainActivity extends Activity implements SensorEventListener { // variabel untuk gambar kompas yang dipakai private ImageView image; // variabel untuk menangkap derajat perputaran private float currentDegree = 0f; // device sensor manager private SensorManager mSensorManager; TextView tvHeading; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // mengintegrasikan gambar dari file xml image = (ImageView) findViewById(R.id.imageViewCompass); // variabel ini akan menagkap derajat kemana perangkat menghadap tvHeading = (TextView) findViewById(R.id.tvHeading); // initialize sensor android apakah kompatible mSensorManager = (SensorManager) getSystemService(SENSOR_SERVICE); } @Override protected void onResume() { super.onResume(); mSensorManager.registerListener(this, mSensorManager.getDefaultSensor(Sensor.TYPE_ORIENTATION), SensorManager.SENSOR_DELAY_GAME); } @Override protected void onPause() { super.onPause(); // to stop the listener and save battery mSensorManager.unregisterListener(this); } @Override public void onSensorChanged(SensorEvent event) { // // mendapat derajat sumbu z float degree = Math.round(event.values[0]); tvHeading.setText("Heading " + Float.toString(degree) + "°"); // menciptakan animasi rotasi RotateAnimation ra = new RotateAnimation( currentDegree, -degree, Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF, 0.5f); // how long the animation will take place ra.setDuration(60); // set the animation after the end of the reservation status ra.setFillAfter(true); // memulai animasi image.startAnimation(ra); currentDegree = -degree; } @Override public void onAccuracyChanged(Sensor sensor, int accuracy) { // not in use } }
- pada file content_main.xml gantilah dengan script berikut ini (jika file content_main.xml tidak ada silahkan kau letakan di file activity_main.xml tidak masalah)
(pada script yang berwarna merah sesuakan dengan paket projek kalian masing-masing disaat menciptakan projek gres tadi jangan di rubah)
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" app:layout_behavior="@string/appbar_scrolling_view_behavior" tools:context="com.example.smart.kompasd.MainActivity" tools:showIn="@layout/activity_main"> <ImageView android:layout_width="wrap_content" android:layout_height="120dp" android:src="@drawable/prompt" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" android:layout_alignTop="@+id/tvHeading" android:layout_marginTop="-62dp" android:id="@+id/imageView" /> <TextView android:id="@+id/tvHeading" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:layout_marginBottom="40dp" android:layout_marginTop="40dp" android:text="Heading 0" android:textColor="#ffffff" android:textSize="28dp" /> <ImageView android:id="@+id/imageViewCompass" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/kompas" android:layout_centerVertical="true" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" android:layout_marginRight="17dp" android:layout_marginLeft="17dp" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:textAppearance="?android:attr/textAppearanceMedium" android:id="@+id/textView" android:textAlignment="center" android:layout_alignParentBottom="true" android:layout_centerHorizontal="true" android:layout_marginBottom="20dp" android:textColor="#acacac" android:textSize="14dp" /> </RelativeLayout>
- kemudian d0wnl0adlah kedua gambar berikut ini
- letakkan kedua gambar tersebut kedalam folder LocalDisk C==>Users==>NamaKomputerKamu==>androidStudioProject==>kompas==>app==>src==>main==>res==>drawable
- Pada file AndroidManifest.xml pastikan sesuai menyerupai script berikut ini
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.smart.kompasd"> <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:supportsRtl="true" android:theme="@style/AppTheme"> <activity android:name=".MainActivity" android:label="@string/app_name" android:theme="@style/AppTheme.NoActionBar"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> </manifest>
jikalau semua sudah tamat kalian lakukan, maka selanjutnya silahkan projeknya kau jalankan.
hasil output diatas saya jalankan dengan emulator HP Android saya. selamat mencoba dan sukses.
hasil output diatas saya jalankan dengan emulator HP Android saya. selamat mencoba dan sukses.
#Download jadwal lengkap
Klik DISINI
Cara d0wnl0adnya pada pojok kanan atas, tunggu 5 detik==>klik skip