4 votes

Comment supprimer un "use of undeclared identifier : FIRDynamicLink" ?

Nous suivons les instructions dynamiques pour Firebase. aquí qui ne liste qu'un seul import nécessaire "@import Firebase" - pourtant, lorsque nous arrivons à leur ligne

FIRDynamicLink *dynamicLink = [[FIRDynamicLinks dynamicLinks] dynamicLinkFromCustomSchemeURL:url];

if (dynamicLink) { ...

...XCode donne un identifiant non déclaré pour FIRDynamicLink. Contrairement à certains autres modules comme "import FirebaseAnalytics" - il ne semble pas y avoir une autre bibliothèque dédiée aux Dynamic Links.

Le contenu du pod est le suivant : pod "Firebase/DynamicLinks".

Quelle est l'astuce pour que cela compile ?

8voto

Praxiteles Points 562

Nous avons résolu ce problème en ajoutant la ligne d'importation suivante. Cette ligne n'est pas mentionnée dans la documentation de Google et nous ne sommes pas sûrs que ce soit la bonne chose à faire, mais elle permet à l'application de compiler.

@import FirebaseDynamicLinks;

S'agit-il d'un simple oubli dans le code d'exemple ou d'un malentendu ?

0voto

Je pense qu'ils ont juste confondu entre Objective-C et Swift. En Swift, ils disent d'écrire ceci :

guard let dynamicLinks = DynamicLinks.dynamicLinks() else {
return false

}

mais il faut que ce soit comme ça :

guard let dynamicLinks = FIRDynamicLinks.dynamicLinks() else {
return false

}

Je pense donc que pour Objective-C, vous devriez utiliser ceci :

BOOL handled = [[DynamicLinks dynamicLinks] handleUniversalLink:userActivity.webpageURL
                                                      completion:^(DynamicLink * _Nullable dynamicLink,
                                                                   NSError * _Nullable error) {
                                                        // ...
                                                      }];

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X