iOS 10 / Xcode 8 GM Build hat das Folgende bekommen, hatte es noch nie zuvor auf Xcode 7. Irgendwelche Ideen?
objc [25161]: Die Klasse PLBuildVersion ist in beiden /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/PrivateFrameworkS/Servs.Servs.Servs.Servs.Servs.Servs.Servs.Servs.Servs.Servs.Servs.Servs.Servs.Servs.Servs.Servs.Servs.Servs.Servs.Servs.Servs.Servs.10Set.Servs.Servs.Servs.Servs.Servs.Servs.Servs.Servs.Servs.Servs.Serv. und /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/PrivateFrameworks/PhotoLibraryServices.framework/PhotoLibraryServices42. Einer der beiden wird verwendet. Welches ist undefiniert.
(HINWEIS: Scheint nur im Simulator zu passieren, erscheint nicht auf dem realen Gerät).
Antworten:
Hauptidee
Hauptidee ist einfach:
Wenn Ihre App (oder Abhängigkeiten wie Pods) ein Framework verwendet, das explizit (oder implizit)
PhotoLibraryServices.framework
oderAssetsLibraryServices.framework
als Abhängigkeit verwendet, warnt Sie Xcode (auch wenn Sie nur eines davon verwenden). Es könntePhotos/PhotosUI.framework
oderAssetsLibrary.framework
oder eine andere sein (ich habe keine vollständige Liste der Abhängigkeiten, aber es ist möglich).Was ist das Problem?
Klasse mit Namen
PLBuildVersion
ist inPhotoLibraryServices.framework
und definiertAssetsLibraryServices.framework
. Der Klassenname ist in Objective-C eindeutig (Sie können nicht zwei Klassen mit demselben Namen definieren), daher ist nicht definiert, welche zur Laufzeit verwendet wird.Ich denke jedoch, dass dies kein Problem sein wird, da beide Klassen dieselben Methoden und Felder haben (dies wurde mit Disassembler überprüft) und ich denke, dass beide aus derselben Quelle kompiliert wurden.
Radar ist bereits gesendet.
quelle
.attributedText
. Ich greife nicht auf Kamera oder Fotos zu. Diese Warnung führt auch zu einer schwerwiegenden Verzögerung beim Laden des View Controllers, obwohl keine zeitintensiven Aufgaben erforderlich sind (kein Netzwerkzugriff, keine Datei-E / A usw.).Laut Antwort eines Apple-Mitarbeiters im Apple Developer Forum :
quelle
Ich konnte keine Möglichkeit finden, die Warnung zu entfernen. Wenn Sie jedoch verhindern möchten, dass die App abstürzt, müssen Sie eine Beschreibung angeben, warum Sie auf die Kamera, die Fotobibliothek usw. zugreifen. Dies ist neu in iOS10.
Geben Sie Folgendes in Ihre
Info.plist
Datei ein.Foto
Schlüssel:
Privacy - Photo Library Usage Description
Wert:$(PRODUCT_NAME) photo use
Kamera
Schlüssel:
Privacy - Camera Usage Description
Wert:$(PRODUCT_NAME) camera use
Weitere Informationen finden Sie hier: https://iosdevcenters.blogspot.com/2016/09/infoplist-privacy-settings-in-ios-10.html
quelle
info.plist
Datei die Konfigurationsdetails für Schlüssel / Zeichenfolge hinzugefügt habe . Anscheinend wird es in IOS 10.x benötigtIch finde, Sie können diesen Fehler nur mit einem UIWebView erhalten. Meine Lösung bestand darin, meine Verwendung von UIWebView durch WKWebView zu ersetzen.
quelle
Ich hatte dies, nachdem ich meinem Projekt Answers on Fabric hinzugefügt hatte.
Das Löschen abgeleiteter Daten hat mir geholfen. (Shift Alt Befehl k in XCode)
Ein Jahr später bearbeiten:
Beenden Sie nach dem Löschen abgeleiteter Daten immer XCode und starten Sie es erneut.
In nicht verwandten Fällen habe ich den Eindruck, dass durch das Löschen abgeleiteter Daten die XCodes in den Speichercaches der abgeleiteten Daten nicht gelöscht werden.
quelle
Das Zurücksetzen des iOS-Simulators hat dies für mich behoben. Simulator -> Inhalt und Einstellungen zurücksetzen.
quelle
In meinem Fall wurde diese Warnung angezeigt, nachdem ein zweites xcode-Projekt geöffnet und die zweite App auf dem Simulator ausgeführt wurde. Nach dem Wechsel zur ersten App wurde die Warnung angezeigt. Ich habe gerade den Simulator und Xcode beendet und mein Projekt erneut geöffnet. Die Warnung verschwand danach. Wenn dies das Problem nicht löst, fahren Sie mit den anderen Antworten fort. Xcode kann manchmal sehr wählerisch sein.
quelle