Location
Location
phone_tracker
import android.Manifest
import android.content.Intent
import android.content.pm.PackageManager
import android.location.Location
import android.os.Bundle
import android.provider.Settings
import android.util.Log
import android.widget.Button
import android.widget.TextView
import android.widget.Toast
import androidx.appcompat.app.AppCompatActivity
import androidx.core.app.ActivityCompat
import com.google.android.gms.location.*
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
locationText = findViewById(R.id.locationText)
fusedLocationClient = LocationServices.getFusedLocationProviderClient(this)
getLocationBtn.setOnClickListener {
checkLocationPermission()
if (ActivityCompat.checkSelfPermission(
this,
Manifest.permission.ACCESS_FINE_LOCATION
) != PackageManager.PERMISSION_GRANTED
){
// Request permissions
ActivityCompat.requestPermissions(
this,
arrayOf(
Manifest.permission.ACCESS_FINE_LOCATION,
Manifest.permission.ACCESS_COARSE_LOCATION
),
LOCATION_PERMISSION_REQUEST_CODE
} else {
// Permissions granted
checkLocationSettings()
.setPriority(Priority.PRIORITY_HIGH_ACCURACY)
.addLocationRequest(locationRequest)
.setAlwaysShow(true)
task.addOnSuccessListener {
getCurrentLocation()
task.addOnFailureListener {
startActivity(intent)
if (ActivityCompat.checkSelfPermission(
this,
Manifest.permission.ACCESS_FINE_LOCATION
) != PackageManager.PERMISSION_GRANTED
){
return
fusedLocationClient.getCurrentLocation(Priority.PRIORITY_HIGH_ACCURACY, null)
if (location != null) {
locationText.text = result
Log.d(TAG, result)
} else {
}
}.addOnFailureListener {
requestCode: Int,
grantResults: IntArray
){
grantResults.isNotEmpty() &&
grantResults[0] == PackageManager.PERMISSION_GRANTED
){
checkLocationSettings()
} else {
}
package com.example.phone_tracker
import android.Manifest
import android.content.Intent
import android.content.pm.PackageManager
import android.location.Location
import android.os.Bundle
import android.provider.Settings
import android.util.Log
import android.widget.Button
import android.widget.TextView
import android.widget.Toast
import androidx.appcompat.app.AppCompatActivity
import androidx.core.app.ActivityCompat
import com.google.android.gms.location.*
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
locationText = findViewById(R.id.locationText)
fusedLocationClient = LocationServices.getFusedLocationProviderClient(this)
getLocationBtn.setOnClickListener {
checkLocationPermission()
if (ActivityCompat.checkSelfPermission(
this,
Manifest.permission.ACCESS_FINE_LOCATION
) != PackageManager.PERMISSION_GRANTED
){
ActivityCompat.requestPermissions(
this,
arrayOf(
Manifest.permission.ACCESS_FINE_LOCATION,
Manifest.permission.ACCESS_COARSE_LOCATION
),
locationPermissionRequestCode
)
} else {
checkLocationSettings()
priority = LocationRequest.PRIORITY_HIGH_ACCURACY
.addLocationRequest(locationRequest)
.setAlwaysShow(true)
task.addOnSuccessListener {
getLastKnownLocation()
task.addOnFailureListener {
if (ActivityCompat.checkSelfPermission(
this,
Manifest.permission.ACCESS_FINE_LOCATION
) != PackageManager.PERMISSION_GRANTED
){
return
if (location != null) {
locationText.text = locationString
Log.d(tag, locationString)
} else {
}
}.addOnFailureListener { e ->
){
grantResults.isNotEmpty() &&
grantResults[0] == PackageManager.PERMISSION_GRANTED
){
checkLocationSettings()
} else {