Status Update
Comments
je...@gmail.com <je...@gmail.com> #2
android.hardware.fingerprint.IFingerprintService$Stub$Proxy.authenticate(IFingerprintService.java:341)
ml...@google.com <ml...@google.com>
ju...@google.com <ju...@google.com>
de...@gmail.com <de...@gmail.com> #4
We also observed similar crash in IFingerprintService.cancelAuthentication(IFingerprintService.java:320)
Caused by java.lang.NullPointerException: Attempt to invoke interface method 'int java.util.List.size()' on a null object reference
at android.os.Parcel.readException(Parcel.java:2019)
at android.os.Parcel.readException(Parcel.java:1959)
at android.hardware.fingerprint.IFingerprintService$Stub$Proxy.cancelAuthentication(IFingerprintService.java:320)
at android.hardware.fingerprint.FingerprintManager.cancelAuthentication(FingerprintManager.java:1020)
at android.hardware.fingerprint.FingerprintManager.-wrap2(FingerprintManager.java)
at android.hardware.fingerprint.FingerprintManager$OnAuthenticationCancelListener.onCancel(FingerprintManager.java:224)
at android.os.CancellationSignal.cancel(CancellationSignal.java:77)
at androidx.core.os.CancellationSignal.cancel(CancellationSignal.java:84)
at androidx.biometric.FingerprintHelperFragment.cancel(FingerprintHelperFragment.java:301)
at androidx.biometric.BiometricPrompt.dismissFingerprintFragments(BiometricPrompt.java:984)
at androidx.biometric.BiometricPrompt.access$800(BiometricPrompt.java:67)
at androidx.biometric.BiometricPrompt$2.onPause(BiometricPrompt.java:520)
at java.lang.reflect.Method.invoke(Method.java)
at androidx.lifecycle.ClassesInfoCache$MethodReference.invokeCallback(ClassesInfoCache.java:216)
at androidx.lifecycle.ClassesInfoCache$CallbackInfo.invokeMethodsForEvent(ClassesInfoCache.java:194)
at androidx.lifecycle.ClassesInfoCache$CallbackInfo.invokeCallbacks(ClassesInfoCache.java:185)
at androidx.lifecycle.ReflectiveGenericLifecycleObserver.onStateChanged(ReflectiveGenericLifecycleObserver.java:36)
at androidx.lifecycle.LifecycleRegistry$ObserverWithState.dispatchEvent(LifecycleRegistry.java:361)
at androidx.lifecycle.LifecycleRegistry.backwardPass(LifecycleRegistry.java:316)
at androidx.lifecycle.LifecycleRegistry.sync(LifecycleRegistry.java:334)
at androidx.lifecycle.LifecycleRegistry.moveToState(LifecycleRegistry.java:145)
at androidx.lifecycle.LifecycleRegistry.handleLifecycleEvent(LifecycleRegistry.java:131)
at androidx.lifecycle.ReportFragment.dispatch(ReportFragment.java:123)
at androidx.lifecycle.ReportFragment.onPause(ReportFragment.java:96)
at android.app.Fragment.performPause(Fragment.java:2709)
at android.app.FragmentManagerImpl.moveToState(FragmentManagerImpl.java:1334)
at android.app.FragmentManagerImpl.moveFragmentToExpectedState(FragmentManagerImpl.java:1557)
at android.app.FragmentManagerImpl.moveToState(FragmentManagerImpl.java:1618)
at android.app.FragmentManagerImpl.dispatchMoveToState(FragmentManagerImpl.java:3027)
at android.app.FragmentManagerImpl.dispatchPause(FragmentManagerImpl.java:2993)
at android.app.FragmentController.dispatchPause(FragmentController.java:211)
at android.app.Activity.performPause(Activity.java:7170)
at android.app.Instrumentation.callActivityOnPause(Instrumentation.java:1409)
at android.app.ActivityThread.performPauseActivityIfNeeded(ActivityThread.java:4026)
at android.app.ActivityThread.performPauseActivity(ActivityThread.java:4003)
at android.app.ActivityThread.performPauseActivity(ActivityThread.java:3977)
at android.app.ActivityThread.handlePauseActivity(ActivityThread.java:3951)
at android.app.ActivityThread.-wrap15(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1647)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:175)
at android.app.ActivityThread.main(ActivityThread.java:6724)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:810)
BUILD INFO
- Device type: LG K11
- OS version: 8.1.0
- Biometric library version: androidx.biometric:biometric:1.0.1
ku...@google.com <ku...@google.com> #5
We're also seeing this occasionally - we've seen the FingerprintHelperFragment
stack trace reported above, as well as this slightly different one (they all have the same underlying cause):
Caused by java.lang.NullPointerException: Attempt to invoke interface method 'int java.util.List.size()' on a null object reference
at android.os.Parcel.createException(Parcel.java:1959)
at android.os.Parcel.readException(Parcel.java:1921)
at android.os.Parcel.readException(Parcel.java:1871)
at android.hardware.fingerprint.IFingerprintService$Stub$Proxy.authenticate(IFingerprintService.java:339)
at android.hardware.fingerprint.FingerprintManager.authenticate(FingerprintManager.java:480)
at android.hardware.fingerprint.FingerprintManager.authenticate(FingerprintManager.java:557)
at android.hardware.biometrics.BiometricPrompt.authenticate(BiometricPrompt.java:435)
at androidx.biometric.BiometricFragment.onCreateView(BiometricFragment.java:311)
at androidx.fragment.app.Fragment.performCreateView(Fragment.java:2698)
at androidx.fragment.app.FragmentStateManager.createView(FragmentStateManager.java:320)
at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1187)
at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1356)
at androidx.fragment.app.FragmentManager.moveFragmentToExpectedState(FragmentManager.java:1434)
at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1497)
at androidx.fragment.app.FragmentManager.dispatchStateChange(FragmentManager.java:2625)
at androidx.fragment.app.FragmentManager.dispatchPause(FragmentManager.java:2593)
at androidx.fragment.app.FragmentController.dispatchPause(FragmentController.java:280)
at androidx.fragment.app.FragmentActivity.onPause(FragmentActivity.java:419)
at android.app.Activity.performPause(Activity.java:7663)
at android.app.Instrumentation.callActivityOnPause(Instrumentation.java:1536)
at android.app.ActivityThread.performPauseActivityIfNeeded(ActivityThread.java:4699)
at android.app.ActivityThread.performPauseActivity(ActivityThread.java:4664)
at android.app.ActivityThread.handlePauseActivity(ActivityThread.java:4599)
at android.app.servertransaction.PauseActivityItem.execute(PauseActivityItem.java:45)
at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:145)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:70)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2185)
at android.os.Handler.dispatchMessage(Handler.java:112)
at android.os.Looper.loop(Looper.java:216)
at android.app.ActivityThread.main(ActivityThread.java:7593)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:524)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:987)
We've only rolled this out to 10% of our user base so far, but here's our current list of affected devices:
Count | Device |
---|---|
4 | INFINIX MOBILITY LIMITED Infinix X606D (Android 8.1.0) |
2 | Sony G8441 (Android 9) |
2 | Xiaomi Mi A1 (Android 9) |
2 | HUAWEI LLD-L21 (Android 9) |
2 | samsung SM-G935F (Android 8.0.0) |
2 | vivo vivo 1904 (Android 9) |
2 | HUAWEI FIG-LX1 (Android 9) |
1 | HUAWEI LDN-L01 (Android 8.0.0) |
1 | HUAWEI ANE-LX1 (Android 9) |
There's some discussion of the underlying framework bug in
ku...@google.com <ku...@google.com> #6
Branch: androidx-master-dev
commit 7e9dd629009e348407a00e936f7b0927dbee7c30
Author: Grace Cheng <graciecheng@google.com>
Date: Tue Oct 06 11:52:41 2020
Address uncaught NPE during fingerprint authentication
Updates androidx.biometric.BiometricFragment to catch potential NullPointerException in autogenerated binder code from FingerprintManagerCompat authenticate call
Test: ./gradlew biometric:biometric:test
Test: ./gradlew biometric:biometric:connectedAndroidTest
Test: ./gradlew biometric:integration-tests:testapp:connectedAndroidTest
Bug: 151316421
Change-Id: I713d529fecd08a396e998f8ccf6a3d83e46bf508
M biometric/biometric/src/main/java/androidx/biometric/BiometricFragment.java
M biometric/biometric/src/test/java/androidx/biometric/BiometricFragmentTest.java
de...@gmail.com <de...@gmail.com> #7
do...@gmail.com <do...@gmail.com> #8
Branch: androidx-master-dev
commit 619b21f179cbf6194a9f4084f90a26fd75c0abd2
Author: Curtis Belmonte <curtislb@google.com>
Date: Fri Oct 09 15:03:31 2020
Catch more NPEs from framework biometric methods
Adds more checks to catch and handle NullPointerExceptions that may be
thrown by framework biometric methods, such as authenticate() or
cancelAuthentication().
Test: Biometric integration test app on API 27-30.
Test: ./gradlew biometric:biometric:test
Test: ./gradlew biometric:biometric:connectedAndroidTest
Test: ./gradlew biometric:integration-tests:testapp:connectedAndroidTest
Fixes: 151316421
Change-Id: I7d1b60ee727311c2bb1257942bd66beb4dd044e5
M biometric/biometric/src/main/java/androidx/biometric/BiometricFragment.java
M biometric/biometric/src/main/java/androidx/biometric/CancellationSignalProvider.java
M biometric/biometric/src/test/java/androidx/biometric/BiometricFragmentTest.java
M biometric/biometric/src/test/java/androidx/biometric/CancellationSignalProviderTest.java
al...@gmail.com <al...@gmail.com> #9
aa...@google.com <aa...@google.com> #10
The exception in #3 is a red herring. It's not the cause of #1
aa...@google.com <aa...@google.com> #11
jeffdgr8
When you get the studio.deploy
error, what happens if you remove the package:mine
filter?
aa...@google.com <aa...@google.com> #12
It looks like something is breaking during app deploy. Could this have something to do with Live Literals? Specifically, what is this directory? /data/data/com.example.app.package/code_cache/.ll/'
ac...@google.com <ac...@google.com> #13
In fact, the host side got a confirmation that installation was successful. It is possible that the app immediately crashes afterward (which I am guessing the reporter would have noticed) but that probably wouldn't brick logcat for the rest of the Studio session.
ku...@google.com <ku...@google.com>
aa...@google.com <aa...@google.com> #14
I'm not sure logcat is bricked. See re-running the app multiple times, the same log will continue to log each time it doesn't work, with no others afterwards
If Logcat shows the same log line every time you run the app, it's an indication that Logcat is working but the only log that the filter matches is the studio.deploy
error log.
I've asked the OP to remove the filter so we can see if anything else is getting logged.
ah...@sensortower.com <ah...@sensortower.com> #15
Help.
aa...@google.com <aa...@google.com> #16
Still waiting for answers for #11
Re #15, I'm not sure I understand the report. Is #14 about Logcat not working or some Gradle error?
e....@swordhealth.com <e....@swordhealth.com> #17
I'm having the same error after updating AS to Dolphin, every time I try to rerun the application on a device through AS, the changes are installed but the app doesn't launch.
If I remove the package:mine
filter, I still get new logs, so Logcat is still working, but removing package:mine
filter, I notice a warning log that seems related to the problem:
2022-10-13 09:54:35.717 1265-1496 BroadcastQueue pid-1265 W Background execution not allowed: receiving Intent { act=android.intent.action.PACKAGE_RESTARTED dat=package:com.example.app flg=0x10 (has extras) } to android/com.kddi.android.CpaNotiReceiver
2022-10-13 09:54:35.732 19978-19978 studio.deploy pid-19978 E Could not remove dir '/data/data/com.example.app/code_cache/.ll/': No such file or directory
aa...@google.com <aa...@google.com> #18
Looks like this is not a Logcat bug but rather a deployment bug.
aa...@google.com <aa...@google.com> #19
Can you attach the full logcat from the device after this happens?
adb logcat -d > logcat.txt
al...@gmail.com <al...@gmail.com> #20
he...@gmail.com <he...@gmail.com> #21
I have little workaround. If you start tha app directly from device after failed start from AS, than you can see log.
aa...@google.com <aa...@google.com> #22
alhudaghifari, the logcat you uploaded is very small. The system
section of it starts with ActivityManager: Force stopping com.theproject.android.staging
.
- Did you clear the logcat before capturing it?
- Did you reproduce the problem before capturing it?
Anyway, it does look like this is a deployment issue, not a logcat issue.
ac...@google.com <ac...@google.com> #23
I suspect the application is not launch properly. Can you go to your run configuration can verify it is instructing Studio to launch the right activity upon installation?
gd...@gmail.com <gd...@gmail.com> #24
ac...@google.com <ac...@google.com> #25
[Deleted User] <[Deleted User]> #26
Android Studio Dolphin | 2021.3.1 Patch 1
Build #AI-213.7172.25.2113.9123335, built on September 30, 2022
Runtime version: 11.0.13+0-b1751.21-8125866 aarch64
VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o.
macOS 12.6.1
GC: G1 Young Generation, G1 Old Generation
Memory: 2048M
Cores: 10
Registry:
external.system.auto.import.disabled=true
debugger.watches.in.variables=false
ide.text.editor.with.preview.show.floating.toolbar=false
Non-Bundled Plugins:
cn.haojiyou.CodeGlance3 (2.1.1-2021.1.3)
izhangzhihao.rainbow.brackets (2022.3.4-ij)
kh...@gmail.com <kh...@gmail.com> #27
th...@gmail.com <th...@gmail.com> #28
I've had a similar issue, after launching logcat reads
E/studio.deploy: Could not remove dir '/data/data/com.example.app/code_cache/.ll/': No such file or directory
and the app force stops. The app is installed, taking up storage space, but gives "App Isn't Installed" whenever I try to launch
ac...@google.com <ac...@google.com> #29
Can you make sure the application is installed by going to your device and launching it there?
Are there other crash messages?
fu...@student.ms.sapientia.ro <fu...@student.ms.sapientia.ro> #30
I've got the same issue, looks like I found a solution. In the IDE go to File > Invalidate Caches > Optional (Clear VCS Log caches and indexes) > Invalidate and Restart, wait the IDE to reload. This method kind of fixed my problem, hope it helps for you too.
ha...@gmail.com <ha...@gmail.com> #31
Even after deleting the Module and Setting it up new with "Empty Activity" nothing happened.
But by random I saw that under "Edit Configuration" the Launch Option was "Nothing". Obviously, that was the error and as I switched to "Default Activity" the activity was starting.
(Why was it preset with "Nothing"? I first installed a Module "With No Activity". After delete of module, the "No Activity"-configuration still remained in some of the hidden .idea settings. Would be nice, if we could remove a module "completely" without remaining old config-artefacts.)
Hope, it might help you.
ac...@google.com <ac...@google.com> #32
Should anyone see crash messages, please let us know.
de...@gmail.com <de...@gmail.com> #33
ac...@google.com <ac...@google.com> #34
8g...@gmail.com <8g...@gmail.com> #35
2023-04-18 17:37:52.188 10418-10418 studio.deploy pid-10418 E Could not remove dir '/data/data/com.example.bookshelf/code_cache/.ll/': No such file or directory
after run with #30 #31 suggestion:
2023-04-18 17:52:02.359 13383-13383 studio.deploy pid-13383 E Could not remove dir '/data/data/com.example.bookshelf/code_cache/.ll/': No such file or directory
these didn´t any change
Thanks for any help!
Description
DESCRIBE THE ISSUE IN DETAIL:
Using the new Dolphin logcat viewer, often after having the logcat window visible, when re-running the app, a single
studio.deploy
error is logged and no further logcat logs are received by Android Studio until restarting.STEPS TO REPRODUCE:
Screenshot and logs attached.
Studio Build: Dolphin | 2021.3.1 RC1
Version of Gradle Plugin: 7.3.0-rc01
Version of Gradle: 7.5.1
Version of Java: 11.0.16
OS: macOS Monterey