Improve `cordova info`
See original GitHub issueIonic CLI’s ionic info
is one of its most useful commands. You just ask someone to run it in the project and post the output and you know (almost) all relevant versions, components used and even paths that are relevant.
An example:
λ ionic info
cli packages: (C:\nvm\v10.7.0\node_modules)
@ionic/cli-utils : 1.19.2
ionic (Ionic CLI) : 3.20.0
global packages:
cordova (Cordova CLI) : 8.0.0
local packages:
@ionic/app-scripts : 2.0.2
Cordova Platforms : android 7.1.1 ios 4.5.5
Ionic Framework : ionic-angular 3.5.3
System:
Android SDK Tools : 26.1.1
Node : v10.7.0
npm : 6.1.0
OS : Windows 10
Environment Variables:
ANDROID_HOME : C:\Android
Misc:
backend : pro
Compare that to the output of cordova info
in the same project:
λ cordova info
Collecting Data...
Node version: v10.7.0
Cordova version: 8.0.0
Config.xml file:
<?xml version='1.0' encoding='utf-8'?>
<widget id="de...rstand" version="0.0.1" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
<name>Zählerstand</name>
<description>A Zaehlerstand app.</description>
<author email="pio...ski@gmail.com" href="https://janpiotrowski.de/">Jan Piotrowski</author>
<content src="index.html" />
<access origin="*" />
<allow-navigation href="http://ionic.local/*" />
<allow-intent href="http://*/*" />
<allow-intent href="https://*/*" />
<allow-intent href="tel:*" />
<allow-intent href="sms:*" />
<allow-intent href="mailto:*" />
<allow-intent href="geo:*" />
<platform name="android">
<allow-intent href="market:*" />
<icon density="ldpi" src="resources/android/icon/drawable-ldpi-icon.png" />
<icon density="mdpi" src="resources/android/icon/drawable-mdpi-icon.png" />
<icon density="hdpi" src="resources/android/icon/drawable-hdpi-icon.png" />
<icon density="xhdpi" src="resources/android/icon/drawable-xhdpi-icon.png" />
<icon density="xxhdpi" src="resources/android/icon/drawable-xxhdpi-icon.png" />
<icon density="xxxhdpi" src="resources/android/icon/drawable-xxxhdpi-icon.png" />
<splash density="land-ldpi" src="resources/android/splash/drawable-land-ldpi-screen.png" />
<splash density="land-mdpi" src="resources/android/splash/drawable-land-mdpi-screen.png" />
<splash density="land-hdpi" src="resources/android/splash/drawable-land-hdpi-screen.png" />
<splash density="land-xhdpi" src="resources/android/splash/drawable-land-xhdpi-screen.png" />
<splash density="land-xxhdpi" src="resources/android/splash/drawable-land-xxhdpi-screen.png" />
<splash density="land-xxxhdpi" src="resources/android/splash/drawable-land-xxxhdpi-screen.png" />
<splash density="port-ldpi" src="resources/android/splash/drawable-port-ldpi-screen.png" />
<splash density="port-mdpi" src="resources/android/splash/drawable-port-mdpi-screen.png" />
<splash density="port-hdpi" src="resources/android/splash/drawable-port-hdpi-screen.png" />
<splash density="port-xhdpi" src="resources/android/splash/drawable-port-xhdpi-screen.png" />
<splash density="port-xxhdpi" src="resources/android/splash/drawable-port-xxhdpi-screen.png" />
<splash density="port-xxxhdpi" src="resources/android/splash/drawable-port-xxxhdpi-screen.png" />
</platform>
<platform name="ios">
<allow-intent href="itms:*" />
<allow-intent href="itms-apps:*" />
<icon height="57" src="resources/ios/icon/icon.png" width="57" />
<icon height="114" src="resources/ios/icon/icon@2x.png" width="114" />
<icon height="40" src="resources/ios/icon/icon-40.png" width="40" />
<icon height="80" src="resources/ios/icon/icon-40@2x.png" width="80" />
<icon height="120" src="resources/ios/icon/icon-40@3x.png" width="120" />
<icon height="50" src="resources/ios/icon/icon-50.png" width="50" />
<icon height="100" src="resources/ios/icon/icon-50@2x.png" width="100" />
<icon height="60" src="resources/ios/icon/icon-60.png" width="60" />
<icon height="120" src="resources/ios/icon/icon-60@2x.png" width="120" />
<icon height="180" src="resources/ios/icon/icon-60@3x.png" width="180" />
<icon height="72" src="resources/ios/icon/icon-72.png" width="72" />
<icon height="144" src="resources/ios/icon/icon-72@2x.png" width="144" />
<icon height="76" src="resources/ios/icon/icon-76.png" width="76" />
<icon height="152" src="resources/ios/icon/icon-76@2x.png" width="152" />
<icon height="167" src="resources/ios/icon/icon-83.5@2x.png" width="167" />
<icon height="29" src="resources/ios/icon/icon-small.png" width="29" />
<icon height="58" src="resources/ios/icon/icon-small@2x.png" width="58" />
<icon height="87" src="resources/ios/icon/icon-small@3x.png" width="87" />
<splash height="1136" src="resources/ios/splash/Default-568h@2x~iphone.png" width="640" />
<splash height="1334" src="resources/ios/splash/Default-667h.png" width="750" />
<splash height="2208" src="resources/ios/splash/Default-736h.png" width="1242" />
<splash height="1242" src="resources/ios/splash/Default-Landscape-736h.png" width="2208" />
<splash height="1536" src="resources/ios/splash/Default-Landscape@2x~ipad.png" width="2048" />
<splash height="2048" src="resources/ios/splash/Default-Landscape@~ipadpro.png" width="2732" />
<splash height="768" src="resources/ios/splash/Default-Landscape~ipad.png" width="1024" />
<splash height="2048" src="resources/ios/splash/Default-Portrait@2x~ipad.png" width="1536" />
<splash height="2732" src="resources/ios/splash/Default-Portrait@~ipadpro.png" width="2048" />
<splash height="1024" src="resources/ios/splash/Default-Portrait~ipad.png" width="768" />
<splash height="960" src="resources/ios/splash/Default@2x~iphone.png" width="640" />
<splash height="480" src="resources/ios/splash/Default~iphone.png" width="320" />
<icon height="57" src="resources\ios\icon\icon.png" width="57" />
<icon height="114" src="resources\ios\icon\icon@2x.png" width="114" />
<icon height="40" src="resources\ios\icon\icon-40.png" width="40" />
<icon height="80" src="resources\ios\icon\icon-40@2x.png" width="80" />
<icon height="120" src="resources\ios\icon\icon-40@3x.png" width="120" />
<icon height="50" src="resources\ios\icon\icon-50.png" width="50" />
<icon height="100" src="resources\ios\icon\icon-50@2x.png" width="100" />
<icon height="60" src="resources\ios\icon\icon-60.png" width="60" />
<icon height="120" src="resources\ios\icon\icon-60@2x.png" width="120" />
<icon height="180" src="resources\ios\icon\icon-60@3x.png" width="180" />
<icon height="72" src="resources\ios\icon\icon-72.png" width="72" />
<icon height="144" src="resources\ios\icon\icon-72@2x.png" width="144" />
<icon height="76" src="resources\ios\icon\icon-76.png" width="76" />
<icon height="152" src="resources\ios\icon\icon-76@2x.png" width="152" />
<icon height="167" src="resources\ios\icon\icon-83.5@2x.png" width="167" />
<icon height="29" src="resources\ios\icon\icon-small.png" width="29" />
<icon height="58" src="resources\ios\icon\icon-small@2x.png" width="58" />
<icon height="87" src="resources\ios\icon\icon-small@3x.png" width="87" />
<splash height="1136" src="resources\ios\splash\Default-568h@2x~iphone.png" width="640" />
<splash height="1334" src="resources\ios\splash\Default-667h.png" width="750" />
<splash height="2208" src="resources\ios\splash\Default-736h.png" width="1242" />
<splash height="1242" src="resources\ios\splash\Default-Landscape-736h.png" width="2208" />
<splash height="1536" src="resources\ios\splash\Default-Landscape@2x~ipad.png" width="2048" />
<splash height="2048" src="resources\ios\splash\Default-Landscape@~ipadpro.png" width="2732" />
<splash height="768" src="resources\ios\splash\Default-Landscape~ipad.png" width="1024" />
<splash height="2048" src="resources\ios\splash\Default-Portrait@2x~ipad.png" width="1536" />
<splash height="2732" src="resources\ios\splash\Default-Portrait@~ipadpro.png" width="2048" />
<splash height="1024" src="resources\ios\splash\Default-Portrait~ipad.png" width="768" />
<splash height="960" src="resources\ios\splash\Default@2x~iphone.png" width="640" />
<splash height="480" src="resources\ios\splash\Default~iphone.png" width="320" />
<icon height="1024" src="resources/ios/icon/icon-1024.png" width="1024" />
<splash height="2732" src="resources/ios/splash/Default@2x~universal~anyany.png" width="2732" />
</platform>
<preference name="webviewbounce" value="false" />
<preference name="UIWebViewBounce" value="false" />
<preference name="DisallowOverscroll" value="true" />
<preference name="android-minSdkVersion" value="19" />
<preference name="BackupWebStorage" value="none" />
<preference name="SplashMaintainAspectRatio" value="true" />
<preference name="FadeSplashScreenDuration" value="300" />
<preference name="SplashShowOnlyFirstTime" value="false" />
<preference name="SplashScreen" value="screen" />
<preference name="SplashScreenDelay" value="3000" />
<feature name="StatusBar">
<param name="ios-package" onload="true" value="CDVStatusBar" />
</feature>
<engine name="android" spec="^7.1.1" />
<engine name="ios" spec="4.5.5" />
<plugin name="cordova-plugin-app-version" spec="^0.1.9" />
<plugin name="cordova-plugin-device" spec="1.1.4" />
<plugin name="cordova-plugin-splashscreen" spec="~4.0.1" />
<plugin name="cordova-plugin-statusbar" spec="2.2.1" />
<plugin name="cordova-plugin-whitelist" spec="1.3.1" />
<plugin name="ionic-plugin-keyboard" spec="~2.2.1" />
<plugin name="cordova-sqlite-storage" spec="^2.3.3" />
</widget>
Plugins:
.git,cordova-plugin-app-version,cordova-plugin-console,cordova-plugin-device,cordova-plugin-splashscreen,cordova-plugin-statusbar,cordova-plugin-whitelist,cordova-sqlite-storage,ionic-plugin-keyboard
Android platform:
**************************************************************************
The "android" command is deprecated.
For manual SDK, AVD, and project management, please use Android Studio.
For command-line tools, use tools\bin\sdkmanager.bat
and tools\bin\avdmanager.bat
**************************************************************************
Invoking "C:\Android\tools\bin\avdmanager" list target
Available Android targets:==============] 100% Fetch remote repository...
----------
id: 1 or "android-23"
Name: Android API 23
Type: Platform
API level: 23
Revision: 3
----------
id: 2 or "android-25"
Name: Android API 25
Type: Platform
API level: 25
Revision: 3
----------
id: 3 or "android-26"
Name: Android API 26
Type: Platform
API level: 26
Revision: 2
----------
id: 4 or "android-27"
Name: Android API 27
Type: Platform
API level: 27
Revision: 3
----------
id: 5 or "android-28"
Name: Android API 28
Type: Platform
API level: 28
Revision: 4
Error retrieving iOS platform information: Error: cmd: Command failed with exit code 1 Error output:
'xcodebuild' is not recognized as an internal or external command,
operable program or batch file.
While it may include the same information, cordova info
is much less readable and also harder to copy from the command line.
Suggestion
Split cordova info
into two commands: cordova info
and cordova info --extended
. The first outputs a short list of the most important information (what platforms, plugins, versions, npm+node, OS etc.) and the second one also includes the complete config.xml
, Android targets information etc.
Issue Analytics
- State:
- Created 5 years ago
- Comments:8 (8 by maintainers)
Top Results From Across the Web
Cordova Command-line-interface (CLI) Reference
Command, Description. info, Generate project information. requirements, Checks and print out all the installation requirements for platforms specified.
Read more >cordova-docs/tips-and-workarounds-performance-readme.md ...
Improving native code, in Objective-C/Swift, Java, or WinJS (Cordova plugin code). In a Cordova app, all code that will usually be written is...
Read more >Module 1: Creating a Cordova Project - GitHub Pages
The platforms folder is where Cordova will build your application for different platforms (iOS, Android, etc). The contents of this folder will be...
Read more >Apache Cordova vs. PhoneGap: Differences & How They Work
Learn what Apache Cordova is, the difference between Apache & PhoneGap, how they both work, and how Apache enables web developers with Ionic....
Read more >Upgrading Cordova-Android Version to Meet Required ... - Ionic
This article provides additional information about this requirement. Therefore, Cordova apps ... Upgrade to Latest cordova-android Version.
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
https://github.com/apache/cordova-lib/pull/616 has been merged an improves the output a lot.
These are further enhancements to get to the desired state: https://github.com/apache/cordova-lib/issues/661 https://github.com/apache/cordova-lib/issues/660 https://github.com/apache/cordova-lib/issues/659