63 Commits
1.0.6 ... 1.3.0

Author SHA1 Message Date
Shazron Abdullah
7a447b480f Fixes phonegap/ios-deploy#79 - Update README.md for sample usage of ios-deploy flags and options 2014-11-13 23:47:50 -08:00
Shazron Abdullah
021c222a55 Update README. Removed gdbargs, gdbexec. Added download. 2014-11-13 23:24:51 -08:00
Shazron Abdullah
63303ea4b0 Removed unused gdbargs and gdbexec options. 2014-11-13 23:24:27 -08:00
Shazron Abdullah
5bfc25376a Update package.json version to 1.3.0 2014-11-13 22:58:18 -08:00
Shazron Abdullah
7075657015 Fixes phonegap/ios-deploy#74 - SIGSEGV-ed while listing the sandbox of an application on iOS8 2014-11-13 22:57:58 -08:00
Shazron Abdullah
6f662ae450 Fixes phonegap/ios-deploy#37 - AMDeviceValidatePairing fails when uninstalling 2014-11-13 17:33:44 -08:00
Shazron Abdullah
4617a7df59 Merge pull request #72 from CSOscarTanner/master
Fixed problem with the parser of the value of the parameter -i.
2014-11-12 16:22:33 -08:00
Shazron Abdullah
7ca72695b6 Merge pull request #68 from senthilmanick/master
Fixed the hang when the device is locked.

When the device is locked, we get empty packets in the server.
Now fixed by closing both the lldb and server sockets.
Also after safequit, we need to detach to make the "justlaunch" option to be less error prone.

Multiple bug fixes: 
1. When multiple devices are connected, the detect was not listing all the devices ios-deploy -c -t 1
2. Fixes for issue #75 - non-interactive mode broken lldb and ios-deploy may still be running ios-deploy -b ... -d -I -L
3. Fixes for issue #60 - -L option not working properly ios-deploy will not quit or sometimes hang
4. When multiple devices are connected, cannot use -i option to specify the device ios-deploy -b ... -i -d -I -L
5. Allow timeout when downloading
2014-11-12 16:11:52 -08:00
senthil
dbe381112a Removed the wrong comment 2014-11-12 16:23:20 -05:00
senthil
72caad4526 Allow timeout for download and run 2014-11-12 16:15:53 -05:00
senthil
06187e348a updated the version to 1.3.0 2014-11-12 12:04:47 -05:00
senthil
b4f91912ee fixed the lauch using python 2014-11-11 20:15:39 -05:00
senthil
b796b70e29 updated the version 2014-11-07 18:43:02 -05:00
senthil
1a309dcebf Merge branch 'disk-image-fix' of https://github.com/eddieh/ios-deploy
Conflicts:
	ios-deploy.c
2014-11-07 18:40:28 -05:00
Eddie Hillenbrand
049a89e873 Fix for mismatched build numbers. 2014-11-04 12:35:14 -08:00
Eddie Hillenbrand
4aa233d147 Allow the symbols and the disk images to be in different DeviceSupport directories. 2014-11-03 16:09:36 -08:00
CSOscarTanner
d51bb22f23 Fixed problem with the parser of the value of the parameter -i. 2014-10-21 14:33:33 -02:00
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
2014-10-13 17:20:52 -04:00
senthil
d86b0cad0d Merged with phone-gap and fixed the hang 2014-10-13 16:59:19 -04:00
senthil
029d22ecef added iPhone 6 2014-10-09 14:29:15 -04:00
Shazron Abdullah
63917d796b Added scripts for buildbox. 2014-10-07 14:35:45 -07:00
Shazron Abdullah
0b89be65bd Merge pull request #67 from dot-asm/master
Add download option.
2014-10-07 11:04:10 -07:00
Andy Polyakov
7742c5d532 Allow --list and --download to pick specific subdirectories.
Note that in a way it introduces inconsistency with help message.
This is because arguments to --list and --download are optional
and has to be passed with '=', e.g. --list=/Documents.
2014-10-07 11:23:33 +02:00
Andy Polyakov
9f0c8a85c6 Add download option.
Unlike upload option, download pulls down whole tree. For this reason
--to is expected to be directory path.
2014-10-07 09:23:34 +02:00
Shazron Abdullah
c57f208422 Update version to 1.2.0 2014-10-06 22:09:39 -07:00
Shazron Abdullah
0467b69fd8 Merge pull request #66 from dot-asm/master
Fix AFCFileRef[Read|Write] prototypes
2014-10-06 21:56:59 -07:00
Shazron Abdullah
77116e3f7c Merge pull request #65 from alexmipego/lldb-python-connect-fix
Fix lldb status checking
2014-10-06 21:55:19 -07:00
Andy Polyakov
4589cd5d05 arrange callback in read_dir for future use
Custom callback is called for every file or directory listed on device. This will be used for file download.
2014-10-06 23:16:40 +02:00
Andy Polyakov
9a2da6f642 Fix usage semantic and pair of resource leaks
AFCConnectionOpen and AFCFIleInfoOpen don't require initialized pointer to pointer to result, but do require corresponding Close calls.
2014-10-06 23:02:06 +02:00
Andy Polyakov
23afce0d37 handle no --args
When no --args are passed application was started with {args} as argument instead of no argument.
2014-10-06 22:40:43 +02:00
Andy Polyakov
4869a343e8 fix AFCFileRef[Read|Write] prototypes
Incorrect AFCFileRefRead prototype was causing crashes in 64-bit build when reading large files.
2014-10-06 22:32:36 +02:00
Alexandre Gomes
bf5a1e065e fix lldb status checking 2014-10-06 13:36:31 +01:00
senthil
6bd90a5133 a minor debugging version 2014-09-02 16:18:33 -04:00
Shazron Abdullah
e2f436ad52 Merge pull request #57 from hinesmr/patch-1
Include iPods for device search in the README "Listing Device IDs" section.
2014-08-29 16:36:51 -07:00
Michael R. Hines
35097bd5a0 Don't forget about iPods too =)
Update the readme to include iPods in the device identifier search.
2014-08-19 19:51:20 +08:00
senthilmanick
c85248c88a Merge pull request #1 from phonegap/master
Merge with main
2014-08-05 19:12:45 -04:00
Shazron Abdullah
0f1ef6f4ef Fixes #54 - Publish 1.1.0 version 2014-08-04 19:07:31 -07:00
Shazron Abdullah
6801052024 Merge pull request #53 from senthilmanick/master
Fixes #51 - When the device is locked, ios-deploy hangs.
Fixes #52 - Enhancement: Add "Just launch" option
2014-08-04 18:56:51 -07:00
senthil
616b6ab1ff updated to version 1.0.10 2014-08-03 13:43:38 -04:00
senthil
55a12cb02e Fix for issues 51 and 52
51: Updated the python:run_command to look for : Locked.
52: Added option -L that is a variation of non-interactive
Added the constant with safequit and implemented the equivalent python
2014-08-03 12:56:17 -04:00
Shazron Abdullah
5f90ebb32b Fixes #50 - Publish 1.0.9 version 2014-08-01 15:20:24 -07:00
Shazron Abdullah
54a62bfdd0 Fixes #49 - Update README with new help text #49 2014-07-31 17:49:44 -07:00
Alexandre Gomes
3799a8a535 Implements #48 - Wifi Support & Checks
Signed-off-by: Shazron Abdullah <shazron@gmail.com>
2014-07-31 12:42:54 -07:00
Neo Alienson
e466aeac66 Implements #42 - Merge file listing feature from phildrip/fruitstrap.
Signed-off-by: Shazron Abdullah <shazron@gmail.com>
2014-07-30 16:26:04 -07:00
Shazron Abdullah
ffe40a0fac Merge pull request #43 from black-square/master
--args command supports arguments with spaces
2014-07-29 16:54:03 -07:00
Dmitriy Shesterkin
c5d206b72c Added an ability to pass arguments with space character to the application by using the command "--args":
./ios-deploy  ...  --args "\"TEST_FILTER=some text here\" arg2 arg3"
2014-06-27 14:53:57 -03:00
Shazron Abdullah
6fc2ee5e38 Updated npm version to 1.0.8 2014-05-12 18:09:05 -07:00
Shazron Abdullah
443abe4d38 Updated version to 1.0.8 2014-05-12 18:05:45 -07:00
Shazron Abdullah
42a7dbcc1f Updated README for --uninstall option. 2014-05-09 16:57:46 -07:00
Shazron Abdullah
4f9afb7499 Update version to 1.0.7 2014-05-09 16:53:41 -07:00
Shazron Abdullah
f7283216ef Merge pull request #35 from wjywbs/remove-app
Fixes #35 - Add uninstall feature.
2014-05-09 16:51:37 -07:00
wjywbs
cfb086ee44 Add uninstall feature. 2014-05-09 16:02:51 -04:00
Shazron Abdullah
9e52fd16d7 Added CONTRIBUTING file 2014-05-01 23:11:25 -07:00
Shazron Abdullah
6c42fd3cf9 Merge pull request #33 from Unity-Technologies/master
Fix for lldb's "^D" and "quit" spam when running without a terminal.
2014-04-29 17:35:50 -07:00
Julius Trinkunas
3ee1bca513 Stop lldb's "^D" and "quit" spam in a non terminal environment. 2014-04-29 14:33:00 +03:00
Julius Trinkunas
0a9418a564 Add friendly message for code-signing check fails. 2014-04-29 14:33:00 +03:00
Shazron Abdullah
72e83d06e1 Merge pull request #27 from oNaiPs/better_sdk_makefile
Better sdk makefile
2014-04-03 12:35:22 -07:00
Shazron Abdullah
bab1d5bded Merge pull request #26 from oNaiPs/fix_402653028_error
Added version to Info.plist file, fixes -402653028 error
2014-04-03 12:34:40 -07:00
Jose Pereira
f0d5d58a8b Separated sdk version from full path, easier to set after updates 2014-04-03 11:45:57 -07:00
Jose Pereira
8fc098a877 Added version to Info.plist file, fixes -402653028 error 2014-04-03 11:42:57 -07:00
Shazron Abdullah
bad5fe321b Merge pull request #25 from Unity-Technologies/master
Fix exiting and propagate app exit code in non interactive mode.
2014-04-02 10:35:05 -07:00
Julius Trinkunas
79c4cc5c6a Fix exiting and propagate app exit code in non interactive mode. 2014-04-01 16:20:14 +03:00
Shazron Abdullah
f54f67c418 Added the two new flags from 1.0.6 to the README 2014-03-27 15:32:19 -07:00
9 changed files with 1018 additions and 113 deletions

5
.gitignore vendored
View File

@@ -1,5 +1,6 @@
demo
demo.app
ios-deploy
/.DS_Store
ios-deploy.dSYM
/.DS_Store
*~

31
CONTRIBUTING.md Normal file
View File

@@ -0,0 +1,31 @@
## Contributing to ios-deploy
Github url:
https://github.com/phonegap/ios-deploy
Git clone url:
https://github.com/phonegap/ios-deploy.git
## Filing an issue
Please run the commands below in your Terminal.app and include it in the issue:
```
1. sw_vers -productVersion
2. ios-deploy -V
3. xcodebuild -version
4. xcode-select --print-path
5. gcc --version
6. lldb --version
```
Also include **command line arguments** you used for ios-deploy.
## Sending a Pull Request
Please **create a topic branch** for your issue before submitting your pull request. You will be asked to re-submit if your pull request contains unrelated commits.
Please elaborate regarding the problem the pull request is supposed to solve, and perhaps also link to any relevant issues the pull request is trying to fix.

View File

@@ -10,6 +10,8 @@
</array>
<key>CFBundleExecutable</key>
<string>demo</string>
<key>CFBundleVersion</key>
<string>1.0</string>
<key>CFBundleIdentifier</key>
<string>demo</string>
<key>CFBundleResourceSpecification</key>

View File

@@ -1,6 +1,8 @@
IOS_SDK_VERSION = 7.1
IOS_CC = gcc -ObjC
IOS_SDK = $(shell xcode-select --print-path)/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk
DEVICE_SUPPORT = $(shell xcode-select --print-path)/Platforms/iPhoneOS.platform/DeviceSupport
IOS_SDK = $(shell xcode-select --print-path)/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS$(IOS_SDK_VERSION).sdk
all: clean ios-deploy

View File

@@ -396,11 +396,11 @@ afc_error_t AFCFileRefOpen(afc_connection *conn, const char *path,
afc_error_t AFCFileRefSeek(afc_connection *conn, afc_file_ref ref,
unsigned long long offset1, unsigned long long offset2);
afc_error_t AFCFileRefRead(afc_connection *conn, afc_file_ref ref,
void *buf, unsigned int *len);
void *buf, size_t *len);
afc_error_t AFCFileRefSetFileSize(afc_connection *conn, afc_file_ref ref,
unsigned long long offset);
afc_error_t AFCFileRefWrite(afc_connection *conn, afc_file_ref ref,
const void *buf, unsigned int len);
const void *buf, size_t len);
afc_error_t AFCFileRefClose(afc_connection *conn, afc_file_ref ref);
afc_error_t AFCFileInfoOpen(afc_connection *conn, const char *path, struct
@@ -453,6 +453,8 @@ typedef int (*am_device_install_application_callback)(CFDictionaryRef, int);
mach_error_t AMDeviceInstallApplication(service_conn_t socket, CFStringRef path, CFDictionaryRef options, am_device_install_application_callback callback, void *user);
mach_error_t AMDeviceTransferApplication(service_conn_t socket, CFStringRef path, CFDictionaryRef options, am_device_install_application_callback callbackj, void *user);
int AMDeviceSecureUninstallApplication(int unknown0, struct am_device *device, CFStringRef bundle_id, int unknown1, void *callback, int callback_arg);
/* ----------------------------------------------------------------------------
* Semi-private routines
* ------------------------------------------------------------------------- */
@@ -491,4 +493,4 @@ typedef unsigned int (*t_performOperation)(struct am_restore_device *rdev,
}
#endif
#endif
#endif

View File

@@ -1,16 +1,16 @@
ios-deploy
==========
Install and debug iPhone apps without using Xcode. Designed to work on unjailbroken devices.
Install and debug iOS apps without using Xcode. Designed to work on un-jailbroken 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.
* Mac OS X. Tested on 10.10 Yosemite and iOS 8.1
* You need to have a valid iOS development certificate installed.
* Xcode 6.1 should be installed
## Usage
./ios-deploy [OPTION]...
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
@@ -18,13 +18,45 @@ Install and debug iPhone apps without using Xcode. Designed to work on unjailbro
-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)
-V, --version print the executable version
-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
-w, --download download app tree
-2, --to <target pathname> use together with up/download file/tree. specify target
-V, --version print the executable version
## Examples
The commands below assume that you have an app called `my.app` with bundle id `bundle.id`. Substitute where necessary.
// deploy and debug your app to a connected device
ios-deploy --debug --bundle my.app
// deploy and launch your app to a connected device, but quit the debugger after
ios-deploy --justlaunch --debug --bundle my.app
// deploy and launch your app to a connected device, quit when app crashes or exits
ios-deploy --noninteractive --debug --bundle my.app
// Upload a file to your app's Documents folder
ios-deploy --bundle_id 'bundle.id' --upload test.txt --to Documents/test.txt
// Download your app's Documents, Library and tmp folders
ios-deploy --bundle_id 'bundle.id' --download --to MyDestinationFolder
// List the contents of your app's Documents, Library and tmp folders
ios-deploy --bundle_id 'bundle.id' --list
// deploy and debug your app to a connected device, uninstall the app first
ios-deploy --uninstall --debug --bundle my.app
## Demo
* The included demo.app represents the minimum required to get code running on iOS.
@@ -33,11 +65,11 @@ Install and debug iPhone apps without using Xcode. Designed to work on unjailbro
## 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.
* 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). lldb 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](http://javierhz.blogspot.com/2012/06/how-to-get-udid-of-iphone-using-shell.html):
system_profiler SPUSBDataType | sed -n -e '/iPad/,/Serial/p' -e '/iPhone/,/Serial/p' | grep "Serial Number:" | awk -F ": " '{print $2}'
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}'

File diff suppressed because it is too large Load Diff

View File

@@ -1,7 +1,7 @@
{
"name": "ios-deploy",
"version": "1.0.6",
"description": "launch iOS apps iOS devices from the command line (Xcode 4)",
"version": "1.3.0",
"description": "launch iOS apps iOS devices from the command line (Xcode 6)",
"main": "ios-deploy",
"scripts": {
"preinstall": "make ios-deploy"

3
resources/buildbox/build.sh Executable file
View File

@@ -0,0 +1,3 @@
#!/usr/bin/env bash
echo "$ make"
make