
- About
- Pricing
- Developer License instructions
- Standard License instructions
About
Electronic signature capture library for Android. Sign by touching the screen. Start as a normal app for demo. Requires internet connection. When used from external app saves/exports up to 5 signatures per week. Demo is free and it can be downloaded from Android Market here:
https://market.android.com/details?id=biz.binarysolutions.signature
You can scan the following QR code as well:

Signature Capture library is available for download on a number of alternative Android application stores. You can also download it directly from the following URL:
http://goo.gl/LqSN6
If you are an Android developer and you would like to request a new feature to be implemented, you can do it here:
http://signaturecapture.uservoice.com/
In case you need support with library integration and usage, you can always contact us at the following email address: support+sc@binarysolutions.biz. We'll do our best to respond promptly.
For signature saving and sharing check our application named Signature Share. It externally depends on Signature Capture so you will need both of them installed on your Android device. Signature Share is also free and it is available on Android Market here:
https://market.android.com/details?id=biz.binarysolutions.signature.share
Signature Share is open source application and you can access it's source code here:
http://code.google.com/p/signature-share/
For PDF signing check out our free application Fill and Sign PDF Forms. It also depends on Signature Capture library.
https://market.android.com/details?id=biz.binarysolutions.signature
You can scan the following QR code as well:

Signature Capture library is available for download on a number of alternative Android application stores. You can also download it directly from the following URL:
http://goo.gl/LqSN6
If you are an Android developer and you would like to request a new feature to be implemented, you can do it here:
http://signaturecapture.uservoice.com/
In case you need support with library integration and usage, you can always contact us at the following email address: support+sc@binarysolutions.biz. We'll do our best to respond promptly.
For signature saving and sharing check our application named Signature Share. It externally depends on Signature Capture so you will need both of them installed on your Android device. Signature Share is also free and it is available on Android Market here:
https://market.android.com/details?id=biz.binarysolutions.signature.share
Signature Share is open source application and you can access it's source code here:
http://code.google.com/p/signature-share/
For PDF signing check out our free application Fill and Sign PDF Forms. It also depends on Signature Capture library.
Pricing
| Demo/Trial |
|
Developer License instructions
We strongly advice that you use the free version during the application development and testing. Once you are done, switching to Developer License is an easy process.
Integration instructions, usage instructions and license information for Developer License are available in sample package here. Please go through the package before you decide to make a purchase.
Sample package does not contain JAR file. You get that one after the purchase.
Standard License instructions
Integration with Android application
If you want to use Signature Capture from your own Android application, all you have to do is to call the right activity and pass it a file name (with full path) where you want the captured signature to be stored. File has to have global writting permissions set and 'png' extension. Your application will receive notification when file is saved and ready for reading. Code snippets follow:
- Calling the Signature Capture activity
Intent intent = new Intent("biz.binarysolutions.signature.CAPTURE");
String keyCode = "biz.binarysolutions.signature.ActivationCode";
String keyFileName = "biz.binarysolutions.signature.FileName";
String keyTitle = "biz.binarysolutions.signature.Title";
String keyStrokeWidth = "biz.binarysolutions.signature.StrokeWidth";
String keyStrokeColor = "biz.binarysolutions.signature.StrokeColor";
String keyBackgroundColor = "biz.binarysolutions.signature.BackgroundColor";
String keyCrop = "biz.binarysolutions.signature.Crop";
String keyWidth = "biz.binarysolutions.signature.Width";
String keyHeight = "biz.binarysolutions.signature.Height";
String code = ""; // your purchase transaction id
String fileName = ""; // set the file name (global write permissions)
String title = ""; // optional, default is 'Signature Capture'
int strokeWidth = 10; // optional, default is 8
String strokeColor = "FF0000FF"; // optional, default is BLACK (FF000000)
String backgroundColor = "FF00FF00"; // optional, default is fully transparent
boolean crop = false; // optional, default is true
// allowed units: px, dp, dip, sp, pt, mm, in
String width = "300dp"; // optional, default is max
String height = "100dp"; // same as above
intent.putExtra(keyCode, code);
intent.putExtra(keyFileName, fileName);
intent.putExtra(keyTitle, title);
intent.putExtra(keyStrokeWidth, strokeWidth);
intent.putExtra(keyStrokeColor, strokeColor);
intent.putExtra(keyBackgroundColor, backgroundColor);
intent.putExtra(keyCrop, crop);
intent.putExtra(keyWidth, width);
intent.putExtra(keyHeight, height);
intent.setComponent(
new ComponentName(
"biz.binarysolutions.signature",
"biz.binarysolutions.signature.Capture"
)
);
startActivityForResult(intent, CAPTURE_REQUEST_CODE);
Important notes regarding the file name: Once again, file has to have global write permissions. This means that you will (most likely) store it on SD Card. Use one of the following methods in order to obtain writeable storage:
Environment.getExternalStorageDirectory()
Environment.getExternalStoragePublicDirectory()
You have to provide the full path name, including the extension (png). The file itself does not have to exist but all directories on the path have to. All file name restrictions that exist for Android (Linux) file system are valid here too.
- Receiving the result
@Override
protected void onActivityResult
(
int requestCode,
int resultCode,
Intent data
) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == CAPTURE_REQUEST_CODE) {
if (resultCode == RESULT_OK) {
String fileName = ""; // the same file name as above
Bitmap bitmap = BitmapFactory.decodeFile(fileName);
// do with bitmap whatever you like
} else {
String errorMessage = data.getStringExtra(
"biz.binarysolutions.signature.ErrorMessage");
}
}
}
If you would like to see the full working example, you can take a look at our application called Signature Share. It's source code is released under the Apache License 2.0 and it is available here: Signature Share project home.
Integration with Web site
You can also start Signature Capture from your web site shown in Android browser. In this case captured signature will not be saved on a device but uploaded to your server instead. Clickable link that will start Signature Capture activity is the following:
<a href="
intent:#Intent;
action=biz.binarysolutions.signature.CAPTURE;
S.biz.binarysolutions.signature.Title=Signature%20Capture;
i.biz.binarysolutions.signature.StrokeWidth=10;
S.biz.binarysolutions.signature.StrokeColor=FF0000FF;
S.biz.binarysolutions.signature.BackgroundColor=FF00FF00;
B.biz.binarysolutions.signature.Crop=false;
S.biz.binarysolutions.signature.Width=300dp;
S.biz.binarysolutions.signature.Height=100dp;
S.biz.binarysolutions.signature.ActivationCode=;
S.biz.binarysolutions.signature.UploadURL=
http%3A%2F%2Fwww.example.com%2Freceiver_script;
S.biz.binarysolutions.signature.SuccessURL=
http%3A%2F%2Fwww.example.com%2Fsuccess.html;
S.biz.binarysolutions.signature.FailureURL=
http%3A%2F%2Fwww.example.com%2Ffailure.html;
end">Click to capture signature!</a>
- 'href' value has to be in a single line! Example here is in multiple lines in order to fit on screen and be more clear.
- 'S.biz.binarysolutions.signature.Title=;' part is optional, if it is set it has to be encoded, default value is 'Signature Capture'.
- 'i.biz.binarysolutions.signature.StrokeWidth=10;' part is optional, default value is 8.
- 'S.biz.binarysolutions.signature.StrokeColor=FF0000FF;' part is optional, default value is FF000000.
- 'S.biz.binarysolutions.signature.BackgroundColor=FF00FF00;' part is optional, default value is 00000000 (fully transparent).
- 'B.biz.binarysolutions.signature.Crop=false;' part is optional, default value is true.
- 'S.biz.binarysolutions.signature.Width' and 'S.biz.binarysolutions.signature.Height' parts are optional, they represent the capture window width and height, respectively. Default values are max screen dimensions. Allowed units are: px, dp, dip, sp, pt, mm and in.
- Add your invoice id (if you have purchased the app via Plimus) or transaction id (if you have purchased the app via PayPal) right after 'ActivationCode=' and before the first next ';'.
- 'UploadURL' has to point to your server-side script and it has to be properly encoded. In this example, it is http://www.example.com/receiver_script
Look below for more info on handling the uploaded image on server side. - 'SuccessURL' and 'FailureURL' are optional parameters. Depending on the success of signature upload, application user will be directed to one of these two URL's afterwards.
The following snipped demonstrates how to fetch the file on server side in PHP:
<?php
$newFilePath = "./signature.png";
$fh = fopen($newFilePath, 'wb');
fwrite($fh, $GLOBALS["HTTP_RAW_POST_DATA"])
or die("unable to write data");
fclose($fh);
?>
The following snipped demonstrates how to fetch the file on server side in ASP.NET (code sample provided by Vu Nguyen):
Protected Sub Page_Load(ByVal sender As Object,
ByVal e As System.EventArgs) Handles Me.Load
Dim filePath = "" 'Set your file path and name here'
Using bmp As New System.Drawing.Bitmap(Request.InputStream)
bmp.Save(filePath, System.Drawing.Imaging.ImageFormat.Png)
End Using
End Sub
27 comments:
Great product, integrated securely into my service order web application within 30 minutes (intermediate programmer). Works great on xoom, Galaxy, and Droid/2/X so far. Looking to integrate PDF and time clock next.
I am a subscriber of Signature Capture V2.7
Any plan to support iPad/IOS?
@Ken: Not any time soon.
Far too expensive.
Any good android app is about £5 so why should we have to pay 20 times that?
@Anonymous:
1. License that you are talking about is for unlimited number of devices.
2. You really should not compare the price of our application with prices of other completely unrelated applications. You should instead compare it's price with the savings that you get with it.
I downloaded the the demo and it was working great. I am a photographer and wanted to use it for signing model releases and contracts. The problem is the price is outrageous! Standard apps do not cost that much, so I don't understand why the high price point. Its far beyond what I can afford and the monthly subscription is worthless because you have the have the net connection to use it. Sometimes I don't have that on a shoot.
@Liz P.: We will repeat our previous answer to Anonymous:
"You really should not compare the price of our application with prices of other completely unrelated applications. You should instead compare it's price with the savings that you get with it."
Hey, this is a great solution. I demo version it creates an empty signature.png file on the server and the app crashes. Do you know what the problem can be? Is it possible to send an ID together with the picture data so i can assign the signature to my data?
@David: yes, it is possible to send an ID data. Please contact the support at support+sc@binarysolutions.biz for further assistance.
I'm trying to use the demo to capture a signature to a webserver. When I click the link, the signature app pops up and allows me to save. When I click "Done" the app brings me back to the webpage. I have specified the correct Upload URL, but don't see the png being uploaded. What do I do to grab the file?
Thanks
@Anonymous: Please contact the support at support+sc@binarysolutions.biz for further assistance.
What is the "crop" Parameter for?
@Daywood: it crops out the signature, i.e. all whitespace around it is cut.
We would like to use this in our HTML portal on Android devices, capture signatures and send the data back in real time.
Can you indicate a URL to document that describes the format of the data sent back, or does it just submit a file (JPG, GIF or BMP) to a URL?
@Tim: Library submits a PNG file via POST request to given URL. Examples available on this page should be enough to get you started.
When I tried the Web usage, I get a "webpage not available" error. I am using the Motorola Xoom Browser.
@JohnA: please contact the support at support+sc@binarysolutions.biz for further assistance.
What types of devices/screens does this work best on? Resistive or capacitive? What was your test platform?
@Graham: Application has been tested on capacitive screens. It should work equally well on both types, with the proper input devices (stylus if finger does not work).
We're planning to use your signature capture library in one of our projects (an Android application). Our app is commercial and can be available on Android marketplace and can be downloaded by unlimited number of devices. We're looking for a license (for your signature capture library) to be used for our Android app, for unlimited number of devices. Could you let us know if your 'Developer License', priced at $299, is the way to go for us ?
@Sai Jithendra: Yes it is. Please make sure that you use free demo/trial version for integration and testing first. Once you are done with it, switching to Developer License is a one-step process.
We have been using your product successfully and it works very well. We had previously used the Canvas element in Android but the capture was very choppy, your capture is very smooth!
We have encountered a situation where we need to ensure that a signature was actually captured but have found that users can touch "Done" even without signing. Is there a way to detect that the signature image is actually blank or that the user didn't sign?
@David: no, library does not have such functionality. Perhaps you could do it on your own - empty signatures will contain only transparent pixels. However, you would not be able to deal with the case when users just put a dot instead of their signature.
i am facing the problem that when i click on a button to move into the sinaturecapture() function, the new activity of capturing the signature not appear. I have follow all the instructions given by you. Also the control of my app is moved into that function but the signature capture screen not appeared. Please help me in this. I need to finish it early
@snaresh22@gmail.com: It looks like you are not using our library but some alternative solution. Please contact support at support+sc@binarysolutions.biz
It would be great if I could change the color for my PDF`s that I get signed. Blue would be great for the legal side of things
@scubaguy112001: please add your request on our forum here: http://fillandsignpdfforms.uservoice.com/
Post a Comment