Commit Graph

154 Commits

Author SHA1 Message Date
bootstraponline 5965ef39fd Android mobile :reset now uses adb uninstall/pm install
The old clean.apk approach to resetting state doesn't work well. Using
instrumentation means the app is running when the data is deleted. It's better
to use the standard adb install/uninstall commands.

To make this faster, the apk is pushed to the device once (/data/local/tmp/) and
then installed from that location on each reset. Using the regular adb install
command is slow due to the file transfer speed.

Before uninstalling the app, it's stopped to prevent crashes. Some apps don't
like to be uninstalled while running.
2013-10-09 15:21:21 -04:00
Payman Delshad 1d5f0868b6 Implemented pinch in/out on Android. 2013-10-08 16:14:20 +02:00
bootstraponline a5da221ef4 Fix screenshot
Use Host GPU must be checked.
http://stackoverflow.com/questions/13800437/why-android-uiautomators-uidevicetakescreenshot-always-return-false-on-emulato
2013-10-04 13:22:30 -04:00
Payman Delshad bf14801493 Refactored setOrientation() for Android.
Appium throws "Set the orientation, but app refused to rotate." when
setting the orientation to landscape on Android, which was fixed by
calling the correct function. Also, made the code simpler by defining
portrait=(0 degree rotation) and landscape=(270 degree rotation)
regardless of current display rotation. Moreover, unfreeze device
rotation at the end.
2013-10-03 14:26:54 +02:00
Jonathan Lipps bd77c9ee36 put unlock_apk in build so it gets packaged up 2013-09-27 14:33:02 +01:00
Jonathan Lipps 3a1b921d77 make unlock.apk work for selendroid
and also take into account screenlock differences for 2.3.3
2013-09-27 13:51:34 +01:00
filmaj 0d3950994a Robust, device-friendly unlock. Added gitsubmodule for unlock_apk.
reset.sh now builds the apk. adbs unlockScreen method now invokes
unlock.apk. added a new small, focused module called device_state to handle determining state of emulators/devices. currently has a "isScreenLocked" function. unlockScreen in adb.js now 1) checks if screen is locked or not first before doing anything and 2) uses unlock.apk to do the unlocking.
2013-09-19 14:09:45 -07:00
bootstraponline aeacbd4644 Fix find_elements :id on Android
Don't error when there are no ids. Return an empty array.

Fix #1167
2013-09-16 16:06:10 -04:00
Jonathan Lipps 364050ce0c fix message 2013-09-16 18:01:55 +02:00
bootstraponline e754e91e62 Merge pull request #1164 from paymand/fix_for_keyevent
Fix for keyevent
2013-09-16 06:27:51 -07:00
Payman Delshad c3f4a2994e Make sure 'keyevent' works if metastate is null. 2013-09-16 15:26:49 +02:00
bootstraponline beb2202be7 Android packages may have underscores
var str = "mFocusedApp=AppWindowToken{41ac2030 token=Token{41797308
ActivityRecord{419b9290 u0 com.example.webviewapp_18_api/.MainActivity}}}";

// undefined
/mFocusedApp.+ ([a-zA-Z0-9\.]+)\/(\.?[^\}]+)\}/.exec(str)
2013-09-13 08:34:42 -04:00
Payman Delshad bb7ebef752 Make sure to pass the variables correctly for 'keyevent'. 2013-09-13 10:50:24 +02:00
Jonathan Lipps 0fb1d4e989 Merge pull request #1144 from bootstraponline/fix_screenshot
Fix screenshotStatus
2013-09-12 16:36:14 -07:00
Eric Plaster 38453c4847 Android support for meta state on key codes (i.e. long press the back key) 2013-09-12 13:14:18 -05:00
bootstraponline bb7affb9eb Fix screenshotStatus 2013-09-12 08:46:23 -04:00
bootstraponline 935e12bf6f Catch exception
command.getElement() may return null. Appium must catch exception or it'll crash with a NullPointerException.

Fix #1140
2013-09-11 12:37:08 -04:00
Dan Cuellar 385acf3b30 Fix --avd flag by removing double quotes (spawn doesn't like them, only exec) 2013-09-07 13:34:14 -07:00
bootstraponline b240e33938 Try harder to find devices 2013-09-06 17:00:58 -04:00
filmaj 44f5f86445 Lint fixes. 2013-09-04 14:35:40 -07:00
Jonathan Lipps 043a26131b Merge pull request #1105 from filmaj/android-bootstrap
Add a check for existence of `android` command in grunt-helpers.js.
2013-09-04 14:25:45 -07:00
filmaj 8e54a2100d Add a check for existence of android command in grunt-helpers.js. Expanded error messages in adb.js. Possibly related to #1064 2013-09-04 14:21:36 -07:00
bootstraponline 6844140adf uiautomator returns false on successful click.
To work around this bug, always return true.
2013-09-04 13:55:31 -04:00
bootstraponline 2e821dfb15 mobile: getStrings 2013-09-04 13:30:39 -04:00
Jonathan Lipps 83bef64566 Merge pull request #1091 from bootstraponline/compressed
mobile :enableCompressedLayoutHeirarchy
2013-09-04 10:21:23 -07:00
bootstraponline 45adb70313 Request compressed xml as device cap 2013-09-04 12:30:30 -04:00
bootstraponline ac39358069 Remove methods for Appium 1.0
https://github.com/appium/appium/issues/1076

Revert "Fix #776"

This reverts commit 3db7a09247.

Revert "Add search strings.xml value"

This reverts commit fb95cbd953.

Revert "Add mobile resolveId"

This reverts commit 6cb50d8edf.

Revert "Add search id"

This reverts commit 55c74dbf8d.
2013-09-03 19:24:54 -04:00
bootstraponline 28a76d4b7a Revert setCompressedLayoutHeirarchy 2013-09-03 09:40:01 -04:00
Jonathan Lipps 6875d3c625 fix stopCapture bug (fix #1084) 2013-09-02 06:35:40 -06:00
bootstraponline 62135c3a98 Merge pull request #1068 from angerborn/improve_scroll
Make scrollTo not only look for textview elements
2013-08-30 08:44:58 -07:00
bootstraponline b862f8b999 Merge pull request #1065 from drpy/master
Fix for issue #824
2013-08-30 08:33:31 -07:00
Payman Delshad 4a18323e4d get_attribute() should return a string value for seemingly boolean attributes. 2013-08-30 17:10:02 +02:00
Felix Angerborn e5ab9f4539 Make scrollTo not only look for textview elements 2013-08-30 13:25:10 +02:00
drpy 9a99dce206 Fix for issue #824 2013-08-29 22:20:04 +02:00
bootstraponline 2c969c50c3 Restore strings.xml support on API 18 2013-08-29 16:15:30 -04:00
bootstraponline bf08e60d24 Always setCompressedLayoutHeirarchy
Classes that are not useful for uiautomator, such as action_bar_overlay_layout,
no longer appear in source output.
2013-08-29 14:48:22 -04:00
Jonathan Lipps ac7b50b8b2 Merge pull request #1059 from bootstraponline/trim
trim get package
2013-08-29 09:27:41 -07:00
bootstraponline 0394c3f194 Add maven-android-sdk-deployer troubleshooting steps 2013-08-29 10:11:33 -04:00
Felix Angerborn dad46bea4f Made previously implemented GetSize available for android 2013-08-29 14:43:53 +02:00
bootstraponline 102e9e1410 trim get package 2013-08-29 08:12:04 -04:00
bootstraponline 2aca651647 Explain why text falls through to name 2013-08-28 13:07:39 -04:00
Felix Angerborn df5552c612 Use resource id if API >= 18 else use the old find by id 2013-08-28 17:06:19 +02:00
Felix Angerborn 5cdc090cc2 Now possible to use resource-id for finding elements. 2013-08-28 16:21:06 +02:00
Payman Delshad 8728e05127 Make sure manifest compilation works with API 17. 2013-08-28 15:51:56 +02:00
bootstraponline 2f121fea9a Fix build 2013-08-28 08:33:42 -04:00
bootstraponline 31c7be32c0 Merge pull request #1036 from paymand/android_drag
Support for drag/dragTo functions from Android API level 18.
2013-08-28 05:21:11 -07:00
Payman Delshad f148d6afef Support for drag/dragTo functions from Android API level 18. 2013-08-28 14:20:16 +02:00
rockbot f7b7a91c86 finishes modifications for parallel testing on multiple android devices connected to the same machine 2013-08-21 14:27:05 -07:00
rockbot de7bc0ccbc adds first round of modifications to get multiple real android devices using appium 2013-08-21 14:26:53 -07:00
rockbot dca1ba9a92 updates device list to be an array of objects, instead of an array of arrays 2013-08-21 14:26:38 -07:00