apache / cordova-ios

Apache Cordova iOS
https://cordova.apache.org/
Apache License 2.0
2.15k stars 988 forks source link

config.xml no longer works with cordova-ios at all #1058

Closed shamilovtim closed 3 years ago

shamilovtim commented 3 years ago

Bug Report

On macOS Big Sur using cordova-ios 6.1.1 and Cordova CLI 10.0.0 none of the <preference> in config.xml have any effect on neither the info.plist nor the xbproj. The only way to alter the .plist is by targeting it directly through <config-file target="*-Info.plist" /> however this isn't a useful workaround because it still doesn't address all of the other preferences that change things outside of the info plist.

To reproduce, cordova create a new project. Add preferences to config.xml and platform add ios. You'll see that none of your preferences will make it into the plist, nor will they apply to the xbproj.

There is a platform specific config.xml file in the .xcworkspace but this file does nothing to the project. Is a compilation step or build phase missing from the autogenerated ios project files?

breautek commented 3 years ago

I'm unable to reproduce this. I used the DisallowOverscroll preference to test. For me the preference worked when it was added to config.xml before and after the platform was added.

I'm also using Cordova CLI 10.0.0, on cordova-ios@6.1.1, Big Sur 11.1 / Xcode 12.3 / Node 14.

Can you think of any other environment differences? Maybe there are specific preferences that aren't working? Try adding the --verbose flag to see more insights

shamilovtim commented 3 years ago

I just confirmed that the problem was stemming from when these preferences are part of a plugin.xml. They do work when added to config.xml but they cannot seem to be set on a plugin (other than the Plist ones usable through edit-config).