Como Enviar Por Mensaje de Texto Mi Ubicación y Coordenadas Del Gps
Como Enviar Por Mensaje de Texto Mi Ubicación y Coordenadas Del Gps
Como Enviar Por Mensaje de Texto Mi Ubicación y Coordenadas Del Gps
Buenas hoy veremos un tutorial que me han estado pidiendo como enviar por un mensaje
de texto a otro celular mis coordenadas y la direccin de la calle. Alguno le llaman a
este ejercicio PanicButton, porque la idea es que si estuvieras en peligro o tengas la
necesidad de enviar tu localizacin, se hara con un simple clic.
1Button
- btnEnviar
Bien ahora vamos a la codificacin, nuestro MainActivity.java tendr lo siguiente.Pon el
numero de celular a donde quieres que llegue el mensaje donde dice "Aqu tu numero de
celular";
MainActivity.java
public class MainActivity extends Activity implements LocationListener {
protected LocationManager locationManager;
TextView coordenadas;
TextView direccion;
Button button;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
locationManager = (LocationManager)
getSystemService(Context.LOCATION_SERVICE);
if (ActivityCompat.checkSelfPermission(this,
Manifest.permission.ACCESS_FINE_LOCATION) !=
PackageManager.PERMISSION_GRANTED &&
ActivityCompat.checkSelfPermission(this,
Manifest.permission.ACCESS_COARSE_LOCATION) !=
PackageManager.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(this, new
String[]{Manifest.permission.ACCESS_FINE_LOCATION,}, 1000);
} else {
locationManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER,
1000, 1000, this);
locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER,
1000, 1000, this);
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
try {
TextView co = (TextView)
findViewById(R.id.txtCoordenadas);
TextView di = (TextView)
findViewById(R.id.txtDireccion);
String messageToSend = co.getText().toString();
String messageToSend2 = di.getText().toString();
if
(ContextCompat.checkSelfPermission(MainActivity.this,
Manifest.permission.SEND_SMS) !=
PackageManager.PERMISSION_GRANTED) {
if
(ActivityCompat.shouldShowRequestPermissionRationale(MainActivity.this,
Manifest.permission.SEND_SMS)) {
ActivityCompat.requestPermissions(MainActivity.this,
new
String[]{Manifest.permission.SEND_SMS}, 1);
} else {
ActivityCompat.requestPermissions(MainActivity.this,
new
String[]{Manifest.permission.SEND_SMS}, 1);
}
}else {
String number = "Aqu tu numero de celular";
@Override
public void onLocationChanged(Location location) {
coordenadas = (TextView) findViewById(R.id.txtCoordenadas);
direccion = (TextView) findViewById(R.id.txtDireccion);
coordenadas.setText("Mi ubicacion actual es: " + "\n Lat = "
+ location.getLatitude() + "\n Long = " +
location.getLongitude());
this.setLocation(location);
}
public void setLocation(Location location) {
//Obtener la direccion de la calle a partir de la latitud y la
longitud
if (location.getLatitude() != 0.0 && location.getLongitude() !=
0.0) {
try {
Geocoder geocoder = new Geocoder(this,
Locale.getDefault());
List<Address> list = geocoder.getFromLocation(
location.getLatitude(), location.getLongitude(),
1);
if (!list.isEmpty()) {
Address DirCalle = list.get(0);
direccion.setText("Mi direccion es: \n"
+ DirCalle.getAddressLine(0));
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
@Override
public void onProviderDisabled(String provider) {
Log.d("Latitude","disable");
}
@Override
public void onProviderEnabled(String provider) {
Log.d("Latitude","enable");
@Override
public void onStatusChanged(String provider, int status, Bundle
extras) {
Log.d("Latitude","status");
}
AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.androidmorefast.moden.apppanicbuttonv2">
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.
ACCESS_FINE_LOCATION" />
<uses-permission
android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission
android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.SEND_SMS"/>
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.
LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
Y este es el resultado Final: Quite mi numero de celular, por las ingenieras acosadoras
jajaja
http://android-morefast.blogspot.mx/2016/06/como-enviar-por-mensaje-de-texto-mi.html