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

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

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

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

Начиная с 24 января 2020 г. ваши пользователи больше не смогут отправлять и получать приглашения Firebase, а серверная служба приглашений начнет возвращать ответы об ошибках при выполнении вызовов для отправки и получения ссылки-приглашения. Текущие SDK включают в себя обработку ошибок, чтобы обеспечить изящные случаи сбоев для этих ответов сервера, поэтому ваши пользователи смогут продолжать использовать ваше приложение без сбоев, но мы рекомендуем вам больше не использовать приглашения Firebase и переключиться на альтернативное решение с использованием 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 , передав ссылку, созданную как часть данных, в пользовательский VC. Этот метод обеспечит процесс обмена, аналогичный экранам ниже:

Общий доступ на iOS

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

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

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

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

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

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