2017-10-12 44 views
2

我真的不明白GeofencingRequest類的功能setInitialTriggerGeofencingRequest上setInitialTrigger的用途是什麼?

我知道,我們可以創造一些Geofence對象,不同的過渡:

  1. 輸入
  2. 退出
  3. 停留

這是對我很好的和可接受的。

現在,我的問題是相對於類GeofencingRequest,更準確地說是方法setInitialTrigger。 我真的不明白我們應該放在那裏的價值...... Android文檔(here)對於該方法的含義並沒有真正的幫助。

想象一下,我有這樣的一段代碼:

private GeofencingRequest getGeofencingRequest() { 
     GeofencingRequest.Builder builder = new GeofencingRequest.Builder(); 
     builder.setInitialTrigger(GeofencingRequest.INITIAL_TRIGGER_ENTER); 
     builder.addGeofences(mGeofenceList); 
     return builder.build(); 
    } 

什麼是GeofencingRequest.INITIAL_TRIGGER_ENTER意思?

對我來說,這意味着,GeofencingRequest應觸發任何Geofence對象,其中有一個ENTER轉換。

但想象一下,我有不同的行爲進入或退出過渡的多Geofence。

我應該如何使用GeofencingRequest Builder來處理/實施?

回答

1

builder.setInitialTrigge在添加地理圍欄時設置地理圍欄通知行爲。

可以使用3個常量:

公共靜態最終詮釋INITIAL_TRIGGER_DWELL

表明地理界線服務應該在此刻觸發GEOFENCE_TRANSITION_DWELL通知時添加了地理圍欄的標誌,如果該設備已一段時間內在地理圍欄內。

恆值:4

公共靜態最終詮釋INITIAL_TRIGGER_ENTER

表明地理界線服務應該在此刻觸發GEOFENCE_TRANSITION_ENTER通知時添加了地理圍欄,如果設備已經地理圍欄內的標誌。

常數值:1

公共靜態最終詮釋INITIAL_TRIGGER_EXIT

指示地理圍欄服務應該在此刻觸發GEOFENCE_TRANSITION_EXIT通知當加入地理圍欄,並且如果設備已經地理圍欄外面一個標誌。

常量值:2

什麼是GeofencingRequest.INITIAL_TRIGGER_ENTER的含義是什麼? 規定geofencing服務應該在添加地理圍欄並且設備已經位於該地理圍欄內時觸發。

檢查不同的是時間:

DWELL =已經是地理圍欄的一段時間內。

ENTER =已經在該地理圍欄內。

EXIT =已經在該地理圍欄之外。

+0

在這種情況下,我可以將TRIGGER_ENTER和TRIGGER_EXIT放到setInitialTrigger方法中? 像''setInitialTrigger(GeofenceRequest.INITIAL_TRIGGER_ENTer | GeofenceRequest.INITIAL_TRIGGER_EXIT)'這將觸發添加了入口過渡或出口的每個地理柵欄對象? – Damiii