Visa Developer Community

Regular Visitor

Fingerprint

Hi. I'm trying to integrate VisaCheckout SDK to my app. Payment on test environment works well, but if I check `fingerprint` checkbox while signing in, I've got this internal crash.

VisaCheckoutAndroidSdk-5.5.2

Android 8.1.0

Android gradle plugin 3.1.2

Android buildtools 27.0.3

 

05-07 13:42:59.495 1539-1539/dv.pay.app E/AndroidRuntime: FATAL EXCEPTION: main
    Process: dv.pay.app, PID: 1539
    java.lang.NullPointerException: throw with null exception
        at com.visa.internal.eo.<clinit>(Unknown Source:2390)
        at com.visa.internal.eo.ॱ(Unknown Source:0)
        at com.visa.internal.br.ʼ(:207)
        at com.visa.internal.bj$2.ˏ(:378)
        at com.visa.internal.b$2.run(:290)
        at android.os.Handler.handleCallback(Handler.java:790)
        at android.os.Handler.dispatchMessage(Handler.java:99)
        at android.os.Looper.loop(Looper.java:164)
        at android.app.ActivityThread.main(ActivityThread.java:6494)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807)

 PS. The manifest contains FINGERPRINT permissons. Also, there is a code which checks figerprint auth is set up and it seems fingerprint is available to use:

 

private fun initFingerPrint() {
        if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) {
            Log.d("###", "This Android version does not support fingerprint authentication.")
        }

        val keyguardManager: KeyguardManager = getSystemService(KEYGUARD_SERVICE) as KeyguardManager
        val fingerprintManager: FingerprintManager = getSystemService(FINGERPRINT_SERVICE) as FingerprintManager

        if (!keyguardManager.isKeyguardSecure) {
            Log.d("###", "User hasn't enabled Lock Screen")
        }

        if (ActivityCompat.checkSelfPermission(this, Manifest.permission.USE_FINGERPRINT) != PackageManager.PERMISSION_GRANTED) {
            Log.d("###", "User hasn't granted permission to use Fingerprint")
            return
        }

        if (!fingerprintManager.hasEnrolledFingerprints()) {
            Log.d("###", "User hasn't registered any fingerprints")
            return
        }
        Log.d("###", "Fingerprint authentication is set.\n")
    }

 

PPS. SDK initialization and usage code:

package dv.pay.app.ui.visa

import com.visa.checkout.Environment
import com.visa.checkout.Profile
import com.visa.checkout.PurchaseInfo
import java.math.BigDecimal

const val API_KEY = "BI0Z97V54UI244BTEICX21RzaaHSlS4VYjaaGqlwBPMivrDFU"
const val PROFILE = "SYSTEMDEFAULT"

fun createPurchase(): PurchaseInfo = PurchaseInfo
.PurchaseInfoBuilder(
BigDecimal("10.23"),
PurchaseInfo.Currency.USD
)
// .setShippingHandling(BigDecimal("0"))
// .setTax(BigDecimal("0"))
// .setDiscount(BigDecimal("0"))
// .setMisc(BigDecimal("0"))
// .setGiftWrap(BigDecimal("0"))
// .setDescription("Gift Card Order")
// .setOrderId("234-SD355-343432")
// .setReviewMessage("Gift Card Order")
// .setMerchantRequestId("345345345dsfs434343423234234")
// .setSourceId("test-source-id")
// .setPromoCode("test-promo-code")
// .setShippingAddressRequired(true)
// .setUserReviewAction(PurchaseInfo.UserReviewAction.PAY)
// .setThreeDSSetup(true, false)
// .setCustomData(hashMapOf("key" to "value"))
.build()

fun createPaymentProfile(): Profile = Profile
.ProfileBuilder(API_KEY, Environment.SANDBOX)
.setProfileName(PROFILE)
// .setDisplayName("DV pay demo")
// .setMerchantId("123")
// .setDataLevel(Profile.DataLevel.FULL)
// .setAcceptCanadianVisaDebit(true)
// .setEnableTokenization(true)
// .setCardBrands(cards)
// .setShippingCountries(shippingCountries)
// .setBillingCountries(billingCountries)
.build()

private val cards = arrayOf(
Profile.CardBrand.VISA,
Profile.CardBrand.MASTERCARD
)

private val shippingCountries = arrayOf(
Profile.Country.UA
)

private val billingCountries = arrayOf(
Profile.Country.UA
)

 

6 REPLIES
Community Scholar

Re: Fingerprint

Hi @Maksym,

 

We have an expert team that manages questions specific to this product. Please submit this inquiry to Developer@visa.com and someone will connect you to the expert team soon after.

 

 

Thanks,
Diana

Re: Fingerprint

Visa Checkout provides a single sign-in service to pay for online shopping purchases. After a simple setup, Visa Checkout users can skip inputting their payment and shipping information for their orders. Visa Checkout works across multiple devices so online shopping stays easy. i think you should contact visa support so you can explain your problem . they have a good response in solving solution!

hope this was helpfull for youSmiley Happy

regards-

adam lee

Plex |Tutuapp |Psiphon

Re: Fingerprint

hi,

the UK Border agency, which became completely independent this month, is already celebrating its first era failure - the machine with the aid of which candidates for united kingdom visas have to ship their fingerprints to London for checking went down final week.

A Reg reader were given in contact due to the fact his South American sister-in-regulation changed into having problem traveling the UK. She had her fingerprints taken and changed into told to go back on 8 April to pick out up her visa. Dabs are despatched to London for checking in opposition to a database of preceding candidates before a visa is issued. She had booked her flight as a consequence and again to the neighborhood uk embassy final Wednesday. Then she turned into instructed the machine became down, and had been intermittently since the second. team of workers have been unable to tell her whilst it would be running again.

uk visa applicants have needed to offer ten fingerprints and a virtual photo considering the fact that January.

A domestic workplace spokesperson said: “we are able to affirm that there was a small trouble with our 8db290b6e1544acaffefb5f58daa9d83 visa software method but this changed into quickly constant via the 6/four. This incident did now not have an effect on the integrity of our visa software structures and all candidates went through the ordinary stringent checks.” He changed into unable to make clear what triggered the problem.

New policiesonline for tremendously-skilled migrant workers to the United Kingdom got here into impact 31 March, day after today the United Kingdom Border employer have become a complete govt employer of the house workplace. 

regards 

        jayesh

Newbie

Re: Fingerprint

Wow, Really great i enjoy it very much here I appreciating your knowledge

Re: Fingerprint

This is solely required for migration to MoEngage Platform. We need your help to tell the SDK whether the user is a new user for on your app or an existing user who has updated to the latest version.

If the user was already using your application and has just updated to a new version which has MoEngage SDK it is an updated call the below API

Highlighted
Newbie

tutuappapk

That's an amazing post on tutuapp