Ich habe zu Xcode 4 gewechselt und mein Projekt geladen, das in Xcode 3 einwandfrei funktioniert hat. Wenn ich es ausführen, erhalte ich eine Fehlermeldung, die besagt:
Die Datei "Info.plist" konnte nicht geöffnet werden, da keine solche Datei vorhanden ist.
Ich habe mir die Datei in Xcode angesehen und sie ist da. Warum kann es nicht geöffnet werden?
Dass die Datei in Ihrem Xcode-Projektordner vorhanden ist, reicht nicht aus. Haben Sie überprüft, dass die Datei in den Build-Einstellungen Ihres Anwendungsziels ordnungsgemäß referenziert wurde, damit sie ordnungsgemäß in das App-Paket kopiert wird? Es ist nicht ganz dasselbe wie eine Standardressource (dh sie wird nicht zu einem Mitglied des Ziels in den Kontrollkästchen für die Zielmitgliedschaft gesetzt), sondern eher als Build-Einstellung, da sie in einem ordnungsgemäß formatierten Bündel von Bedeutung ist.
Navigieren Sie zu dem Projekt (wählen Sie es im Projektnavigator aus), wählen Sie das Anwendungsziel in der Liste der Ziele aus und klicken Sie auf die Registerkarte Build Settings. Vergewissern Sie sich im Abschnitt "Paketierung", dass die "Info.plist-Datei" ordnungsgemäß auf den Speicherort/Dateinamen eingestellt ist.
gehe zu Zielen Klicken Sie mit der rechten Maustaste auf das Testziel. yourProjectTests und löschen Sie es
Für mich geschah dies als Ergebnis der Lokalisierung der plist-Datei (um sprachspezifische Kennung der App auf dem Sprungbrett anzugeben).
InZielen> Build-Einstellungen> Paketierung> info.plist-Dateikey änderte ich den Pfad vonAppName/AppName-info.plistinAppName/Base. lproj/AppName-info.plistund alles funktionierte wie erwartet.
Denken Sie daran, es ist wie in einem kleinen L und nicht in einer Hauptstadt I.
Hoffe das hilft.
wenn die Appname-Info.plist unter Xcode 4.6 unter Projekt -> Ziel/Info nicht sichtbar ist, wechseln Sie zum Tab "Übersicht", und Sie werden nach der Datei Appname-Info.plist gefragt. Wählen Sie aus den Vorschlägen die richtige Datei aus.
Stellen Sie unter Targets> Packaging> Info.plist-Datei sicher, dass der Dateipfad korrekt ist.
Ich weiß, dass es eine Weile her ist, aber ich war mit dem gleichen Problem konfrontiert, und die Antworten, die ich gefunden habe, waren für mich nicht sehr klar, also entschloss ich mich, eine Anleitung mit einigen Screenshots zu machen.
1) Öffnen Sie zuerst den rechten Bereich in xcode und klicken Sie auf Ihre .plist-Datei:
2) Zweitens wählen Sie Relative to project
Position auf der rechten Seite und kopieren den Link direkt darunter:
3) Gehen Sie anschließend zu den Hauptprojekteinstellungen, wählen Sie Ihr Ziel aus und klicken Sie auf die Registerkarte Build-Einstellungen:
4) Geben Sie schließlich Info.plist
in das Suchfeld ein, doppelklicken Sie auf den vorhandenen Pfad und fügen Sie den zuvor kopierten Link ein:
Bereinigen Sie am Ende das Projekt Shift
+ Cmd
+ K
und führen Sie den Vorgang erneut aus.
Dieses Problem passierte für mich dasselbe, dies geschah, wenn ich das Projekt aus einem anderen Projekt zusammenführte, einige Projekteinstellungen waren Unterschied in zwei, öffnen Sie die info.plist-Datei in Text Edite.
Für mich bestand das Problem darin, dass sich der Fehler auf den Info.plist
einer Bibliothek bezog, die ich verwendete, und nicht die eigentliche .plist
-Datei des Projekts.
Vielleicht hilft dies in Zukunft jemandem.
In meinem Fall war die Datei da, aber falsch geformt. Wenn Sie Ihre Info.plist kürzlich in einem Texteditor bearbeitet haben, machen Sie diese Änderung rückgängig und versuchen Sie es erneut, ohne die Markup-Gültigkeit zu beeinträchtigen.
In meinem Fall wurde einer der Schlüssel beim Hinzufügen des ATS-Konformitätsflags übersehen
<key>NSAppTransportSecurity</key>
Anstelle des richtigen wie unten
<true/>
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoadsInWebContent</key>
<true/>
<key>NSAllowsArbitraryLoads</key>
<true/>
<key>NSExceptionDomains</key>
<dict>
<key>some-service1.com</key>
<dict>
<key>NSExceptionAllowsInsecureHTTPLoads</key>
<false/>
</dict>
<key>some-service2.com</key>
<dict>
<key>NSExceptionAllowsInsecureHTTPLoads</key>
<false/>
</dict>
</dict>
</dict>
Ich hatte das hier
<dict>
<key>NSAllowsArbitraryLoadsInWebContent</key>
<true/>
<key>NSAllowsArbitraryLoads</key>
<true/>
<key>NSExceptionDomains</key>
<dict>
<key>some-service1.com</key>
<dict>
<key>NSExceptionAllowsInsecureHTTPLoads</key>
<false/>
</dict>
<key>some-service2.com</key>
<dict>
<key>NSExceptionAllowsInsecureHTTPLoads</key>
<false/>
</dict>
</dict>
</dict>
Obwohl einige der Online-XML-Validatoren angegeben haben, dass die XMLs korrekt sind (was nicht der Fall war), habe ich verwendet
plutil filename.plist
gehen Sie in das Verzeichnis, in dem sich die plist-Datei befindet (vom Terminal) und erfahren Sie die genaue Zeilennummer, die Probleme hatte Referenz: ( https://stackoverflow.com/a/32494850/5438240 )