openid/AppAuth-Android

android.content.ActivityNotFoundException: When app opened

dhruvsunking opened this issue · 6 comments

Checklist:

Configuration

  • Version: 0.11.1
  • Integration: Java/Kotlin

Issue Description

Get this exception on Crashlytics when app is opened

Caused by android.content.ActivityNotFoundException:
       at net.openid.appauth.AuthorizationService.prepareAuthorizationRequestIntent(AuthorizationService.java:555)
       at net.openid.appauth.AuthorizationService.getAuthorizationRequestIntent(AuthorizationService.java:390)
       at login.utils.LoginHelper.doAuth(LoginHelper.java:131)
       at login.utils.LoginHelper.startAuth(LoginHelper.java:112)
       at login.view.LoginHomeActivity.startAuth(LoginHomeActivity.kt:196)
       at login.view.LoginHomeActivity.initView(LoginHomeActivity.kt:118)
       at baseclass.BaseActivity.onCreate(BaseActivity.kt:42)
       at android.app.Activity.performCreate(Activity.java:8591)
       at android.app.Activity.performCreate(Activity.java:8570)
       at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1384)
       at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:4150)
       at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:4325)
       at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:101)
       at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
       at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
       at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2574)
       at android.os.Handler.dispatchMessage(Handler.java:106)
       at android.os.Looper.loopOnce(Looper.java:226)
       at android.os.Looper.loop(Looper.java:313)
       at android.app.ActivityThread.main(ActivityThread.java:8757)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:571)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1067)

can you explain more?
is it minify? if does, you might need to exclude the app auth library to be obsfucate by gradle

Sure.
no it is not minified. Sometimes it works fine but sometime suddenly (prepareAuthorizationRequestIntent, getAuthorizationRequestIntent) these two started throwing exception of activity not found.

Hi from Android 13 we are required to add category with the intent. If didn't have that with your intent, can you add the following and check if that helps.

if (Build.VERSION.SDK_INT < Build.VERSION_CODES.TIRAMISU) { authIntent.addCategory(Intent.CATEGORY_DEFAULT) authIntent.addCategory(Intent.CATEGORY_BROWSABLE) }

Update: This doesn't work. It's still crashing.

My user scenario is similar like this old comment

Got several crash report of that. User mostly with Samsung. OS Version 13, 14. And chrome is installed.
image

We have the same problem. We've implemented it recently. Successfully tested on multiple devices. However, after we've released it we have a lot of ActivityNotFoundException. Mostly Samsung devices and Android 13. Unfortunately, I don't have any device with this problem :-(

image