https://github.com/osfunapps/os_ios_app_automation
Will prepare an iOS app by properties defined by a xml file
https://github.com/osfunapps/os_ios_app_automation
Last synced: 9 months ago
JSON representation
Will prepare an iOS app by properties defined by a xml file
- Host: GitHub
- URL: https://github.com/osfunapps/os_ios_app_automation
- Owner: osfunapps
- License: mit
- Created: 2021-01-25T14:34:02.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2021-12-23T09:01:02.000Z (over 4 years ago)
- Last Synced: 2025-07-28T15:41:11.990Z (11 months ago)
- Language: Python
- Size: 11.7 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
Introduction
------------
This module aim to assist with an iOS/OSX app buildup.
To use, create an XML file with your app properties and run.
## Installation
Install via pip:
pip install os-ios-app-automation
## Usage:
Will build an XCode project by a predefined xml file.
- [xml example 1](/examples/example_1.xml):
```xml
/path/to/xcode/project
my_root_dir_name
my_root_dir_name.xcodeproj
com.mybundleid
app name
true
$app_path/files/res/Info.plist
$app_path/files/res/AppIcon.appiconset
.zip
.xml
my_root_dir_name/rel/path/to/dir
my_root_dir_name/GoogleService-Info.plist
path/in/computer/to/look/for
GoogleService-Info.plist
my_root_dir_name/GoogleService-Info.plist
path/in/computer/search
dir_to_search
my_root_dir_name/Dynamic Resources/Main
path/to/text/file.txt
my_root_dir_name/Dynamic Resources/Main/copied_text_file.txt
use_frameworks!
platform :ios, '10.0'
source 'https://github.com/CocoaPods/Specs.git'
pod 'Zip', '~> 1.1'
pod 'SWXMLHash', '~> 5.0.0'
path/to/amazon/fling.framework
custom
ExternalAccessory.framework
system
AudioToolbox.framework
system
StoreKit.framework
system
```
After your created the xml file, call it from code, to build your XCode project.
```python
from os_ios_app_automation import app_automation as xm
xm.set_xcode_project_by_xml('/path/to/your/xml_file.xml',
place_holder_map = {'$app_path': '/path/to/a/dynamic/directory'})
```
## Advanced usage
You can also extend an XML file to another one.
Inheritance in this sense can help you if you're interested in sharing a behaviour between a bunch of XML files.
- [child xml](/examples/example_2.xml):
```xml
com.my_identifier
My cool app
pod 'AnotherPod'
pod 'AndAnotherPod'
```
- [parent xml](/examples/shared_mapper.xml):
```xml
path/to/project/root
projects_root_dir_name
projects_root_dir_name.xcodeproj
$app_path/files/res/Info.plist
$app_path/files/res/AppIcon.appiconset
.zip
.xml
projects_root_dir_name/Dynamic Resources
projects_root_dir_name/GoogleService-Info.plist
# reachability, to get wifi events
use_frameworks!
# os libraries
pod 'OsUIViews'
pod 'OsTools'
audiotoolbox.framework
system
externalaccessory.framework
system
storekit.framework
system
./path/to/text/mapper.xml
$project_path
path/to/project/root
```
That's it.
## Links
[GitHub - osapps](https://github.com/osfunapps)
[GitHub - os-android-app-automation](https://github.com/osfunapps/os-android-app-automation-py)
## Licence
ISC