Firebase Invites предоставил как механизм для получения Firebase Dynamic Links в вашем приложении, так и функцию для обмена этой ссылкой через SMS или электронную почту. Мы разработали Firebase Invites , чтобы помочь вам увеличить количество пользователей вашего приложения с помощью сарафанного радио, но со временем мы узнали, что вы нашли лучшие способы побудить пользователей делиться своими любимыми приложениями с друзьями, помимо того, что Firebase Invites делает сегодня.
Мы также увидели, что хотя использование Firebase Invites снизилось, многие из вас все еще использовали Firebase Dynamic Links в качестве ключевого компонента вашего решения для обмена данными между пользователями. Поэтому мы усиливаем наше внимание и прилагаем больше усилий, чтобы сделать Firebase Dynamic Links лучшим способом встроить возможности обмена данными между пользователями в ваше приложение. В рамках этого изменения мы прекратили поддержку функции Firebase Invites и прекратим ее поддержку с 24 января 2020 года .
Что это значит и как это на меня повлияет?
Начиная с 24 января 2020 года ваши пользователи больше не смогут отправлять или получать Firebase Invites , а бэкэнд-служба приглашений начнет возвращать ответы с ошибками при выполнении вызовов для отправки и получения ссылки приглашения. Текущие SDK включают обработку ошибок, чтобы обеспечить изящные случаи сбоя для этих ответов сервера, поэтому ваши пользователи смогут продолжать использовать ваше приложение без сбоев, но мы рекомендуем вам больше не использовать Firebase Invites и перейти на альтернативное решение с использованием Firebase Dynamic Links с пользовательским решением для обмена.
Вот как это сделать!
Создавайте пригласительные ссылки с помощью Firebase Dynamic Links
Сначала создайте Dynamic Link , которой ваши пользователи смогут поделиться со своими друзьями. Хорошая новость в том, что вы, вероятно, уже знакомы с этим шагом, поскольку он похож на то, как вы настраиваете Firebase Invites . Но вы также можете добавить определенные параметры в свою динамическую ссылку, например, добавить социальные метаданные к вашим ссылкам, если ваши пользователи делятся вашим приложением через социальную сеть, чтобы настроить внешний вид 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)));
Более полный пример и более подробную информацию можно найти в этом руководстве по отправке простых данных в другие приложения .
Приведенный выше фрагмент кода сгенерирует нечто вроде потока приглашений, показанного на экранах ниже:
Для разработчиков iOS вы можете использовать UIActivityViewController
, передавая ссылку, созданную как часть данных, в пользовательский VC. Этот метод обеспечит поток обмена, аналогичный экранам ниже:
Получите Dynamic Link в своем приложении
Наконец, последний шаг на пути к обеспечению обмена данными между пользователями вашего приложения после его закрытия — это получение Dynamic Link в вашем приложении.
Для Android этот процесс остается тем же самым, поэтому вам не придется много менять здесь. Единственное отличие в том, что без Firebase Invites больше не будет идентификатора приглашения, и поэтому вам нужно будет удалить вызов для извлечения идентификатора приглашения через FirebaseAppInvite invite = FirebaseAppInvite.getInvitation(data)
, если ваше приложение делает этот вызов. Для получения более подробной информации об этой части, пожалуйста, см. руководство по получению динамических ссылок в вашем приложении Android .
Для iOS это потребует изменения объекта FIRReceivedInvite на объект FIRDynamicLink , которые оба содержат схожие данные. Более подробную информацию см. в руководстве по получению динамических ссылок в вашем приложении iOS .
Для разработчиков Unity существует ряд библиотек с открытым исходным кодом и эквивалентных решений, подобных тем, что описаны выше, для переноса функциональности обмена между пользователями. Если вам нужна помощь в предоставлении подходящего решения, обратитесь к ресурсам поддержки, ссылка на которые приведена ниже.
Firebase Invites — это отличный инструмент, которым мы гордимся. Заглядывая в будущее, мы рады удвоить усилия по улучшению Firebase Dynamic Links , чтобы у вас было больше гибкости и контроля над тем, как вы поощряете пользователей приглашать других в ваше приложение. Если у вас есть вопросы по настройке Firebase Dynamic Links и пользовательских решений для обмена, обращайтесь на StackOverflow или на любой из наших дополнительных форумов поддержки .