I have two classes MainActivity.java (Main Class) & MyCurrentLoctionListener.java
I am willing to get my current geo location when I run my app (onLoad-onCreate) :
I get Hi :: null
even though I defined myLocation as public , so the MainActivity.java (Main Class) can see it.
MainActivity.java :
package com.example.test;
import android.location.LocationManager;
import android.os.Bundle;
import android.app.Activity;
import android.content.Context;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button btn1 = (Button) findViewById(R.id.make_folder);
TextView txt1 = (TextView) findViewById(R.id.textView1);
//import android.location.LocationManager;
LocationManager locationManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
MyCurrentLoctionListener locationListener = new MyCurrentLoctionListener();
locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0,locationListener);
txt1.setText("HI :: " + locationListener.myLocation);
btn1.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
}
}); //setOnClickListener
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
MyCurrentLoctionListener.java :
package com.example.test;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
import android.content.Context;
import android.location.Location;
import android.location.LocationListener;
import android.os.Bundle;
import android.os.Environment;
import android.util.Log;
public class MyCurrentLoctionListener implements LocationListener {
public String myLocation;
@Override
public void onLocationChanged(Location location) {
location.getLatitude();
location.getLongitude();
myLocation = "Latitude = " + location.getLatitude() + " Longitude = " + location.getLongitude();
}
@Override
public void onStatusChanged(String s, int i, Bundle bundle) {
}
@Override
public void onProviderEnabled(String s) {
}
@Override
public void onProviderDisabled(String s) {
}
}
Permissions are already included in Manifest.xml