Advertisement
Guest User

mapp

a guest
Sep 18th, 2018
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Kotlin 2.78 KB | None | 0 0
  1. package com.example.juho.gpslab1
  2.  
  3. import android.content.Context
  4. import android.content.pm.PackageManager
  5. import android.location.Location
  6. import android.location.LocationListener
  7. import android.location.LocationManager
  8. import android.os.Build
  9. import android.support.v7.app.AppCompatActivity
  10. import android.os.Bundle
  11. import android.preference.PreferenceManager
  12. import android.support.v4.app.ActivityCompat
  13. import android.support.v4.content.ContextCompat
  14. import android.widget.Toast
  15. import kotlinx.android.synthetic.main.activity_main.*
  16. import org.osmdroid.config.Configuration
  17. import org.osmdroid.tileprovider.tilesource.TileSourceFactory
  18. import org.osmdroid.views.overlay.mylocation.MyLocationNewOverlay
  19.  
  20. class MainActivity : AppCompatActivity(), LocationListener {
  21.  
  22.  
  23.     override fun onCreate(savedInstanceState: Bundle?) {
  24.         super.onCreate(savedInstanceState)
  25.  
  26.         val ctx = applicationContext
  27.  
  28.         Configuration.getInstance().load(ctx,
  29.                 PreferenceManager.getDefaultSharedPreferences(ctx))
  30.         setContentView(R.layout.activity_main)
  31.  
  32.         val myLocation = MyLocationNewOverlay(map)
  33.         myLocation.enableMyLocation()
  34.         myLocation.enableFollowLocation()
  35.         map.overlays.add(myLocation)
  36.  
  37.         map.setTileSource(TileSourceFactory.MAPNIK)
  38.         map.setBuiltInZoomControls(true)
  39.         map.setMultiTouchControls(true)
  40.  
  41.         map.controller.setZoom(13.0)
  42.  
  43.         val lm = getSystemService(Context.LOCATION_SERVICE) as
  44.                 LocationManager
  45.  
  46.         if((Build.VERSION.SDK_INT >= 23 && ContextCompat.checkSelfPermission(this,
  47.                         android.Manifest.permission.ACCESS_FINE_LOCATION) !=
  48.                 PackageManager.PERMISSION_GRANTED)) {
  49.             ActivityCompat.requestPermissions(this,
  50.                     arrayOf(android.Manifest.permission.ACCESS_FINE_LOCATION), 0)
  51.         }
  52.  
  53.        lm.requestLocationUpdates(
  54.                LocationManager.NETWORK_PROVIDER,
  55.                60 * 1000,
  56.                50f,
  57.                this)
  58.  
  59.    }
  60.  
  61.     override fun onLocationChanged(location: Location?) {
  62.         Toast.makeText(this, "latitude: ${location?.latitude?:"n/a"} and longitude: ${location!!.longitude}", Toast.LENGTH_LONG).show()
  63.  
  64.     }
  65.  
  66.     override fun onStatusChanged(provider: String?, status: Int, extras: Bundle?) {
  67.         TODO("not implemented") //To change body of created functions use File | Settings | File Templates.
  68.     }
  69.  
  70.     override fun onProviderEnabled(provider: String?) {
  71.         TODO("not implemented") //To change body of created functions use File | Settings | File Templates.
  72.     }
  73.  
  74.     override fun onProviderDisabled(provider: String?) {
  75.         TODO("not implemented") //To change body of created functions use File | Settings | File Templates.
  76.     }
  77.  
  78.  
  79.  
  80. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement