Как запустить добавить новый экран контактов в Android и iPhone с помощью HTML без кода на стороне сервера? - PullRequest
0 голосов
/ 04 ноября 2019

Я хочу сохранить новый контакт в телефоне Android через локальный HTML-файл без каких-либо компонентов на стороне сервера.

Я создал одну html-страницу, которая содержит всю информацию, необходимую для создания vcard. Я хочу сохранить эту карту в списке контактов телефона через ту же HTML-страницу.

Подход, который я пробовал до сих пор -

  1. tel: // - через этот тег href - я могу запустить экран набора номера контакта, но я хочу запустить addэкран контактов.

  2. В Android - вы можете указать намерение запустить любое приложение (глубокие ссылки?) Я пробовал перейти по гиперссылке, но он запускает магазин Google Play с конечным результатом как "Не найдено"

«Сканирование» было помещено в гиперссылку, потому что я нашел один пример, когда приложение сканера запускалось через HTML. Я не знаю, какая должна быть точная гиперссылка для запуска добавления экрана контактов.

Мало примеров в интернете, но это Android Native. Я не уверен насчет точных значений констант этих переменных в HTML.

Открытый контакт

Создайте одну гиперссылку - которая загружает vcard. После загрузки файла - пользователь должен открыть его вручную. Который автоматически просит пользователя сохранить новый контакт. Я просто хочу избежать загрузки и открытия загруженного файла. Можно ли напрямую создавать, сохранять, открывать локальный файл vcard через javascript?

У меня есть файл vcf, размещенный на моем сервере - когда вы нажимаете на эту ссылку - он будет загружен на ваше устройство. Когда вы откроете его - он откроет новый контактный файл.

Я хочу сохранить новый контакт в списке контактов телефона через html-страницу. html-страница также является локальной для мобильного телефона (не в Интернете)

Фактический результат - vcard, загруженный по ссылке, хранится в локальной папке загрузки Android. Пользователь должен вручную открыть файл и сохранить контакт.

По крайней мере, если я смогу автоматически открыть загруженный файл vcf - это будет здорово. Подход должен работать в Android и iPhone обоих.

1 Ответ

0 голосов
/ 08 ноября 2019

Итак, вот два полезных ресурса:

  1. https://developer.android.com/training/contacts-provider/modify-data#create-an-intent - объясняет, как добавлять / редактировать контакты с помощью намерений на Android
  2. https://developer.chrome.com/multidevice/android/intents -объясняет, как отформатировать любое намерение Android запускаться с веб-страницы, отображаемой в Chrome (обратите внимание, что она будет работать только в Chrome / WebView, а не в альтернативных браузерах)

Итак, вы захотите запуститьнапример,

Intent intent = new Intent(Intents.Insert.ACTION);
intent.setType(RawContacts.CONTENT_TYPE);
intent.putExtra(Intents.Insert.EMAIL, "hello@world.com");
intent.putExtra(Intents.Insert.PHONE, "+1-212-555-1234");

В соответствии с форматом, приведенным во второй статье, вы захотите запустить что-то вроде этого:

intent://vnd.android.cursor.dir/raw_contact/#Intent;
    action=android.intent.action.INSERT;
    S.email=hello@world.com;
    S.phone=+1-212-555-1234
end;

т.е. <a href="intent://vnd.android.cursor.dir/raw_contact/#Intent;action=android.intent.action.INSERT;S.email=hello@world.com;S.phone=+1-212-555-1234end;">CLICK ME</a>

И я не думаю, что подобный подход мог бы работать на iPhone, не думаю, что это вообще возможно

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...