So i set up my environment for testing Android In-App billing.
- My application Key is stored as a raw string to avoid any issue for now
- My application has the
BILLING
permission - My application is published in Closed Beta
- All my products (none are subscriptions) are tagged as
ACTIVE
- My Activity (the one which makes the call to Billing features) overrides
onActivityResult
- I use IABv3 to implement In-App Billing
- I can successfully get the
SkuDetails
of my products.
The issue is upon a call to :bp.purchase(activity, productId);
(ie starting a purchaseFlow), I get the following logs :
ActivityManager: START u0 {act=com.google.android.finsky.ACQUIRE dat=iabData:inapp:my.package
:productId
pkg=com.android.vending cmp=com.android.vending/com.google.android.finsky.billing.acquire.AcquireActivity (has extras)} from uid 10131 on display 0
D/com.android.server.am.ExtraActivityManagerService: MIUILOG- Permission Denied Activity : Intent { act=com.google.android.finsky.ACQUIRE dat=iabData:inapp:my.package
:productId
pkg=com.android.vending cmp=com.android.vending/com.google.android.finsky.billing.acquire.AcquireActivity (has extras) } pkg : com.android.vending uid : 10131 tuid : 10170
From what I see, everything works well until the PurchaseFlow starts (ie when the AcquireActivity
Intent
is launched). So the permisson is DENIED
but I can't understand why or how to fix it as the only mandatory permission is BILLING
and it is enabled.
Note : As IAB can only be tested through a real device, it may be an issue with MIUI
but I don't own any other device so I can't test if this is the issue.