Для совершения телефонного вызова через HTML на iPhone I создают <A/>
тег с href, отформатированным как: <a href='tel:123-555-1212'>Dial Me</a>
.
Существует ли equivelant для HTML на Android?
РАЗЪЯСНЕНИЕ - использование формата href ='tele:123-555-1212' действительно продолжает работать на андроиде. Я тестировал приложение в собственной обертке Java на устройстве. Не появляется, как будто мы можем позвонить из веб-приложения, размещенного в Собственной Обертке.
Да, вы можете; это работает и на Android:
tel: phone_number
Звонит на введенный номер телефона. Допустимые телефонные номера как определено в IETF RFC 3966. принимаются. В качестве примера можно привести following:* tel:2125551212 * tel: (212) 555 1212
Браузер Android использует приложение Phone для обработки схемы "tel", как определено в RFC 3966.
<a href="tel:2125551212">2125551212</a>
Нажав на ссылку типа:
<a href="tel:2125551212">2125551212</a>
на Android, вы откроете приложение Phone и предварительно введете цифры для 2125551212 без автодозвона.
Загляните в RFC3966
Обычно в Android, если вы просто отображаете номер телефона, и пользователь нажимает на него, он подтягивает его в номеронабиратель. Таким образом, вы можете просто сделать
For more information, call us at <b>416-555-1234</b>
Когда пользователь нажмет на жирную часть, поскольку она отформатирована как номер телефона, появится диалер и покажет 4165551234
в поле номера телефона. Пользователю останется только нажать кнопку вызова.
Возможно, вы сможете сделать
For more information, call us at <a href='tel:416-555-1234'>416-555-1234</a>
так, чтобы охватить оба устройства, но я не уверен, насколько хорошо это будет работать. Я попробую это в ближайшее время и дам вам знать.
EDIT: Я только что попробовал это на своем HTC Magic под управлением рутированного Rogers 1.5 с SenseUI:
For more information, call us at <a href='tel:416-555-1234'>416-555-1234</a><br />
<br />
Call at <a href='tel:416-555-1234'>our number</a>
<br />
<br />
<a href='416-555-1234'>Blah</a>
<br />
<br />
For more info, call <b>416-555-1234</b>
Первый вариант, связанный со ссылкой и печатью номера телефона, работал отлично. Вызвал номеронабиратель с дефисами и все такое. Второй, говоря наш номер
со ссылкой, сработал точно так же. Это означает, что использование должно работать повсеместно, но я бы не советовал воспринимать мой единственный тест как окончательный.
Ссылка непосредственно на номер дала ожидаемый результат: Попытка поднять несуществующий файл с сервера.
Последний вариант сделал то, о чем я говорил выше, и вызвал номеронабиратель, но без красивого форматирования дефисов.
Я только что написал приложение, которое может звонить с веб-страницы - я не знаю, пригодится ли вам это, но я включаю в любом случае:
в вашем onCreate вам нужно будет использовать веб-просмотр и назначить WebViewClient, как показано ниже:
browser = (WebView) findViewById(R.id.webkit);
browser.setWebViewClient(new InternalWebViewClient());
затем обработайте щелчок по номеру телефона следующим образом:
private class InternalWebViewClient extends WebViewClient {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
if (url.indexOf("tel:") > -1) {
startActivity(new Intent(Intent.ACTION_DIAL, Uri.parse(url)));
return true;
} else {
return false;
}
}
}
Дайте мне знать, если вам нужно больше указателей.