[
https://issues.apache.org/jira/browse/CB-9033?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14569072#comment-14569072
]
ASF GitHub Bot commented on CB-9033:
------------------------------------
Github user ogoguel commented on a diff in the pull request:
https://github.com/apache/cordova-lib/pull/219#discussion_r31520090
--- Diff: cordova-lib/src/plugman/platforms/ios.js ---
@@ -184,13 +192,76 @@ module.exports = {
var xcBuildConfiguration =
xcodeproj.pbxXCBuildConfigurationSection();
- var plist_file_entry = _.find(xcBuildConfiguration, function
(entry) { return entry.buildSettings && entry.buildSettings.INFOPLIST_FILE; });
- var plist_file = path.join(project_dir,
plist_file_entry.buildSettings.INFOPLIST_FILE.replace(/^"(.*)"$/g,
'$1').replace(/\\&/g, '&'));
- var config_file = path.join(path.dirname(plist_file),
'config.xml');
- if (!fs.existsSync(plist_file) || !fs.existsSync(config_file)) {
+ // CB-9033
+ var plist_file_index;
+ var plist_file_entry = _.find(xcBuildConfiguration, function
(entry,index) {
+ if (entry.buildSettings && entry.buildSettings.INFOPLIST_FILE)
{
+
+ var plist_file = path.join(project_dir,
entry.buildSettings.INFOPLIST_FILE.replace(/^"(.*)"$/g, '$1').replace(/\\&/g,
'&'));
+ if (!fs.existsSync(plist_file))
+ return false;
+
+ var config_file = path.join(path.dirname(plist_file),
'config.xml');
+ if (!fs.existsSync(config_file))
+ return false;
+
+ // only return project that contains both a plist and a
config.xml (especially to discard apple watch extension/app)
+ plist_file_index = index;
--- End diff --
I did not know about the SKIP_INSTALL but that would be a good additional
check : thanks for the pointer.
Nevertheless, you still need to check that both the .PLIST and the
CONFIG.XML files exist eventually, so it won't totally replace the test.
I will upgrade my code anyway
Olivier
2015-06-02 11:49 GMT+02:00 Georgi Alexandrov <[email protected]>:
> In cordova-lib/src/plugman/platforms/ios.js
> <https://github.com/apache/cordova-lib/pull/219#discussion_r31507207>:
>
> > - if (!fs.existsSync(plist_file) || !fs.existsSync(config_file))
{
> > + // CB-9033
> > + var plist_file_index;
> > + var plist_file_entry = _.find(xcBuildConfiguration, function
(entry,index) {
> > + if (entry.buildSettings &&
entry.buildSettings.INFOPLIST_FILE) {
> > +
> > + var plist_file = path.join(project_dir,
entry.buildSettings.INFOPLIST_FILE.replace(/^"(.*)"$/g, '$1').replace(/\\&/g,
'&'));
> > + if (!fs.existsSync(plist_file))
> > + return false;
> > +
> > + var config_file = path.join(path.dirname(plist_file),
'config.xml');
> > + if (!fs.existsSync(config_file))
> > + return false;
> > +
> > + // only return project that contains both a plist and
a config.xml (especially to discard apple watch extension/app)
> > + plist_file_index = index;
>
> Instead of checking for config.xml can we check for SKIP_INSTALL property
> in BuildSettings. SKIP_INSTALL property should be missing or equals to NO
> for the iPhone app target and should equals to YES for WatchKit Extension
> and WatchKit App.
>
> —
> Reply to this email directly or view it on GitHub
> <https://github.com/apache/cordova-lib/pull/219/files#r31507207>.
>
--
ıllıllı ɹǝ!ʌ!ןo ıllıllı
> Plugins fail to install on Apple Watch based Cordova project
> ------------------------------------------------------------
>
> Key: CB-9033
> URL: https://issues.apache.org/jira/browse/CB-9033
> Project: Apache Cordova
> Issue Type: Bug
> Components: iOS
> Affects Versions: 5.0.0
> Reporter: Olivier Goguel
>
> After having added the Watch Kit target to an iOS Cordova project, plugins
> cannot be added any more through the CLI.
> An error is thrown "'could not find -Info.plist file, or config.xml file." as
> the plugin manager is confused by the plist files from the WatchKit App and
> WatchKit Extension and fails to find the proper plist file of the projet.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]