2017-06-19 38 views
0

所以我有一個ViewPager與4片段。第三個片段是MapBox。現在當第三頁打開時,它會調用onMapReady,這是配置跟蹤的最佳時機,就像樣本上的一樣。如何在不使用時關閉Mapbox中的跟蹤?

 mMapboxMap = mapBoxMap; 
    mMapboxMap.setMinZoomPreference(Constants.MIN_ZOOM); 
    mMapboxMap.setMaxZoomPreference(Constants.MAX_ZOOM); 
    mMapboxMap.getMyLocationViewSettings().setPadding(0, 0, 0, 0); 
    mMapboxMap.getMyLocationViewSettings().setAccuracyTintColor(ContextCompat.getColor(getContext(), R.color.color_location_accuracy_tint)); 
    mMapboxMap.getMyLocationViewSettings().setForegroundTintColor(ContextCompat.getColor(getContext(), R.color.color_location_tint)); 
    mMapboxMap.getTrackingSettings().setDismissAllTrackingOnGesture(true); 
    mMapboxMap.setMyLocationEnabled(true); 
    mMapboxMap.setOnCameraChangeListener((CameraPosition p) -> onCameraChange(p)); 
    mMapboxMap.setOnScrollListener(() -> onMapScroll()); 

    mPermissionManager = new PermissionsManager(this); 
    mLocationEngine = AndroidLocationEngine.getLocationEngine(getActivity()); 
    mLocationEngine.activate(); 

    enableTracking(true); 

當我切換回第1頁時,根據ViewPager行爲將丟棄第3頁。問題是,它仍然跟蹤GPS,因爲我可以看到notif欄的GPS指示燈仍然亮着。

我終止這樣的:

mLocationEngine.removeLocationUpdates(); 
    mLocationEngine.deactivate(); 
    mLocationEngine.removeLocationEngineListener(mLocationEngineListener); 
    enableTracking(false); 

這裏是我的enableTracking方法:

public void enableTracking(boolean enable) 
{ 
    mMapboxMap.getTrackingSettings().setMyLocationTrackingMode(enable? MyLocationTracking.TRACKING_FOLLOW : MyLocationTracking.TRACKING_NONE); 
} 

任何想法,爲什麼會這樣呢?

回答

2

看起來像是hitting this issue存在於Mapbox使用的底層位置庫中。這應該在下一個版本5.1.0中得到解決。

+0

什麼時候會發布?它現在可用嗎? –

+0

我使用了測試版,並且出現此錯誤:com.mapzen.android:lost:3.0.1-20170607.212149-4。 –

+0

本週5.1.0發佈了候選版本,我們預計不久將發佈最終版本。 – zugaldia

相關問題