Educated guess: the UID may be the app's user id (UID). As far as I know, Android creates a unique user for each installed app for enforcing app-specific file system permissions. The licensing service probably checks that the requesting app process' user id matches the user id for the requested package. So it looks more like a security check and I'd assume that you cannot work around that, unless you'd run your request as that other user. And that's probably only possible on a rooted device.
On Thursday, February 6, 2014 7:54:17 AM UTC-6, 3c wrote: > > Does any-one has a solution to this? I would really need this to work! > Isn't there any way to check the license of one package from another > package? > > > On Thursday, January 23, 2014 8:47:16 AM UTC+1, 3c wrote: >> >> Hello, I was really wondering the same thing (for a different purpose), >> however no-one clearly answered your original question here, so I've >> actually tested it directly. >> >> First thing, I had to modify the LVL library to take a package name and >> version code as parameter instead of using the current app's information >> automatically. >> >> Without the other paid app installed, I received >> a ERROR_INVALID_PACKAGE_NAME. >> >> Once the other paid app was installed, I unfortunately received >> a ERROR_NON_MATCHING_UID. >> >> As I couldn't find any UID information in the LVL library, the answer is >> now pretty clear: it's not possible. >> >> >> On Thursday, January 6, 2011 1:27:25 AM UTC+1, andfan22 wrote: >>> >>> Hi all >>> >>> Just wondering if I can use LVL to check that the user is licensed to >>> use a DIFFERENT app from the current one -- ie. one with a different >>> package name. >>> >>> Why would I want to do this? I'm developing an app which I'm >>> considering publishing using a free + pro license model. The main app >>> would be a free, ad supported app. To turn off ads the user would >>> purchase a pro license key from the market (published as a paid app >>> containing no functionality). The user would continune to use the app >>> that was downloaded for free, which checks if the paid app is >>> installed, and if so it disables ads. I prefer this model to a fully >>> featured paid app model, as it eliminates the need to migrate data >>> from the free version to the paid when the user upgrades. >>> >>> Under this model I would like the free app to check if the paid app is >>> installed, and if so the free app would then use LVL to check if the >>> user has purchased the paid app via the market. Will it be possible >>> for the free app to pass the package name of the paid app to LVL, and >>> to get back a result confirming whether the paid app has been >>> purchased or not? >>> >>> Looking at the LVL source code I suspect I can do this by modifying >>> the constructor of LicenseChecker to set mPAckageName to a supplied >>> argument rather than setting it to mContext.getPackageName(). >>> >>> Are there any gotcha's I may be missing? >>> >>> Thanks ... >>> >> -- You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/android-developers?hl=en --- You received this message because you are subscribed to the Google Groups "Android Developers" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/groups/opt_out.

