java – 如何将我的位置(经度和纬度)作为回复短信发送给其他人?

前端之家收集整理的这篇文章主要介绍了java – 如何将我的位置(经度和纬度)作为回复短信发送给其他人?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我有一个应用程序,我需要将他的位置(经度和纬度)发送给其他人从他那里收到短信.我会以某种方式获取我的位置(经度和纬度)并将其作为文本回复短信然后把它发送给其他人.但是现在我遇到了如何获取我的位置并将其作为文本回复sms的问题.现在我已经编写了一个代码,该代码在收到来自其他人的短信时发送回复消息.谁能告诉我如何获取我的位置并将其作为短信?

这是我发送回复邮件代码

public void onReceive(Context context,Intent intent){

    Intent m=new Intent(context,ReceivelocationActivity.class);    
      PendingIntent pi=PendingIntent.getBroadcast(context,m,0); 
    Bundle bundle = intent.getExtras();        
    SmsMessage[] msgs = null;
    String str = ""; 
    String str2="";
    String str3="";
    String autoReplyToken = "Request_Accepted";
    if (bundle != null)
    {
        //---retrieve the SMS message received---
        Object[] pdus = (Object[]) bundle.get("pdus");
        msgs = new SmsMessage[pdus.length];            
        for (int i=0; irequired(false);
 hdCrit.setBearingrequired(false);
 hdCrit.setCostAllowed(true);
 hdCrit.setPowerRequirement(Criteria.POWER_LOW);

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

 hdLocProvider = hdLocMgr.getBestProvider(hdCrit,true); 

 Location location = hdLocMgr.getLastKnownLocation(hdLocProvider);

 Double dlat = location.getLatitude();
 Double dlon = location.getLongitude();

        String msg = dlat + "," + dlon ;
/*  As suggested by Dan J  */ 
        if (!isAutoReply) {
            String autoReplyText = autoReplyToken + msg;
            sms.sendTextMessage(str2,null,autoReplyText,pi,null);
        }

    }                 
}

任何人都可以告诉我如何在“msg”变量中发送实际位置而不是字符串“location”.任何有任何想法的人请告诉我?提前致谢.

最佳答案
有关如何获取经度和纬度,请参阅this answer

然后改变

String msg = "location" ; 

String msg = dlat + "," + dlon; 

您还需要为清单XML添加适当的权限(例如,请参阅我的答案here).

原文链接:https://www.f2er.com/android/430499.html

猜你在找的Android相关文章