Я разрабатываю приложение для Android, которое может отправлять текущее местоположение пользователя с помощью SMS.Адрес местонахождения, отправленный по SMS, работает в браузере Android, но не в браузере iPhone
Для отправки SMS я использую следующий код:
String phoneNumber = "123456" //example
SmsManager smsManager = SmsManager.getDefault();
StringBuilder smsBody = new StringBuilder();
smsBody.append("This is my location:\n");
String uri = "http://maps.google.com/?q=loc:" + location.getLatitude()
+ "+" + location.getLongitude();
smsBody.append(uri);
smsManager.sendTextMessage(phoneNumber, null, smsBody.toString(),
null, null);
Теперь, когда я посылаю это на Android устройства, я получаю SMS с ссылкой, и это открывает совершенно в родном браузере и в Гугл Хром.
Но если я отправлю его на устройство iPhone - используя собственный браузер (Safari) - это дает мне ошибку, что он не может открыть адрес, потому что он неверен, но если я его открываю с помощью Chrome (также на iPhone) - Он работает отлично.
У кого-нибудь есть подсказка, почему это происходит? Любое обходное решение?
Вот точная копия сообщения SMS, которое получено:
Это мое местоположение: http://maps.google.com/?q=loc:32.05688742112759+34.899831548802496
Большое спасибо заранее!
EDIT:
Вот снимок экрана ошибки я получаю, когда я пытаюсь открыть ссылку на iPhone 4 под управлением iOS7
Вы пытались использовать 'https' вместо' http'? –