views:

1299

answers:

5

My company would dearly like to have an iPhone app which, among other functions, could capture a customer signature. A web app would be ideal but unfortunately, Mobile Safari doesn't appear to allow mouse movements to be captured by javascript. It traps them for screen manipulation. So my question is in two parts:

  1. Is there any way a web app could capture a signature from an iPhone?
  2. Failing that, is it possible to develop a proprietary iPhone app - one that would be installed only on our own iPhones and not through the App Store?
+9  A: 

If you're willing to have them "sign" using their finger as a pen then yes, on both counts. For the first, you'll probably use a canvas tag and the custom touch events generated by Mobile Safari. As the user drags the touch around, you maintain a list of touch points. You draw these as a line list on the canvas for feedback, and submit the list (encoded) as an AJAX postback. Apple gives information on Mobile Safari touch events; the capture, drawing and transmission, I guess you can handle. You can supress various Mobile Safari accoutrements with custom Webkit CSS properties.

The second, well, it's much the same - only you use a native application, rather than JavaScript. You'll probably get greater touch fidelity, and a smoother user experience.

Adam Wright
+1  A: 

If you just want people to trace out their signatures with their fingers, that's trivial but most people sign with a stylus of some kind. Tracing signatures with touches will produce a different signature than with a stylus.

The problem will be that the iPhone won't work with just any stylus. The screen is uses the body's own innate conductivity to detect touches. You have to use a specially engineered stylus.

TechZen
+1  A: 

Part 2 of your question- You will need an Enterprise iPhone Developer License to deploy the app to your group. There is information on Apple's site regarding the Enterprise Program.

daustin777
+1  A: 

Adam has pretty much answered your question, but I wanted to point out that iPhone styluses (styli?) are easy to buy on eBay, they are not a rare commodity at all. The special engineering has been done.

A webapp would have no problem with the capture as long as you are using OS 3.0 or greater. Earlier versions might handle it, but I would feel more comfortable committing to being able to make it work smoothly with the later versions.

Unless there were other needs for a proprietary app, I would go webapp all the way.

You can try finger signing yourself on this widgetpad scribble webapp to see if you find it acceptable.

GeoNomad
Cool! The code is a little over my head, but I'll figure it out. Thanks very much.
dsteele
A: 

Try http://www.supersignature.com works on iPad, iPhone, Android, Opera Mini (+all desktop browsers)

Brian