Status Update
Comments
wh...@gmail.com <wh...@gmail.com> #2
Please include a sample project that reproduces your issue.
[Deleted User] <[Deleted User]> #3
Sample project attached. Just add to plain project this dependencies allow to reproduce.
def emoji2_version = "1.1.0-beta01"
implementation "androidx.emoji2:emoji2:$emoji2_version"
def lifecycle_version = "2.5.0-alpha01"
implementation "androidx.lifecycle:lifecycle-process:$lifecycle_version"
il...@google.com <il...@google.com> #4
The reason may be related to 2.4.0
of lifecycle-process
as workaround.
jo...@jossiwolf.de <jo...@jossiwolf.de> #5
Yes, this is due to this change, as well as the fact that EmojiCompatInitializer has a ProcessLifecycleInitializer as a dependency and also re-calls it, but in manual mode.
jo...@jossiwolf.de <jo...@jossiwolf.de> #6
ProcessLifecycleInitializer
is expected to already be initialized (via the manifest provider
for App Startup) by the time that code runs - App Startup shouldn't be calling create
if that component has already been initialized, hence you shouldn't get any exception. We'll take a look on where things are breaking down though.
il...@google.com <il...@google.com>
de...@gmail.com <de...@gmail.com> #7
Thanks for the answer.
As I understand EmojiCompatInitializer has ProcessLifecycleInitializer as a appInitializer.initializeComponent(ProcessLifecycleInitializer.class)
Maybe it would be more correct to create a bug in emoji-2, but let it be here.
pa...@gmail.com <pa...@gmail.com> #8
This issue isn't related to emoji2, it could be reproduced easily with the lifecycle-process
(2.4.0 -> 2.5.0-alpha01) only.
il...@google.com <il...@google.com> #9
Branch: androidx-main
commit 97993ad954cb98211ef52b6e26c7877dbdeeec1c
Author: Jeremy Woods <jbwoods@google.com>
Date: Tue Feb 01 17:06:11 2022
Bump lifecycle process start-up dependency to 1.1.1
Bumping the startup dependency to include aosp/1855769.
RelNote: "Updated `lifecycle-process` to depend on [Startup 1.1.1](/jetpack/androidx/releases/startup#1.1.1) to ensure that fixes that prevent `ProcessLifecycleInitializer` from throwing a `StartupException` are available by default."
Bug: 216490724
Test: tested in sample app
Change-Id: Ib01dfbba1d63aa03e43e09ee8886cc76e1050e1b
M lifecycle/lifecycle-process/build.gradle
ap...@google.com <ap...@google.com> #10
This has been fixed internally and will be released in the Lifecycle 2.5.0-alpha02
release.
na...@google.com <na...@google.com> #12
It should be out before the end of the week.
d....@gmail.com <d....@gmail.com> #13
gs...@gmail.com <gs...@gmail.com> #14
I guess the release that addresses this is actually:
androidx.compose.material:material-navigation:1.7.0-alpha04
As #13 said, we are missing this for Material3 bottom sheets.
I see that there's another issue tracking that here:
v....@temper.works <v....@temper.works> #15
Some guidance about usage would be very welcome. I get java.lang.IllegalStateException: Could not find Navigator with name "bottomSheet". You must call NavController.addNavigator() for each navigation type.
crash and can't find any proper example of this new extension usage:
Scaffold(
bottomBar = {...}
) { innerPadding ->
NavHost(
navController,
startDestination = "explore_graph",
Modifier.fillMaxSize()
) {
// nested graphs
bottomSheet("profile_bottom_sheet") { // CRASHES
Text("Bottom Sheet", Modifier.padding(16.dp))
}
}
}
}
}
}
}
I use androidx.compose.material:material-navigation:1.7.0-beta01
, but my project is material3, could it be the reason?
il...@google.com <il...@google.com> #16
Re
val bottomSheetNavigator = rememberBottomSheetNavigator()
val navController = rememberNavController(bottomSheetNavigator)
If you don't use those lines, you'd get that error message.
Description
Version used: 1.0.0-alpha06
It would be useful to integrate with BottomSheetScaffold so we could treat bottom sheets as navigation destinations. For example, I could call `navController.navigate(someBottomSheetRoute)` to launch a bottom sheet.