webentwicklung-frage-antwort-db.com.de

Swift Klassenerweiterungen und Kategorien auf Swift Klassen dürfen keine + Lademethoden haben

Ich habe Xcode Version 10.2 (10E125) aktualisiert und auf Geräten getestet (nicht nur Simulator)

Ich erhalte diese Meldung, wenn ich die App ausführe:

objc [3297]: Swift Klassenerweiterungen und Kategorien auf Swift Klassen dürfen keine + Lademethoden haben

  • Es funktioniert einfach nicht auf Geräten mit iOS 12.2. Ich würde gerne wissen, ob es ein Update gab, das sich auf die Klassen Swift) auswirkte. Bisher hat keine Antwort darauf in anderen Foren nur gesehen, dass Apple hat einige Probleme auch mit anderen Apps in der Produktion.

-Ich verwende Erweiterungen von Swift Klassen, aber ich denke nicht, dass das das Problem ist

  • Verwenden von Cocoapods und Firebase-Abhängigkeiten.

  • Ich habe in meinem Projekt nach Funktionen gesucht, die "Lade" -Funktionen enthalten könnten, keine gefunden.

Bitte etwas Hilfe

22
Daniel Bastidas

Nur um eine Lösung für React Native Projekte) hinzuzufügen.

Dieses Problem trat auf, weil eines unserer benutzerdefinierten reaktionsnativen Module das Makro RCT_EXPORT_MODULE() verwendete, das die Funktion init aufruft, und wir auch Swift Code. Seitdem In der reaktionsnativen Version 0.59.3 gibt es ein neues Makro RCT_EXPORT_MODULE_NO_LOAD(js_name, objc_name), das den Aufruf von init vermeidet. Ersetzt RCT_EXPORT_MODULE() durch RCT_EXPORT_MODULE_NO_LOAD(js_name, objc_name) und aktualisiert auf Reagieren native Version 0.59.3 behoben das Problem.

7
Ethan Worley

In meinem Fall ist die einzige Abhängigkeit mit der + load-Methode RxAtomic. Dies ist übrigens die einzige, die nicht auf den aktuellen Zeitpunkt auf Swift 5.0) aktualisiert wurde. Ich nehme also an, dass dieser Fehler durch RxSwift verursacht wurde. Und ich habe auch Swinjects-Abhängigkeiten, die jedoch aktualisiert wurden Alles zu den neuesten Versionen, die Swift 5 - es hat nicht geholfen.

EDIT

Ich öffne gerade die Pods-Projektdatei. Wählen Sie RxAtomic Target. Ändern Sie die benutzerdefinierte Eigenschaft 'Swift_VERSION' von 5.0 in 4.2. Und es funktioniert!!!

4
Nikita Haiko

pgrade auf reaktionsnative Version ^0.59.5

gelöst ohne RCT_EXPORT_MODULE_NO_LOAD,

m die reaktionsnative Version zu aktualisieren

rm -rf node_modules
yarn add [email protected]^0.59.5

damit werden andere Abhängigkeitspakete mit der neuen Version aktualisiert

2
MustafaSkir

Ich hatte das gleiche Problem und habe nur die Pods aktualisiert. Swinject Pod verursachte ein Problem und nach dem Update auf die neueste Version wurde alles gelöst. Sie können auch versuchen, Swift Sprachversion in Pods Targets anzupassen.

0
Mile Dev