自动通过短信发送GPS坐标

时间:2011-06-23 09:23:09

标签: android gps sms

我制作了一个应用程序,显示我的GPS坐标(朗度和纬度)数字,它是用地图设计的。但是我想每次打开这个应用程序时自动发送lat和long到手机号码/电话号码(不需要发送按钮)。任何人都可以帮助我..

Gps.java

package Sample.gps.send;

import android.app.Activity;

import android.content.Context;
import android.location.Location;
import android.location.LocationListener;
import android.location.LocationManager;
import android.os.Bundle;
import android.widget.Toast;

public class Gps extends Activity
{
@Override

public void onCreate(Bundle savedInstanceState)
{

super.onCreate(savedInstanceState);

setContentView(R.layout.main);


/* Use the LocationManager class to obtain GPS locations */

LocationManager mlocManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE);

LocationListener mlocListener = new MyLocationListener();


mlocManager.requestLocationUpdates( LocationManager.GPS_PROVIDER, 0, 0, mlocListener);


}


/* Class My Location Listener */

public class MyLocationListener implements LocationListener
{

@Override

public void onLocationChanged(Location loc)

{

loc.getLatitude();

loc.getLongitude();
String Text = "My location is: " +

"Latitude = " + loc.getLatitude() +

"Longitude = " + loc.getLongitude();




Toast.makeText( getApplicationContext(),Text,Toast.LENGTH_SHORT).show();

}


@Override

public void onProviderDisabled(String provider)

{

Toast.makeText( getApplicationContext(),
"GPS Disabled",


Toast.LENGTH_SHORT ).show();

}


@Override

public void onProviderEnabled(String provider)

{

Toast.makeText( getApplicationContext(),


"GPS Enabled",
Toast.LENGTH_SHORT).show();

}


@Override

public void onStatusChanged(String provider, int status, Bundle extras)

{


}

}

}

以下是 AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
          package="Sample.gps.send"
          android:versionCode="1"
          android:versionName="1.0">

<application android:icon="@drawable/icon" 
             android:label="@string/app_name">
<activity android:name=".UseGps"
          android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>          
          </activity>            
             </application> 
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION">
</uses-permission>          
 <uses-permission android:name="android.permission.SEND_SMS">
    </uses-permission>             
          </manifest>

这里MyLocationListener是一个内部类。任何人都可以告诉如何在调用onLocationChanged方法时检索坐标?使用Toast显示位置。是否可以通过调用onCreate()中的任何方法来获取坐标?

1 个答案:

答案 0 :(得分:1)

http://mobiforge.com/developing/story/sms-messaging-android。该教程将向您展示如何发送短信,使用该短信,您应该能够弄清楚您需要做什么。

发布代码示例时请使用代码标签: - )