Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.example.juho.gpslab1
- import android.content.Context
- import android.content.pm.PackageManager
- import android.location.Location
- import android.location.LocationListener
- import android.location.LocationManager
- import android.os.Build
- import android.support.v7.app.AppCompatActivity
- import android.os.Bundle
- import android.preference.PreferenceManager
- import android.support.v4.app.ActivityCompat
- import android.support.v4.content.ContextCompat
- import android.widget.Toast
- import kotlinx.android.synthetic.main.activity_main.*
- import org.osmdroid.config.Configuration
- import org.osmdroid.tileprovider.tilesource.TileSourceFactory
- import org.osmdroid.views.overlay.mylocation.MyLocationNewOverlay
- class MainActivity : AppCompatActivity(), LocationListener {
- override fun onCreate(savedInstanceState: Bundle?) {
- super.onCreate(savedInstanceState)
- val ctx = applicationContext
- Configuration.getInstance().load(ctx,
- PreferenceManager.getDefaultSharedPreferences(ctx))
- setContentView(R.layout.activity_main)
- val myLocation = MyLocationNewOverlay(map)
- myLocation.enableMyLocation()
- myLocation.enableFollowLocation()
- map.overlays.add(myLocation)
- map.setTileSource(TileSourceFactory.MAPNIK)
- map.setBuiltInZoomControls(true)
- map.setMultiTouchControls(true)
- map.controller.setZoom(13.0)
- val lm = getSystemService(Context.LOCATION_SERVICE) as
- LocationManager
- if((Build.VERSION.SDK_INT >= 23 && ContextCompat.checkSelfPermission(this,
- android.Manifest.permission.ACCESS_FINE_LOCATION) !=
- PackageManager.PERMISSION_GRANTED)) {
- ActivityCompat.requestPermissions(this,
- arrayOf(android.Manifest.permission.ACCESS_FINE_LOCATION), 0)
- }
- lm.requestLocationUpdates(
- LocationManager.NETWORK_PROVIDER,
- 60 * 1000,
- 50f,
- this)
- }
- override fun onLocationChanged(location: Location?) {
- Toast.makeText(this, "latitude: ${location?.latitude?:"n/a"} and longitude: ${location!!.longitude}", Toast.LENGTH_LONG).show()
- }
- override fun onStatusChanged(provider: String?, status: Int, extras: Bundle?) {
- TODO("not implemented") //To change body of created functions use File | Settings | File Templates.
- }
- override fun onProviderEnabled(provider: String?) {
- TODO("not implemented") //To change body of created functions use File | Settings | File Templates.
- }
- override fun onProviderDisabled(provider: String?) {
- TODO("not implemented") //To change body of created functions use File | Settings | File Templates.
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement