[ 
https://issues.apache.org/jira/browse/CB-6414?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13963352#comment-13963352
 ] 

ASF GitHub Bot commented on CB-6414:
------------------------------------

GitHub user jbavari opened a pull request:

    https://github.com/apache/cordova-plugman/pull/72

    CB-6414 - fixes the issue where two config.xml munges exists, it will st...

    https://issues.apache.org/jira/browse/CB-6414

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/jbavari/cordova-plugman master

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/cordova-plugman/pull/72.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #72
    
----
commit 067db2db5cdd2a309d83e04769a888b37d0cb36d
Author: Josh Bavari <[email protected]>
Date:   2014-04-08T19:48:52Z

    CB-6414 - fixes the issue where two config.xml munges exists, it will still 
write the correct config.xml output

----


> Cordova plugman will ignore config_munge features for config.xml if two are 
> listed in plugin.xml
> ------------------------------------------------------------------------------------------------
>
>                 Key: CB-6414
>                 URL: https://issues.apache.org/jira/browse/CB-6414
>             Project: Apache Cordova
>          Issue Type: Bug
>          Components: Plugman
>    Affects Versions: 3.4.0
>         Environment: Android
>            Reporter: Josh Bavari
>            Assignee: Josh Bavari
>            Priority: Minor
>   Original Estimate: 2h
>  Remaining Estimate: 2h
>
> When using a phonegap plugin like the Facebook Connect plugin, there are two 
> series of listed config transforms, as such:
> The <config-file> element,
>   <config-file target="config.xml" parent="/*">
>           <access origin="https://m.facebook.com"; />
>           <access origin="https://graph.facebook.com"; />
>           <access origin="https://api.facebook.com"; />
>           <access origin="https://*.fbcdn.net"; />
>           <access origin="https://*.akamaihd.net"; />
>     </config-file>
> As well as the transform for Android:
>  <config-file target="config.xml" parent="/*">
>             <feature name="FacebookConnectPlugin">
>                 <param name="android-package" 
> value="org.apache.cordova.facebook.ConnectPlugin" />
>             </feature>
>         </config-file>
> Which after running 'cordova prepare android':
> "config_munge": {
>         "res/xml/config.xml": {
>             "/*": {
>                 "<feature name=\"Camera\"><param name=\"android-package\" 
> value=\"org.apache.cordova.camera.CameraLauncher\" /></feature>": 1,
>                 "<feature name=\"Contacts\"><param name=\"android-package\" 
> value=\"org.apache.cordova.contacts.ContactManager\" /></feature>": 1,
>                 "<feature name=\"Device\"><param name=\"android-package\" 
> value=\"org.apache.cordova.device.Device\" /></feature>": 1,
>                 "<feature name=\"Notification\"><param 
> name=\"android-package\" value=\"org.apache.cordova.dialogs.Notification\" 
> /></feature>": 1,
>                 "<feature name=\"File\"><param name=\"android-package\" 
> value=\"org.apache.cordova.file.FileUtils\" /><param name=\"onload\" 
> value=\"true\" /></feature>": 1,
>                 "<feature name=\"FileTransfer\"><param 
> name=\"android-package\" 
> value=\"org.apache.cordova.filetransfer.FileTransfer\" /></feature>": 1,
>                 "<feature name=\"Geolocation\"><param 
> name=\"android-package\" value=\"org.apache.cordova.geolocation.GeoBroker\" 
> /></feature>": 1,
>                 "<feature name=\"InAppBrowser\"><param 
> name=\"android-package\" 
> value=\"org.apache.cordova.inappbrowser.InAppBrowser\" /></feature>": 1,
>                 "<feature name=\"Media\"><param name=\"android-package\" 
> value=\"org.apache.cordova.media.AudioHandler\" /></feature>": 1,
>                 "<feature name=\"Capture\"><param name=\"android-package\" 
> value=\"org.apache.cordova.mediacapture.Capture\" /></feature>": 1,
>                 "<feature name=\"NetworkStatus\"><param 
> name=\"android-package\" 
> value=\"org.apache.cordova.networkinformation.NetworkManager\" /></feature>": 
> 1,
>                 "<feature name=\"SplashScreen\"><param 
> name=\"android-package\" 
> value=\"org.apache.cordova.splashscreen.SplashScreen\" /></feature>": 1
>             }
>         },
>         "AndroidManifest.xml": {
>             "/*": {
>                 "<uses-permission 
> android:name=\"android.permission.WRITE_EXTERNAL_STORAGE\" />": 5,
>                 "<uses-permission 
> android:name=\"android.permission.READ_CONTACTS\" />": 1,
>                 "<uses-permission 
> android:name=\"android.permission.WRITE_CONTACTS\" />": 1,
>                 "<uses-permission 
> android:name=\"android.permission.GET_ACCOUNTS\" />": 1,
>                 "<uses-permission 
> android:name=\"android.permission.ACCESS_COARSE_LOCATION\" />": 1,
>                 "<uses-permission 
> android:name=\"android.permission.ACCESS_FINE_LOCATION\" />": 1,
>                 "<uses-permission 
> android:name=\"android.permission.RECORD_AUDIO\" />": 2,
>                 "<uses-permission 
> android:name=\"android.permission.MODIFY_AUDIO_SETTINGS\" />": 1,
>                 "<uses-permission 
> android:name=\"android.permission.READ_PHONE_STATE\" />": 1,
>                 "<uses-permission 
> android:name=\"android.permission.RECORD_VIDEO\" />": 1,
>                 "<uses-permission 
> android:name=\"android.permission.ACCESS_NETWORK_STATE\" />": 1
>             },
>             "application": {
>                 "<meta-data android:name=\"com.facebook.sdk.ApplicationId\" 
> android:value=\"@string/fb_app_id\" />": 1,
>                 "<activity android:label=\"@string/fb_app_name\" 
> android:name=\"com.facebook.LoginActivity\" />": 1
>             }
>         },
>         "res/values/facebookconnect.xml": {
>             "/*": {
>                 "<string name=\"fb_app_id\">448</string>": 1,
>                 "<string name=\"fb_app_name\">RaiseMore</string>": 1
>             }
>         },
>         "config.xml": {
>             "/*": {
>                 "<access origin=\"https://m.facebook.com\"; />": 1,
>                 "<access origin=\"https://graph.facebook.com\"; />": 1,
>                 "<access origin=\"https://api.facebook.com\"; />": 1,
>                 "<access origin=\"https://*.fbcdn.net\"; />": 1,
>                 "<access origin=\"https://*.akamaihd.net\"; />": 1,
>                 "<feature name=\"FacebookConnectPlugin\"><param 
> name=\"android-package\" value=\"org.apache.cordova.facebook.ConnectPlugin\" 
> /></feature>": 1
>             }
>         }
>     },
> Which then leads to the final config.xml that only has the config munge from 
> the facebook plugin:
> <?xml version='1.0' encoding='utf-8'?>
> <widget id="io.cordova.hellocordova" version="0.0.1" 
> xmlns="http://www.w3.org/ns/widgets"; 
> xmlns:cdv="http://cordova.apache.org/ns/1.0";>
>     <preference name="loglevel" value="DEBUG" />
>     <feature name="App">
>         <param name="android-package" value="org.apache.cordova.App" />
>     </feature>
>     <access origin="https://m.facebook.com"; />
>     <access origin="https://graph.facebook.com"; />
>     <access origin="https://api.facebook.com"; />
>     <access origin="https://*.fbcdn.net"; />
>     <access origin="https://*.akamaihd.net"; />
>     <feature name="FacebookConnectPlugin">
>         <param name="android-package" 
> value="org.apache.cordova.facebook.ConnectPlugin" />
>     </feature>
>     <name>HelloCordova</name>
>     <description>
>         A sample Apache Cordova application that responds to the deviceready 
> event.
>     </description>
>     <author email="[email protected]" href="http://cordova.io";>
>         Apache Cordova Team
>     </author>
>     <content src="index.html" />
>     <access origin="*" />
>     <preference name="Orientation" value="landscape" />
> </widget>



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to