PermissionsDispatcher icon indicating copy to clipboard operation
PermissionsDispatcher copied to clipboard

When this library is applied to Fragment and run on Android 8.0, "System UI has stopped" is displayed.

Open kwmt opened this issue 5 years ago β€’ 6 comments

FAQs


Overview

  • When this library is applied to Fragment and run on Android 8.0, "System UI has stopped" is displayed.

Expected

  • Works on Android 8.0

Actual

  • Doesn’t work on Android 8.0.

Environment

  • Which library version are you using?

    • 4.5.0
  • On which devices do you observe the issue?

    • Android8.0
  • Note any other information that might be useful

    • The following versions will work:
      • 6.0.1
      • 7.0
      • 7.1.1
      • 8.1
      • 9.0
      • 10
    • I think you should use ActivityCompat#requestPermissions method on Fragment
      • https://github.com/permissions-dispatcher/PermissionsDispatcher/blob/master/processor/src/main/kotlin/permissions/dispatcher/processor/impl/kotlin/KotlinFragmentProcessorUnit.kt#L22
      • On Activity, you use it https://github.com/permissions-dispatcher/PermissionsDispatcher/blob/master/processor/src/main/kotlin/permissions/dispatcher/processor/impl/kotlin/KotlinActivityProcessorUnit.kt#L23

Reproducible steps

  1. Ready on Android8.0 device ( What I saw was an emulator.)
  2. Run the following branch. https://github.com/kwmt/PermissionsDispatcher/tree/system-stop-on-fragment

This is a difference. https://github.com/kwmt/PermissionsDispatcher/pull/1

kwmt avatar Dec 28 '19 06:12 kwmt

Thx! In summary in Android 8.0 Fragment#requestPermissions has a bug and causes a crash? πŸ‘€ Let us check anyway πŸ™‡

hotchemi avatar Jan 05 '20 14:01 hotchemi

I've tried kwmt#1 with 8.0.0 emulator but somehow couldn't see the error. Could we get more detail or error message if possible? πŸ™‡ @kwmt

hotchemi avatar Jan 06 '20 14:01 hotchemi

Hi, @hotchemi Thank you for trying. It's a mystery πŸ€”

  • The emulator I confirmed this problem is following image: image
  • As you can see, no error log. all_crash

I hope this will help.

kwmt avatar Jan 08 '20 07:01 kwmt

umm, thx let us check again! πŸ™‡

hotchemi avatar Jan 08 '20 14:01 hotchemi

@hotchemi

In PermissionsRequestFragment onAttach Method activity?.requestedOrientation = if (context.resources.configuration.orientation == ORIENTATION_PORTRAIT) ActivityInfo.SCREEN_ORIENTATION_PORTRAIT else ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE

Android8.0 can't set orientation sometime ,Please fix this bug

Caused by: java.lang.IllegalStateException: Only fullscreen activities can request orientation at android.os.Parcel.readException(Parcel.java:1959) at android.os.Parcel.readException(Parcel.java:1897) at android.app.IActivityManager$Stub$Proxy.setRequestedOrientation(IActivityManager.java:5760) at android.app.Activity.setRequestedOrientation(Activity.java:5793) at permissions.dispatcher.ktx.PermissionsRequestFragment.onAttach(PermissionsRequestFragment.kt:26) at androidx.fragment.app.Fragment.performAttach(Fragment.java:2672) at androidx.fragment.app.FragmentStateManager.attach(FragmentStateManager.java:263) at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1170) 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.BackStackRecord.executeOps(BackStackRecord.java:447) at androidx.fragment.app.FragmentManager.executeOps(FragmentManager.java:2169) at androidx.fragment.app.FragmentManager.executeOpsTogether(FragmentManager.java:1992) at androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute(FragmentManager.java:1947) at androidx.fragment.app.FragmentManager.execSingleAction(FragmentManager.java:1818) at androidx.fragment.app.BackStackRecord.commitNowAllowingStateLoss(BackStackRecord.java:303) at permissions.dispatcher.ktx.PermissionRequestType.requestPermissions$ktx_release(PermissionRequestType.kt:80)

0xByteLeon avatar Aug 19 '20 06:08 0xByteLeon

I also encountered this problem, and the version used was 4.7.0.

Moster1h avatar Sep 11 '20 10:09 Moster1h