Github user rodms10 commented on the pull request:

    https://github.com/apache/cordova-lib/pull/26#issuecomment-45930663
  
    Yeah, the priorities are pretty messy right now. Currently content in 
`config.xml` takes precedence on all manifest properties, except two: 
`permissions` and `icons`. 
    
    For icons we added config to `default.xml` which end up in your platform's 
`config.xml`. For permissions we update `plugin.xml` to add a `permission` 
element to the same platform's `config.xml`. The problem is that this file is 
recreated from scratch on every prepare. Which means you can't edit it.
    
    Because those 2 properties do not take precedence, you can overwrite them 
on the manifest. But for that to work you need to create a manifest file in 
your root `www` folder or in `merges`.
    
    You can edit your root `config.xml` to alter these properties too, like so:
    ``` xml
    <platform name="firefoxos">
      <permission description="Will be required for accessing user location." 
name="geolocation" />
      <icon height="128" src="nonwicon/icon-128.png" width="128" />
      <icon height="60" src="noneicon/icon-60.png" width="60" />
    </platform>
    ```
    
    This will create duplicates on the platform `config.xml`, that will come 
after whatever is defined in `defaults.xml` or `plugins.xml`. It will be 
ignored by current code since what comes first takes precedence.
    
    That said, I think that editing the root `config.xml` should be the 
"official" way of changing those properties in the manifest and I made the 
changes to make it possible. The down side is that you can't overwrite them 
with a manifest anymore, but that is better aligned with cordova and removes 
the exceptions to precedence rules.
    
    Note that I amended the commit to the last one.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

Reply via email to