Status Update
Comments
ne...@google.com <ne...@google.com> #2
Now as you mentioned it's occurring on all devices I'm happy to investigate it further.
- Can you provide more details about the affected devices?
- Also can you please tell me if you're using new Play install referrer API ? If so are you directly importing the AIDL instead of using Play Install Referrer API Client Library?
jk...@gmail.com <jk...@gmail.com> #3
I am using the Play Install Referrer API Client. The crash, in the last 30 days, has been on over 100 users, over 389 instances total.
The crash in Fabric can be seen at
samsung 46%
mobiistar 7%
LENOVO 6%
HUAWEI 5%
Other… 36%
Operating Systems
Nougat 35%
Marshmallow 33%
Lollipop 30%
Oreo 2%
ne...@google.com <ne...@google.com> #4
is...@google.com <is...@google.com>
vi...@google.com <vi...@google.com>
[Deleted User] <[Deleted User]> #5
[Deleted User] <[Deleted User]> #6
I had used this lib version : implementation 'com.android.installreferrer:installreferrer:1.1.1'
ma...@oyorooms.com <ma...@oyorooms.com> #7
Devices
vivo80%
OPPO20%
Operating Systems
9 - 80%
5 - 20%
Are your engineer still working on this issue? 2 years have been passed still no reply from google team.
Now google has also stopped the use of InstallReferrerBroadCast.
And not it will really affect the attribution of many apps.
ma...@oyorooms.com <ma...@oyorooms.com> #8
ma...@oyorooms.com <ma...@oyorooms.com> #9
is any one from google team try to look into it?
Fatal Exception: java.lang.SecurityException
Not allowed to bind to service Intent { act=com.google.android.finsky.BIND_GET_INSTALL_REFERRER_SERVICE cmp=com.android.vending/com.google.android.finsky.externalreferrer.GetInstallReferrerService }
Devices
61% - Xiaomi
8% - HUAWEI
8% - OPPO
6% - samsung
17% - Other (7)
Android Version
79% - Android 9
9% - Android 8
6% - Android 10
3% - Android 5
3% - Other (1)
ma...@oyorooms.com <ma...@oyorooms.com> #10
si...@old.busybusy.com <si...@old.busybusy.com> #11
[Deleted User] <[Deleted User]> #12
ce...@gmail.com <ce...@gmail.com> #13
bi...@spotify.com <bi...@spotify.com> #14
[Deleted User] <[Deleted User]> #15
If other apps work in the same way, storing the referrer info will be one of the first things done after installation, and if a user hits a crash right after install it's pretty poor UX!
And as others have said, this issue will start to become a lot more prevalent now apps have to use the referrer library and can't use the Intent mechanism we had available before.
ce...@gmail.com <ce...@gmail.com> #16
sh...@freecharge.com <sh...@freecharge.com> #17
sz...@gmail.com <sz...@gmail.com> #18
+1
jo...@gtempaccount.com <jo...@gtempaccount.com> #19
ze...@gmail.com <ze...@gmail.com> #20
an...@jobhai.com <an...@jobhai.com> #21
an...@jobhai.com <an...@jobhai.com> #22
Sharing some crash data -
This issue has 16 crashes affecting 3 users
OEM - vivo
Android Version 5.1.1
[Deleted User] <[Deleted User]> #23
I am also facing the same issue. I tried adding the permission, but that doesn't seem to have solved the issue. Attaching my crash log
Fatal Exception: java.lang.SecurityException: Not allowed to bind to service Intent { act=com.google.android.finsky.BIND_GET_INSTALL_REFERRER_SERVICE cmp=com.android.vending/com.google.android.finsky.externalreferrer.GetInstallReferrerService }
at android.app.ContextImpl.bindServiceCommon(ContextImpl.java:1939)
at android.app.ContextImpl.bindService(ContextImpl.java:1903)
at android.content.ContextWrapper.bindService(ContextWrapper.java:539)
at com.android.installreferrer.api.InstallReferrerClientImpl.startConnection(InstallReferrerClientImpl.java:38)
at com.greedygame.core.GreedyGameAds$Companion$b.a(GreedyGameAds.java:20)
at a.a.b.a.invoke(a.java:147)
at com.greedygame.core.GreedyGameAds$b$a.run(GreedyGameAds.java:2)
at android.os.Handler.handleCallback(Handler.java:815)
at android.os.Handler.dispatchMessage(Handler.java:104)
at android.os.Looper.loop(Looper.java:194)
at android.app.ActivityThread.main(ActivityThread.java:5660)
at java.lang.reflect.Method.invoke(Method.java)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:963)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:758)
80 Crashes so far on a wide variety of devices.
li...@google.com <li...@google.com>
li...@google.com <li...@google.com>
pr...@gmail.com <pr...@gmail.com> #24
I am also facing the same issue. I tried adding the permission, but that doesn't seem to have solved the issue
I have added only the below reference into my build.gradle to get an install referral from the play store but I am getting this error and it is a lot.
implementation 'com.android.installreferrer:installreferrer:2.1'
Error:
```
java.lang.SecurityException
Not allowed to bind to service Intent { act=com.google.android.finsky.BIND_GET_INSTALL_REFERRER_SERVICE cmp=com.android.vending/com.google.android.finsky.externalreferrer.GetInstallReferrerService launchParam=MultiScreenLaunchParams { mDisplayId=NUM mFlags=NUM } }
```
ja...@gmail.com <ja...@gmail.com> #25
mReferrerClient = newBuilder(Activity***.this).build();
mReferrerClient.startConnection(Activity***.this); //this line is creating trouble
Fatal Exception: java.lang.SecurityException: Not allowed to bind to service Intent { act=com.google.android.finsky.BIND_GET_INSTALL_REFERRER_SERVICE cmp=com.android.vending/com.google.android.finsky.externalreferrer.GetInstallReferrerService }
at android.app.ContextImpl.bindServiceCommon(ContextImpl.java:1824)
at android.app.ContextImpl.bindService(ContextImpl.java:1788)
at android.content.ContextWrapper.bindService(ContextWrapper.java:539)
at com.android.installreferrer.api.InstallReferrerClientImpl.startConnection(InstallReferrerClientImpl.java:35)
at com.talkhome.ui.HomeScreenActivity_Caraousel$3$1.run(****.java:273)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5345)
at java.lang.reflect.Method.invoke(Method.java)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:947)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:742)
ra...@gmail.com <ra...@gmail.com> #26
yo...@gmail.com <yo...@gmail.com> #27
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3319)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3415)
at android.app.ActivityThread.access$1100(ActivityThread.java:229)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1821)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:7325)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)
Caused by: java.lang.SecurityException: Not allowed to bind to service Intent { act=com.google.android.finsky.BIND_GET_INSTALL_REFERRER_SERVICE cmp=com.android.vending/com.google.android.finsky.externalreferrer.GetInstallReferrerService }
at android.app.ContextImpl.bindServiceCommon(ContextImpl.java:1460)
at android.app.ContextImpl.bindService(ContextImpl.java:1418)
at android.content.ContextWrapper.bindService(ContextWrapper.java:632)
at com.android.installreferrer.api.InstallReferrerClientImpl.startConnection(InstallReferrerClientImpl.java:35)
at com.wa.sdk.wa.core.a.a.a(WAGGInstallReferrerManager.java:58)
at com.wa.sdk.wa.core.WASdkCore.initialize(WASdkCore.java:66)
at com.wa.sdk.core.WACoreProxy.coreInitialize(WACoreProxy.java:203)
at com.wa.sdk.core.WACoreProxy.initialize(WACoreProxy.java:40)
at com.complatform.gamesdk.GameSdkActivity.init(GameSdkActivity.java:117)
at com.angame.ddtank.MainActivity.onCreate(MainActivity.java:126)
at android.app.Activity.performCreate(Activity.java:6904)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1136)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3266)
... 9 more
java.lang.SecurityException: Not allowed to bind to service Intent { act=com.google.android.finsky.BIND_GET_INSTALL_REFERRER_SERVICE cmp=com.android.vending/com.google.android.finsky.externalreferrer.GetInstallReferrerService }
at android.app.ContextImpl.bindServiceCommon(ContextImpl.java:1460)
at android.app.ContextImpl.bindService(ContextImpl.java:1418)
at android.content.ContextWrapper.bindService(ContextWrapper.java:632)
at com.android.installreferrer.api.InstallReferrerClientImpl.startConnection(InstallReferrerClientImpl.java:35)
at com.wa.sdk.wa.core.a.a.a(WAGGInstallReferrerManager.java:58)
at com.wa.sdk.wa.core.WASdkCore.initialize(WASdkCore.java:66)
at com.wa.sdk.core.WACoreProxy.coreInitialize(WACoreProxy.java:203)
at com.wa.sdk.core.WACoreProxy.initialize(WACoreProxy.java:40)
at com.complatform.gamesdk.GameSdkActivity.init(GameSdkActivity.java:117)
at com.angame.ddtank.MainActivity.onCreate(MainActivity.java:126)
at android.app.Activity.performCreate(Activity.java:6904)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1136)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3266)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3415)
at android.app.ActivityThread.access$1100(ActivityThread.java:229)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1821)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:7325)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)
[Deleted User] <[Deleted User]> #28
sa...@fundsindia.com <sa...@fundsindia.com> #29
Fatal Exception: java.lang.SecurityException: Not allowed to bind to service Intent { act=com.google.android.finsky.BIND_GET_INSTALL_REFERRER_SERVICE cmp=com.android.vending/com.google.android.finsky.externalreferrer.GetInstallReferrerService }
at android.app.ContextImpl.bindServiceCommon(ContextImpl.java:1795)
at android.app.ContextImpl.bindService(ContextImpl.java:1705)
at android.content.ContextWrapper.bindService(ContextWrapper.java:716)
at com.android.installreferrer.api.InstallReferrerClientImpl.startConnection(InstallReferrerClientImpl.java:38)
at com.fundsindia.SplashScreenActivity.getInstallReferrerFromClient(SplashScreenActivity.java:496)
at com.fundsindia.SplashScreenActivity.access$getInstallReferrerFromClient(SplashScreenActivity.java:53)
at com.fundsindia.SplashScreenActivity$checkInstallReferrer$1.run(SplashScreenActivity.java:489)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:919)
28% Samsung
24% realme
17% vivo
14% INFIX MOBILITY
65% Android 10
ku...@gmail.com <ku...@gmail.com> #30
From the release notes here:
This bug has apparently been fixed in version 2.2.
Is that true, can this ticket be marked as 'Fixed'?
li...@google.com <li...@google.com>
jo...@gmail.com <jo...@gmail.com> #31
at android.app.ActivityThread.handleBindService(ActivityThread.java:4385)
at android.app.ActivityThread.access$1900(ActivityThread.java:261)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2049)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:236)
at android.app.ActivityThread.main(ActivityThread.java:8051)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:620)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1011)
Caused by: java.lang.SecurityException: Too many PendingIntent created for uid 10195, aborting Key{broadcastIntent pkg=com.google.android.gms/com.google.android.gms.gcm intent=act=ACTION_BOGUS pkg=com.google.example.invalidpackage cmp=com.google.example.invalidpackage/BogusClass flags=0x0 u=0} requestCode=0
at android.os.Parcel.createExceptionOrNull(Parcel.java:2376)
at android.os.Parcel.createException(Parcel.java:2360)
at android.os.Parcel.readException(Parcel.java:2343)
at android.os.Parcel.readException(Parcel.java:2285)
at android.app.IActivityManager$Stub$Proxy.getIntentSenderWithFeature(IActivityManager.java:6868)
at android.app.PendingIntent.getBroadcastAsUser(PendingIntent.java:578)
at android.app.PendingIntent.getBroadcast(PendingIntent.java:561)
at ajrx.b(:com.google.android.gms@214856037@21.48.56 (150400-423831984):0)
at ajyy.<init>(:com.google.android.gms@214856037@21.48.56 (150400-423831984):3)
at ajza.<init>(:com.google.android.gms@214856037@21.48.56 (150400-423831984):0)
at ajyc.m(:com.google.android.gms@214856037@21.48.56 (150400-423831984):4)
at ajyc.e(:com.google.android.gms@214856037@21.48.56 (150400-423831984):5)
at ajyc.g(:com.google.android.gms@214856037@21.48.56 (150400-423831984):5)
at afav.<init>(:com.google.android.gms@214856037@21.48.56 (150400-423831984):11)
at afaz.b(:com.google.android.gms@214856037@21.48.56 (150400-423831984):4)
at crto.b(:com.google.android.gms@214856037@21.48.56 (150400-423831984):1)
at afay.b(:com.google.android.gms@214856037@21.48.56 (150400-423831984):2)
at crto.b(:com.google.android.gms@214856037@21.48.56 (150400-423831984):1)
at afdv.b(:com.google.android.gms@214856037@21.48.56 (150400-423831984):2)
at crto.b(:com.google.android.gms@214856037@21.48.56 (150400-423831984):1)
at affi.b(:com.google.android.gms@214856037@21.48.56 (150400-423831984):2)
at crto.b(:com.google.android.gms@214856037@21.48.56 (150400-423831984):1)
at crtn.b(:com.google.android.gms@214856037@21.48.56 (150400-423831984):2)
at afaj.b(:com.google.android.gms@214856037@21.48.56 (150400-423831984):2)
at crto.b(:com.google.android.gms@214856037@21.48.56 (150400-423831984):1)
at afah.b(:com.google.android.gms@214856037@21.48.56 (150400-423831984):40)
at com.google.android.gms.gcm.registration.PushMessagingRegistrarChimeraProxy.onBind(:com.google.android.gms@214856037@21.48.56 (150400-423831984):1)
at syn.onBind(:com.google.android.gms@214856037@21.48.56 (150400-423831984):3)
at android.app.ActivityThread.handleBindService(ActivityThread.java:4370)
... 8 more
bi...@gmail.com <bi...@gmail.com> #32
I've same problem with Xiaomi devices with Android 11:
Fatal Exception: java.lang.SecurityException
Too many PendingIntent created for uid 10367, aborting Key{broadcastIntent pkg=com.bitrix24.android intent=act=package com.bitrix24.lib.push, Unknown, version 0.0.ACTION.LIKE cmp=com.bitrix24.android/com.bitrix24.lib.push.LikeReceiver flags=0x0 u=0} requestCode=483807264
android.os.Parcel.createExceptionOrNull (Parcel.java:2376)
android.app.PendingIntent.getBroadcastAsUser (PendingIntent.java:578)
android.app.PendingIntent.getBroadcast (PendingIntent.java:561)
... 8 more
sk...@gmail.com <sk...@gmail.com> #33
Caused by: java.lang.SecurityException:
at android.os.Parcel.createExceptionOrNull (Parcel.java:2376)
at android.os.Parcel.createException (Parcel.java:2360)
at android.os.Parcel.readException (Parcel.java:2343)
at android.os.Parcel.readException (Parcel.java:2285)
at android.app.IActivityManager$Stub$Proxy.getIntentSenderWithFeature (IActivityManager.java:6850)
at android.app.PendingIntent.getBroadcastAsUser (PendingIntent.java:578)
at android.app.PendingIntent.getBroadcast (PendingIntent.java:561)
qi...@gmail.com <qi...@gmail.com> #34
I have a stable repro for this when using install referrer library version 2.1. The app won't crash if the latest library version 2.2 is used. (Thanks for the fix.)
My repro steps: 1, Set up an AOSP 11 x86_64 emulator without Google APIs or Google Play; 2, Install the 3 packages from APK download sites: Google Services Framework 10 Google Play services 22.26.15 Google Play Store 16.8.17 3, Launch your app and when the code executes to the point where InstallReferrerClient.startConnection() is called, there would be a crash is the old library is used.
When GMS is mis-installed by a user, app would crash. GMS requires signature permissions to function and can't work if it's installed as an ordinary user app. Some OEMs don't ship their devices with GMS pre-installed, so some users may install GMS on their own, and if GMS is mis-installed by users, then GMS will lack of the necessary permissions.
Hope this helps.
Description
The original issue:
Exception appears when calling startConnection on InstallReferrerClient object
Stack trace:
```
Fatal Exception: java.lang.RuntimeException: Unable to start activity ComponentInfo{<app package>/<app package>.MainActivity}: java.lang.SecurityException: Not allowed to bind to service Intent { act=com.google.android.finsky.BIND_GET_INSTALL_REFERRER_SERVICE cmp=com.android.vending/com.google.android.finsky.externalreferrer.GetInstallReferrerService }
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3319)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3415)
at android.app.ActivityThread.access$1100(ActivityThread.java:229)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1821)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:7325)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)
Caused by java.lang.SecurityException: Not allowed to bind to service Intent { act=com.google.android.finsky.BIND_GET_INSTALL_REFERRER_SERVICE cmp=com.android.vending/com.google.android.finsky.externalreferrer.GetInstallReferrerService }
at android.app.ContextImpl.bindServiceCommon(ContextImpl.java:1460)
at android.app.ContextImpl.bindService(ContextImpl.java:1418)
at android.content.ContextWrapper.bindService(ContextWrapper.java:632)
at com.android.installreferrer.api.InstallReferrerClientImpl.startConnection(InstallReferrerClientImpl.java:135)
at com.wt.pinger.activity.MainActivity.onCreate(MainActivity.java:107)
at android.app.Activity.performCreate(Activity.java:6904)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1136)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3266)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3415)
at android.app.ActivityThread.access$1100(ActivityThread.java:229)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1821)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:7325)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)
```