我对android地理围栏api感到困惑。所以方法是.setTransitionTypes(int)。但是,当我试图将geofeen设置为监视特定geofeen的进入和退出时,它只监视我将其设置为监视的转换类型。
下面是我的代码示例

public Geofence toGeofence() {
// Build a new Geofence object
return new Geofence.Builder()
        .setRequestId(getId())
        .setTransitionTypes(getTransitionType()) //Geofence.GEOFENCE_TRANSITION_ENTER
        .setTransitionTypes(getTransitionType2())// Geofence.GEOFENCE_TRANSITION_EXIT
        .setCircularRegion(
                getLatitude(), getLongitude(), getRadius())
        .setExpirationDuration(mExpirationDuration)
        .build();}

这只监视最后一个转换类型集,即退出转换,我已经为同一个区域创建了两个地理围栏,一个用于监视每个转换,但我觉得这不是该做的。有什么帮助吗?

最佳答案

对于可能遇到此问题的人,设置多个转换类型的方法是在每个转换类型之间添加一个。

geofence.setTransitionType(getTransitionType() | getTransitionType2());

10-06 05:52