A set of scripts to extract and merge meta data from iOS apps such as url schemes, app store id, supported iOS version etc. by scanning IPA files stored in your iTunes library on OS X.
To extract and store all your apps meta data into a JSON file call
./collectIPAMetaData.py -o myMetaData.json
The script tries to find IPAs in a set of default locations but can be asked to search your IPAs at specifiec directories or scan explicitly provided IPAs. Use the --help
argument to learn about the possible options.
If you want to merge your data with the one of this repository to create a pull request, use this command:
./mergeIPAMetaData.py -o ipaMetaData.json myMetaData.json ipaMetaData.json
Have a look at the statistics to see how much you added to the ipaMetaData.json
in place, e.g.
loading ipaMetaData.json
schemes: 576, apps: 312, bundles: 754
loading myMetaData.json
schemes: 244, apps: 104, bundles: 104
merging 2 bundle lists
schemes: 598, apps: 329, bundles: 774
In this case you added 20 new bundles to the collection but only 17 apps. This can happen since each version of an app will be preserved. 22 url schemes had been added due to the merge, meaning that even more apps will be connected via url schemes :)
To add new mappings in the schemeApps.json
format of iHasApp use this command:
./mergeIHasAppMappings.py -o schemeApps.json ignored/schemeApps.json ipaMetaData.json
This extractor and merger has been written by Heiko Behrens (twitter) to derive meta data for the OpenHandleURL.com, BeamApp and iHasApp. Parts of the plist logic is based on iOS-checkIPA.