Status Update
Comments
ne...@gmail.com <ne...@gmail.com> #2
Please include a sample project that reproduces your issue.
ra...@google.com <ra...@google.com>
su...@google.com <su...@google.com>
ap...@google.com <ap...@google.com> #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"
lo...@gmail.com <lo...@gmail.com> #4
The reason may be related to 2.4.0
of lifecycle-process
as workaround.
su...@google.com <su...@google.com> #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.
ta...@gmail.com <ta...@gmail.com> #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.
ta...@gmail.com <ta...@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.
ah...@gmail.com <ah...@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.
ar...@gmail.com <ar...@gmail.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
pr...@gmail.com <pr...@gmail.com> #10
This has been fixed internally and will be released in the Lifecycle 2.5.0-alpha02
release.
Description
Version used: 1.0.0-alpha07
Devices/Android versions reproduced on: Pixel 2, Android 9 Pie
The work request below is executed once but not periodically on version alpha07, this works correctly and periodically on version alpha06
val constraints = androidx.work.Constraints.Builder()
.setRequiredNetworkType(NetworkType.CONNECTED)
.build() // Run only when network is available
val workRequest =
PeriodicWorkRequestBuilder<ReportUploader>(REPORTING_REPEAT_INTERVAL_IN_MINUTES, TimeUnit.MINUTES)
.addTag(REPORTER_TAG)
.setConstraints(constraints)
.setBackoffCriteria(BackoffPolicy.EXPONENTIAL, 10, TimeUnit.SECONDS)
.build() // Run every 15 mins
workManager
.enqueueUniquePeriodicWork(REPORTER_TAG, ExistingPeriodicWorkPolicy.KEEP, workRequest)