Xcode can't open Info.plist — error says “there is no such file”

二次信任 提交于 2019-11-28 18:06:30

That the file exists in your Xcode project folder isn't enough. Have you verified the file is properly referenced in your application target's build settings so it's properly copied into the app bundle? It's not quite the same as a standard resource (ie, it's not made a member of the target in the set of target membership check boxes) but rather a build setting because of its importance in a properly-formatted bundle.

Navigate to the project (select it in the Project navigator), select the application target in the list of targets, then click the Build Settings tab. Under the Packaging section, make sure the "Info.plist File" is properly set to the location/file name.

go to targets. right click on the test target. yourProjectTests and delete it

For me the problem was that some of the .storyboard files had different deployment targets after a merge. Fixed it by setting all the storyboard files to use "Project Deployment Target".

Xcode 8

Select the project file in the left pane. Then open the general tab and they have added a nice button that lets you select the file. (You may have to add it into your project structure as well)

For me this happened as a result of enabling localization of the plist file (to give language specific identifier of the app on springboard).

In targets>build settings>packaging>info.plist file key i changed the path from AppName/AppName-info.plist to AppName/Base.lproj/AppName-info.plist and everything worked as expected.

Remember, its lproj as in a small L and not a capital I.

Hope this helps.

I know it's been a while, but I faced the same issue, and the answers I've found weren't very clear for me, so I decided to make an instruction with a bunch of screenshots.

1) First, open the right-hand panel in xcode and click on your .plist file:

2) Second, choose Relative to project location on the right-hand panel and copy the link just below it:

3) Third, go to the main project settings, choose your target and click on the Build settings tab:

4) And finally, type Info.plist in the search field, double-click on the existing path and paste the link you have copied earlier:

In the end, clean the project Shift + Cmd + K and re-run.

under Xcode 4.6 if the appname-Info.plist is not visible under project -> target/info, go to summary tab and it will ask for the appname-Info.plist file. Select the correct file from the suggestion(s).

Under Targets>Packaging>Info.plist file, make sure that the file path is correct.

In my case, the file was there, but malformed. If you recently edited your Info.plist in a text editor, undo that change, and retry without breaking the markup validity.

For me the issue was that the error was referring to the Info.plist from a library I was using, not the actual .plist file from the project.

Maybe this will help someone in the future.

In my case one of the key was missed out while adding ATS compliance flag

<key>NSAppTransportSecurity</key>

Instead of the correct one as below

<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>

I was having this

<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>

Although some of the online XML Validators did say the XMLs are correct, (which was not), I used

plutil filename.plist

going to the directory where plist file is present (from terminal) and got to know the exact line number that had issues Reference :(https://stackoverflow.com/a/32494850/5438240)

This problem happened the same to me,this happened when I merge the project from other project,some project setting was difference in above two, open the info.plist file in Text Edite,solve the conflcted then save it,everything goes well!

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!