如何通过短信在短信中发送我的位置?

时间:2016-03-08 10:00:12

标签: android sms locationmanager

我正在制作一个Android项目,所以任何人都可以告诉我如何通过短信发送我在URL中的当前位置。 让我解释一下我想知道什么时候手机摇一摇然后我的应用程序发送了一个字符串短信给选定的联系人现在我想在我的应用程序中添加位置功能意味着我想通过短信发送位置,当接收器点击在URL上,他可以在他的地图中找到发件人的位置吗?

  private void sendSMS(String ph, String message) {
        SmsManager smsManager = SmsManager.getDefault();
        smsManager.sendTextMessage(ph, null, message, null, null);
        Toast.makeText(getApplicationContext(), "SMS SENT",
                Toast.LENGTH_LONG).show();
    }

2 个答案:

答案 0 :(得分:1)

我建议您获取设备的当前latitudelongitude。在第二步中,您可以创建一个String,它是一个搜索url,其参数类似于此

   String message = "http://maps.google.com/?q=" + {latitude} + "," + {longitude}

有关获取当前longitudelatitude的详细信息,请查看here

答案 1 :(得分:1)

正常方式然后你可以插入一个网址如下:

String pos_url = "http://sharegps.com?lat=00000000000&long=00000000000"; // you can replace your real gps position and your domain (or use maps.google.com)

第一种方式:

SmsManager smsManager = SmsManager.getDefault();
        smsManager.sendTextMessage(ph, null, pos_url, null, null);
        Toast.makeText(getApplicationContext(), "SMS SENT",
                Toast.LENGTH_LONG).show();

第二种方式:

private void shareTextUrl() {
    Intent share = new Intent(android.content.Intent.ACTION_SEND);
    share.setType("text/plain");
    share.addFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);

    // Add data to the intent, the receiving app will decide
    // what to do with it.
    share.putExtra(Intent.EXTRA_SUBJECT, "Title Of The Post");

    share.putExtra(Intent.EXTRA_TEXT, pos_url);

    startActivity(Intent.createChooser(share, "Share location!"));

}