Absolute points are not supported int he latest versions for iOS, hence it needs to be relative points.
Refer this link. It should help you overcome your issue.
opened 03:23AM - 09 Mar 16 UTC
closed 10:15PM - 15 Mar 16 UTC
iOS
## The problem
IOS coordinate is reversed, vertical is x, horizontal is y, so s… wipe and tap coordinate not working after upgrade. Android platform works well, no change.
## Environment
- Appium version (or git revision) that exhibits the issue: 1.5.0
- Last Appium version that did not exhibit the issue (if applicable): 1.4.16
- Desktop OS/version used to run Appium: Mac 10.11.3
- Node.js version (unless using Appium.app|exe):
- Mobile platform/version under test: iphone 6s
- Real device or emulator/simulator:
- Appium CLI or Appium.app|exe:
## Details
After upgrade appium from 1.4.16 to 1.5.0, Appium::TouchAction.new.press(x: start_x, y: start_y).wait(duration).move_to(x: end_x, y: end_y).release.perform not working. I found start_x changed to start_y, start_y changed to start_x.
## Link to Appium logs
## Code To Reproduce Issue [ Good To Have ]
Not working: Appium::TouchAction.new.press(x: 300, y: 100).wait(500).move_to(x: 50, y: 100).release.perform. # swipe from right to left, ever worked in 1.4.16
If switch start_x and start_y, it works:
Appium::TouchAction.new.press(x: 100, y: 300).wait(500).move_to(x: 100, y: 50).release.perform

The swipe method was deprecated on java-client5.X (AppiumDriver#swipe(int, int, int, int, int) ).
Can someone share the best practice to overcome this change?
We have tried to use the TouchAction class however, it doesn’t seems to work properly.
TouchAction ta = new TouchAction(driver);
ta.press(x1, y1).waitAction(wait).moveTo(x2, y2).release().perform();