LocationActivity.java
Dosyayı İndir
package com.godoro.androiddevices;
import android.Manifest;
import android.app.Activity;
import android.content.pm.PackageManager;
import android.location.Criteria;
import android.location.Location;
import android.location.LocationListener;
import android.location.LocationManager;
import android.os.Bundle;
import android.support.v4.app.ActivityCompat;
import android.util.*;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.TextView;
import android.widget.Toast;
public class LocationActivity extends Activity implements LocationListener {
private LocationManager locationManager;
private String locationProvider;
private TextView latitudeView;
private TextView longitudeView;
private TextView altitudeView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_location);
latitudeView = (TextView) findViewById(R.id.latitudeView);
longitudeView = (TextView) findViewById(R.id.longitudeView);
altitudeView = (TextView) findViewById(R.id.altitudeView);
try {
locationManager = (LocationManager) getSystemService(LOCATION_SERVICE);
// Arama
Criteria criteria = new Criteria();
locationProvider = locationManager.getBestProvider(criteria, false);
// Sadece Ağ
//locationProvider = LocationManager.NETWORK_PROVIDER;
if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
return;
}
Location location = locationManager.getLastKnownLocation(locationProvider);
showLocation(location);
} catch (Exception e) {
Log.e("GodoroAndroid", "Konum etkinliği yanlışlığı", e);
}
}
private void showLocation(Location location) {
if(location==null){
return;
}
latitudeView.setText(Double.toString(location.getLatitude()));
longitudeView.setText(Double.toString(location.getLongitude()));
altitudeView.setText(Double.toString(location.getAltitude()));
}
@Override
protected void onResume() {
super.onResume();
if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
return;
}
locationManager.requestLocationUpdates(locationProvider, 400, 1, this);
}
@Override
protected void onPause() {
super.onPause();
locationManager.removeUpdates(this);
}
@Override
public void onLocationChanged(Location location) {
String message="Konum değişti";
Toast.makeText(this, message, Toast.LENGTH_SHORT).show();
showLocation(location);
}
@Override
public void onStatusChanged(String provider, int status, Bundle extras) {
}
@Override
public void onProviderEnabled(String provider) {
}
@Override
public void onProviderDisabled(String provider) {
}
}
Dosyayı İndir