Динамическая ссылка Firebase не открывается в приложении для разработки, пока приложение не находится в магазине приложений - PullRequest
2 голосов
/ 17 октября 2019

Меня беспокоит то, что я не загружаю в магазин приложений, но когда я нажимаю на Deeplink URL, приложение режима отладки не открывает свое перенаправление в Appstore

Я хочу перенаправить на мое приложение отладки.

enter image description here

На изображении выше я создаю динамическую ссылку.

Я работаю над целью динамической ссылки c

, поскольку я проверилмое приложение настроено нормально в firebase

, но когда я делюсь своим продуктом с другим пользователем, они нажимают на URL его открытого в веб-браузере вместо приложения

Примечание: приложение не работает, я хочуopen url мое приложение для отладки.

Я настроил приложение для получения appstoreid и teamid

- (BOOL) приложение: (UIApplication *) приложение continueUserActivity: (NSUserActivity *) восстановление пользовательской активностиHandler:

Этот метод не вызывается, пока другой пользователь нажимает на ссылку общего доступа

Заранее спасибо.

enter image description here

Это мойAppDomain

Это мой код, который не вызывается, когда пользователь нажимает на динамическую ссылку

enter image description here

Ниже приведен мой снимок экрана конфигурации Firebase, пожалуйста enter image description here

Ответы [ 2 ]

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

Предполагается, что нижеприведенные опции вы создали проект Firebase в любом плане. Если у вас его нет, проверьте документы

Вариант 1. Откройте в браузере веб-сайт ( см. Руководство по источникам )

Если вы используете Cloudflareдля управления записями DNS, пожалуйста, НЕ передавайте исходные IP-адреса домену (или поддомену), который вы хотите использовать Динамические ссылки для своего домена, так как Google может не подтвердить ваш доменпотому что они не используют проверку TXT, как GitLab Pages.

  1. Установите Хостинг Firebase , если вы не сделали этого после создания проекта .
  2. После настройки откройте Динамические ссылки .
    • Новое в динамических ссылках? Нажмите Начало работы . В противном случае нажмите Добавить префикс URL . Вы можете добавить до 5 префиксов URL для каждого проекта.

      Если вы используете домен / поддомен для хостинга или динамических ссылок, вы не сможете использовать его снова для динамических ссылок и наоборот. Вместо этого попробуйте префиксы ссылок (например, demofirebaseproject.devhubcentral.ml/launchapp/insert-link-suffix-here) или специальный поддомен (например, demofirebaseproject.devhubcentral.ml/insert-link-suffix-here).

    • Появится мастер настройки. Введите домен, который вы хотите использовать, и Google покажет предложения для вас в зависимости от того, что вы вводите. Выберите мудро, затем нажмите Далее . В нашем примере ID проекта nomadic-bedrock-257008 я использую demofirebaseproject.devhubcentral.ml для этого урока
    • Теперь настройте параметры для домена, который вы хотите использовать. Префикс пути, который я использую для демонстрационного проекта, - /launchapp, потому что разработчики в команде Pins хотят использовать demofirebaseporject.devhubcentral.ml/launchapp для запуска в официальном приложении Pins, но, безусловно, это приложение скоро будет доступно в App Store. Сейчас мы перенаправляем пользователей на contributors-program.recaptime.tk. Когда все будет готово, нажмите Далее .
    • Затем запустите своего провайдера DNS и добавьте 151.101.1.195 и 151.101.65.195 в качестве записей A для используемого домена / субдомена. В нашем демонстрационном проекте я использую CLoudflare для управления записями DNS для devhubcentral.ml, поэтому мне нужно изменить Proxy Status на DNS Only для проверки владения. Смотрите скриншот , чтобы увидеть, как я его настроил. Когда закончите, нажмите Готово и создайте свою первую динамическую ссылку.

      Распространение DNS обычно занимает 24 часа или более, но некоторые DNS-провайдеры / регистраторы доменов распространяют записи DNS раньше.

  3. Для iOSonly : Откройте файл Info.plist в своем проекте Xcode и добавьте следующий код ниже. Замените примеры строк на строки для вашего проекта и добавьте дополнительные строки по мере необходимости.
<key>FirebaseDynamicLinksCustomDomains</key>
<array>
  <string>demofirebaseproject.devhubcentral.ml/launchapp</string>
</array>

Вы можете добавить до 10 префиксов на проект Firebase. Если вам нужно больше, удалите префиксы, которые вы не используете.

Вариант 2. Попробуйте в своем приложении отладки (и поделитесь с другими вашими разработчиками для тестирования)

  1. Откройте обзор проекта Firebase и проект Xcode.
  2. Нажмите значок плюса, затем выберите значок iOS.
  3. Зарегистрируйте основную информацию своего приложения.
  4. Загрузите файл GoogleService-Info.plist в свой Xcodeкорневая папка проекта.
  5. Откройте терминал, используйте pod init, если у вас нет Podfile. Отредактируйте его, чтобы добавить следующее ниже. Сохраните его и затем запустите pod install, чтобы сгенерировать .xcworkspace для вашего проекта. Используйте этот файл для дальнейшей разработки вашего приложения.
# add the Firebase pod for Google Analytics
pod 'Firebase/Analytics'
# add pods for any other desired Firebase products
# https://firebase.google.com/docs/ios/setup#available-pods
Добавьте код инициализации в кодовую базу вашего приложения, используя это ниже для Swift.
import UIKit
import Firebase

@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {

  var window: UIWindow?

  func application(_ application: UIApplication,
    didFinishLaunchingWithOptions launchOptions:
      [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
    FirebaseApp.configure()
    return true
  }
}

Вместо этого есть проект Objective-C? Возможно используйте этот код вместо

@import UIKit;
@import Firebase;

@implementation AppDelegate

- (BOOL)application:(UIApplication *)application
   didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
 [FIRApp configure];
 return YES;
}
Запустите приложение, чтобы проверить установку. Если у вас еще нет проекта, пропустите этот шаг и повторите попытку позже. Попробуйте вариант 1 выше, но на этот раз мы используем ваше приложение iOS для этого.

Вариант 3. Публикация готового к работе приложения в App Store

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

ПРЕДУПРЕЖДЕНИЕ : публиковать свое приложение в App Store только после готовности к работе. Если еще нет, попробуйте сначала выполнить развертывание в [TestFlight].

Этот вариант рекомендуется, но вам необходимо иметь Apple ID, защищенный двухфакторной аутентификацией, и:

  • предоставить основную личную информацию о себе, если вы регистрируетесь как физическое лицо
  • если вы регистрируетесь как организация, требуется:
    • номер DUNS вашей организации (плохо знакомы с номерами DUNS? См. эту статью справочного центра) для начала работы)
    • имеет статус юридического лица (не для администраторов баз данных, фиктивных предприятий, торговых наименований или филиалов)
    • лицо, принимающее участие в вашей организации, должно иметь юридические полномочиязаполните и подпишите соглашения с Apple и другими компаниями.
    • общедоступный веб-сайт, связанный с вашей организацией
  • , подготовьте 99 долларов США (или местный эквивалент в вашей стране после преобразования) дляежегодный членский взнос.

Часто задаваемые вопросы о регистрации в программе Apple для разработчиков см. https://developer.apple.com/support/enrollment.. Для начала посетите страницу регистрации , нажмите Начните регистрацию , когда будут выполнены проверки соответствия (я имею в виду, когда вы выполнили вышеуказанные требования), войдите в свой Apple ID и начните заполнять документы.

ВАЖНО : Прочитайте лицензионное соглашение сначала с юридическим отделом вашей организации или с вашим адвокатом, если вы регистрируетесь как физическое лицо. Вы должны не только прочитать, но и понять.

Когда ваше приложение будет опубликовано, добавьте его и настройте как обычно.

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

Я работал над динамическими ссылками Firebase, и это то, что мне помогло.

Решение:

Поскольку у вас нет приложения релиза в магазине приложений,это означает, что вы можете перенаправить на

  1. веб-страницу или
  2. приложение для отладки (что вам нужно).

Для второгоОпция: вам нужно добавить ваше приложение отладки в консоль Firebase, чтобы вы могли выбрать приложение, которое вы будете открывать при нажатии на динамическую ссылку, например:

Firebase Dynamic links

Если вы хотите узнать, как добавить другое приложение в консоль Firebase, нажмите здесь: https://firebase.google.com/docs/ios/setup

enter image description here

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