2014-09-16 2 views
1

Я разрабатываю приложение для 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 enter image description here

+0

Вы пытались использовать 'https' вместо' http'? –

ответ

0

Это потому, что iOS поддерживает его собственную карту. Ваш URL-адрес запроса работает только с картой google. Вы можете попробовать этот url для iOS: "http://maps.apple.com/?q=loc:32.05688742112759+34.899831548802496"

+0

Ну, увидев, что он открывается в браузере, он должен его поддерживать, и, видимо, iPhone 5 поддерживает его (см. Ответ ниже). У вас есть источник или ссылка для поддержки вашего ответа? Благодаря! – gilonm

+0

вы можете здесь проверить: https://developer.apple.com/library/ios/featuredarticles/iPhoneURLScheme_Reference/MapLinks/MapLinks.html – Sats

+0

Ну, там сказано, что вы можете использовать эту форму ссылки, а не ДОЛЖНЫ. Но, основываясь на вашем ответе, я также нашел этот ответ [здесь] (http://stackoverflow.com/questions/18223533/how-to-launch-google-maps-on-iphone-via-web-link). Когда я использовал ссылку так, как вы сказали, она работает как на Android, так и на iOS. Спасибо, что помогли решить мою проблему! – gilonm

0

IOS не поддерживает SMS местоположения по ссылке

+0

Можете ли вы предоставить официальную или заслуживающую доверия ссылку на этот факт? Большое спасибо – gilonm

+1

hm это обычный http - он должен открыться в Safari – Fattie

Смежные вопросы