Переход с приглашений Firebase на динамические ссылки с настраиваемым общим доступом

Firebase Invites предоставляет как механизм получения динамических ссылок Firebase в вашем приложении, так и возможность поделиться этой ссылкой через SMS или электронную почту. Мы разработали Firebase Invites, чтобы помочь вам расширить число пользователей вашего приложения посредством сарафанного радио, но со временем мы узнали, что вы нашли более эффективные способы побудить пользователей делиться своими любимыми приложениями с друзьями, помимо того, что Firebase Invites делает сегодня.

Мы также увидели, что, хотя использование Firebase Invites сократилось, многие из вас по-прежнему использовали динамические ссылки Firebase в качестве ключевого компонента вашего решения для обмена информацией между пользователями. Итак, мы усиливаем наше внимание и увеличиваем наши усилия, чтобы сделать Firebase Dynamic Links лучшим способом встроить в ваше приложение возможности обмена информацией между пользователями. В рамках этого изменения мы прекратили поддержку функции приглашений Firebase и прекратим ее поддержку, начиная с 24 января 2020 года .

Что это значит и как это на меня повлияет?

Начиная с 24 января 2020 г. ваши пользователи больше не смогут отправлять и получать приглашения Firebase, а серверная служба приглашений начнет возвращать ошибочные ответы при совершении вызовов для отправки и получения ссылки для приглашения. Текущие SDK включают обработку ошибок, которая помогает обеспечить плавные сбои для этих ответов сервера, поэтому ваши пользователи смогут продолжать использовать ваше приложение без сбоев, но мы рекомендуем вам больше не использовать Firebase Invites и переключиться на альтернативное решение с использованием Firebase. Динамические ссылки с индивидуальным решением для совместного использования.

Вот как это сделать!

Сначала создайте динамическую ссылку , которой ваши пользователи смогут поделиться со своими друзьями. Хорошей новостью является то, что вы, вероятно, уже знакомы с этим шагом, поскольку он аналогичен тому, как вы настраиваете приглашения Firebase. Но вы также можете добавить в свою динамическую ссылку определенные параметры, например добавить социальные метаданные к вашим ссылкам, если ваши пользователи делятся вашим приложением через социальную сеть, чтобы настроить внешний вид URL-адреса, которым делятся.

Создайте решение для совместного использования

Затем создайте свое решение для обмена, чтобы ваши пользователи могли поделиться этой ссылкой со своими друзьями. То, что вы захотите здесь создать, будет зависеть от того, как вы хотите предоставить функцию общего доступа, которая заменит предыдущую в Firebase Invites, но для большинства мобильных приложений вы можете воспользоваться функциями, уже встроенными в платформу.

Для Android одним простым решением, которое охватывает как обмен SMS-сообщениями, так и электронной почтой, а также другие популярные социальные сети и приложения для обмена сообщениями, является использование общего намерения с действием, установленным как Intent.ACTION_SEND . Это обеспечивает удобный способ обмена данными из вашего приложения с любым приложением, установленным пользователем, которое может обрабатывать намерение поделиться.

Здесь должно работать что-то похожее на следующий пример (рекомендуется использовать константные строковые ресурсы в вашем собственном коде):

Intent sendIntent = new Intent();
sendIntent.setAction(Intent.ACTION_SEND);
sendIntent.putExtra(Intent.EXTRA_TEXT, "Here's a new lesson for" +
        " learning more Miwok vocabulary:\n\n" + dynamicLink);
sendIntent.putExtra(Intent.EXTRA_SUBJECT, "Let's Learn Miwok!");
sendIntent.setType("text/plain");
startActivity(Intent.createChooser(sendIntent,
        getResources().getText(R.string.send_to)));

Более полный пример и дополнительную информацию можно найти в этом руководстве по отправке простых данных в другие приложения .

Приведенный выше фрагмент кода сгенерирует что-то вроде потока приглашений, показанного на экранах ниже:

Совместное использование на Android

Разработчики iOS могут использовать UIActivityViewController , передавая ссылку, созданную как часть данных, в пользовательский виртуальный виртуальный компьютер. Этот метод обеспечит поток обмена, аналогичный экранам ниже:

Совместное использование на iOS

Получите динамическую ссылку в своем приложении

Наконец, последний шаг для обеспечения совместного использования вашего приложения между пользователями после закрытия — это получение динамической ссылки в вашем приложении.

Для Android этот процесс остается прежним, поэтому вам не нужно здесь много менять. Единственное отличие состоит в том, что без Firebase Invites больше не будет идентификатора приглашения, поэтому вам нужно будет удалить вызов, чтобы извлечь идентификатор приглашения через FirebaseAppInvite invite = FirebaseAppInvite.getInvitation(data) , если ваше приложение выполняет этот вызов. . Более подробную информацию об этой части можно найти в руководстве по получению динамических ссылок в приложении Android .

Для iOS это потребует замены объекта FIRReceivedInvite на объект FIRDynamicLink , оба из которых содержат схожие данные. Дополнительную информацию см. в руководстве по получению динамических ссылок в приложении iOS .

Для разработчиков Unity существует ряд библиотек с открытым исходным кодом и эквивалентных решений, подобных описанным выше, для переноса функций совместного использования между пользователями. Если вам нужна помощь в предоставлении подходящего решения, обратитесь к ресурсам поддержки, ссылки на которые приведены ниже.

Firebase Invites — отличный инструмент, созданием которого мы гордимся. Заглядывая в будущее, мы рады удвоить усилия по улучшению динамических ссылок Firebase, чтобы у вас было больше гибкости и контроля над тем, как вы поощряете пользователей приглашать других в ваше приложение. Если у вас есть какие-либо вопросы о настройке динамических ссылок Firebase и пользовательских решений для общего доступа, обратитесь на StackOverflow или на любой из наших дополнительных форумов поддержки .