abufawwaz / marketlicensing

Automatically exported from code.google.com/p/marketlicensing
Apache License 2.0
0 stars 0 forks source link

License check sometimes "times out" #48

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
Every once in a while the license check times out (while I am on WiFi have good 
connectivity etc. etc.)

I have debugged the issue an narrowed it down to the fact that the 
ResultListener is created before the validator is added to the checks in 
progress queue.

Occasionaly ResultListener.verifyLicense is called before the validator was 
added. This then causes mValidator.verify(mPublicKey, responseCode, signedData, 
signature) to be skipped and then after a while the timeout will occur.

The solution reverse the order of following two code lines:

LicenseChecker.java:176

                mService.checkLicense(
                    validator.getNonce(), validator.getPackageName(),
                    new ResultListener(validator));
                mChecksInProgress.add(validator);

should be:

                mChecksInProgress.add(validator);
                mService.checkLicense(
                    validator.getNonce(), validator.getPackageName(),
                    new ResultListener(validator));

Best Regards,

Arjan Mels

Original issue reported on code.google.com by Arjan.Mels on 16 Jun 2012 at 6:50