地理围栏数据在转换时为空

Geofence Data is empty on transition

我设置了一个地理围栏,当设备离开半径时,它会按预期触发。然而,地理围栏事件完全是空的。

override fun onReceive(context: Context, intent: Intent) {
    val geofencingEvent = GeofencingEvent.fromIntent(intent)
}

这并不奇怪,因为意图也是空的。但是 e geofence-trigger intent 通常从哪里获取数据以帮助 GeofencingEvent.fromIntent() 构建事件?什么可能出错,意图是空的? (没有行动,没有额外的东西......意图 uri 看起来像这样:

intent:#Intent;launchFlags=0x10;component=de.yukiarts.test/.GeofenceBroadcastReceiver;end

我发现这个 question from 7 years ago, which describes the same behavior without an answer. I followed this documentation 非常准确。知道我可能做错了什么吗?

我发现将触发地理围栏时使用的 PendingIntent 设为可变可以解决此问题!(在 Android >11 的设备上)

val geofencePendingIntent = PendingIntent.getBroadcast(
            context, 0, intent,
            PendingIntent.FLAG_MUTABLE or PendingIntent.FLAG_UPDATE_CURRENT