1

我是android的初学者。我有个问题。我想在收到短信时获取我的位置(纬度和经度)。我能怎么做。如果您有示例代码,它将更有帮助。

谢谢你的帮助。

4

2 回答 2

4

要在设备上收到短信后获取纬度和经度,您需要以下步骤:

第 1 步: 注册一个android.provider.Telephony.SMS_RECEIVEDBroadcastReceiver 以接收传入的短信通知:

为此,您可以使用以下教程:

http://androidsourcecode.blogspot.in/2010/10/receiving-sms-using-broadcastreceiver.html


第2步:

要在收到的短信上检索位置,您需要IntentService在 SMS BroadcastReceiver 的 onReceive 中启动一个服务 (),如下所示:

public class SmsReciever extends BroadcastReceiver {

 private static final String TAG = "Message recieved";

 @Override
 public void onReceive(Context context, Intent intent) {    
    if (intent.getAction().equals("android.provider.Telephony.SMS_RECEIVED")) {
      // Start your Location IntentService here 
             Intent i = new Intent(context, Location_Intent_Service.class);
            context.startService(i);
    }
 }

}


对于我们如何使用IntentService,您可以查看以下教程:

http://mobile.tutsplus.com/tutorials/android/android-fundamentals-intentservice-basics/


对于我们如何使用Service 类中的LocationManager,您可以关注以下帖子:

将 LocationManager 作为服务启动 Android

于 2012-11-21T10:32:51.683 回答
1

请参考这个例子。我希望它对你有帮助。

在此示例中,将显示当前位置,并且触摸位置也将显示经纬度。

于 2012-11-21T10:38:21.947 回答