senthil
54600a9eaf
Fixed two issues:
1. When the device is locked, the python source prints and exists. The server sees this as an empty packet. We are using this to exit out of the connection 2. When we use just launch, we need to do safequit and detach. Otherwise we hang for ever
ios-deploy
Install and debug iPhone apps without using Xcode. Designed to work on unjailbroken devices.
Requirements
- Mac OS X. Tested on Snow Leopard only.
- You need to have a valid iPhone development certificate installed.
- Xcode must be installed, along with the SDK for your iOS version.
Usage
Usage: ./ios-deploy [OPTION]...
-d, --debug launch the app in GDB after installation
-i, --id <device_id> the id of the device to connect to
-c, --detect only detect if the device is connected
-b, --bundle <bundle.app> the path to the app bundle to be installed
-a, --args <args> command line arguments to pass to the app when launching it
-t, --timeout <timeout> number of seconds to wait for a device to be connected
-u, --unbuffered don't buffer stdout
-g, --gdbargs <args> extra arguments to pass to GDB when starting the debugger
-x, --gdbexec <file> GDB commands script file
-n, --nostart do not start the app when debugging
-I, --noninteractive start in non interactive mode (quit when app crashes or exits)
-L, --justlaunch just launch the app and exit lldb
-v, --verbose enable verbose output
-m, --noinstall directly start debugging without app install (-d not required)
-p, --port <number> port used for device, default: 12345
-r, --uninstall uninstall the app before install (do not use with -m; app cache and data are cleared)
-1, --bundle_id <bundle id> specify bundle id for list and upload
-l, --list list files
-o, --upload <file> upload file
-2, --to <target pathname> use together with upload file. specify target for upload
-V, --version print the executable version
Demo
- The included demo.app represents the minimum required to get code running on iOS.
make install
will install demo.app to the device.make debug
will install demo.app and launch a GDB session.
Notes
- With some modifications, it may be possible to use this without Xcode installed; however, you would need a copy of the relevant DeveloperDiskImage.dmg (included with Xcode). GDB would also run slower as symbols would be downloaded from the device on-the-fly.
Listing Device Ids
Device Ids are the UDIDs of the iOS devices. From the command line, you can list device ids this way:
system_profiler SPUSBDataType | sed -n -e '/iPod/,/Serial/p' | sed -n -e '/iPad/,/Serial/p' -e '/iPhone/,/Serial/p' | grep "Serial Number:" | awk -F ": " '{print $2}'
Description
Languages
Objective-C
59.7%
C
36.3%
Python
2.5%
JavaScript
1.5%