Android Question Anyone who can convert .aar into a usable B4A library?

Pokmot

Member
Licensed User
Longtime User

DonManfred

Expert
Licensed User
Longtime User
They are using a XML Rest API. You can use okhttputils2 to send the requests.
 
Upvote 0

Pokmot

Member
Licensed User
Longtime User
The SDK reads the data from the IDTECH Shuttle; the data is encrypted and HTTP is used to send the data to the provider. The purpose of the SDK is to read the actual card being swiped using a hardware device: https://secure.networkmerchants.com...tion/integration_portal.php#supported_devices

We are creating a checkout app that reads a swiped card and completes a transaction. With the swipe we get much lower transaction fees and less liability for fraud.
 
Upvote 0

Pokmot

Member
Licensed User
Longtime User
By the way, I am happy for the finished product to be made available in the forum for anyone else who needs it for the future.
 
Upvote 0

DonManfred

Expert
Licensed User
Longtime User
The SDK reads the data from the IDTECH Shuttle
i don´t know what a IDTECH Shuttle is :)
the data is encrypted and HTTP is used to send the data to the provider
Yes, they send a http post request to their servers.
I have read the tutorials but willing to pay
So in fact your need a wrapper to use your Device, the Shuttle and his SwipeListener

IDTECH Shuttle
The Shuttle (referred to in code as a UniMag device) is an audio jack-connected card reader.

What are you willed to pay for a wrapper?

Notes:
- i do not know if it works at all. I do not have such a device to test.
- It´s a trial
- There are a lot of events which get raised. at the end it should raise an event with the transaction-url you then can send using okhttputils to their servers.
 

Attachments

  • PayGateV0.1.zip
    4.4 KB · Views: 214
Upvote 0

Pokmot

Member
Licensed User
Longtime User
Thanks for the feedback, Manfred.

I am using the following code to initialize the device:

B4X:
Sub Activity_Create(FirstTime As Boolean)
    Activity.LoadLayout("Main")
   
    Dim pg As SwipeController
    pg.Initialize("swipe", 30, True, True, "UNIMAG")
End Sub

And I am getting the following error: https://screenpresso.com/=ubXYf
Line 32 is: pg.Initialize("swipe", 30, True, True, "UNIMAG")

Note: If I spell it UniMag then I get "java.lang.IllegalArgumentException: No enum constant com.SafeWebServices.PaymentGateway.PGSwipeDevice.SwipeDevice.UniMag"

In the original documentation, the first parameter to Initialize is a pointer back to the object, this - what should I use in the B4A version?

lstw.swiper is my package name in Build Configurations; main is my main module.
 
Upvote 0

DonManfred

Expert
Licensed User
Longtime User
No need to upload the message as a screenshot. The error can be copied as text and posted in the forum using quote-tags or code tag

Try this version. I changed the initialisation step.

Also note that you need to prepare the permisions for this library. See the Documentation PDF

Start with using targed sdk in the manifest to 22 and add the permissions from the docu.
You later then can change it to target api 23 and use runtimepermission. Or you just start with 23 and go over the runtimepermissions tutorial.
 

Attachments

  • PayGateV0.11.zip
    5.6 KB · Views: 235
Upvote 0
Top