优化卡片滑动性能:探路视频播放、C位事件逻辑;定制化app列表;修改小智动画策略;其他优化;

This commit is contained in:
wangcongtao
2020-02-12 17:57:53 +08:00
parent c6a258e9c6
commit 62614236b2
17 changed files with 563 additions and 163 deletions

View File

@@ -49,6 +49,7 @@ import com.mogo.service.statusmanager.IMogoStatusManager;
import com.mogo.service.statusmanager.StatusDescriptor;
import com.mogo.utils.logger.Logger;
import java.util.Iterator;
import java.util.List;
/**
@@ -125,8 +126,8 @@ public class MogoServiceProvider implements IMogoModuleProvider,
mRefreshRemainingTime -= ServiceConst.DECREASE_INTERVAL;
if ( mRefreshRemainingTime == 0 ) {
Logger.d( TAG, "move to center and refresh data." );
mStatusManager.setUserInteractionStatus(ServiceConst.TYPE, true, false );
mUiController.moveToCenter(mLastAutoRefreshLocation);
mStatusManager.setUserInteractionStatus( ServiceConst.TYPE, true, false );
mUiController.moveToCenter( mLastAutoRefreshLocation );
notifyRefreshData( mLastAutoRefreshLocation, getQueryRadius(), mAutoRefreshCallback );
} else {
mHandler.sendEmptyMessageDelayed( msg.what, ServiceConst.DECREASE_INTERVAL );
@@ -495,8 +496,8 @@ public class MogoServiceProvider implements IMogoModuleProvider,
}
Logger.d( TAG, mAutoRefreshCallback == callback ? "触发自动刷新" : "触发手动刷新" );
int amount = mLastZoomLevel >= 10 ? 5 : 10;
mRefreshModel.refreshData( latLng, radius, mLastZoomLevel >= 10 ? 5 : 10, callback );
Logger.i( TAG, "刷新半径 = %d, 点 = %s, amount = %d", radius, latLng, amount );
mRefreshModel.refreshData( latLng, radius, amount, callback );
Logger.i( TAG, "刷新半径 = %d, 点 = %s, zoomLevel = %f, amount = %d", radius, latLng, mLastZoomLevel, amount );
}
@Override
@@ -523,9 +524,9 @@ public class MogoServiceProvider implements IMogoModuleProvider,
@Override
public void onStatusChanged( StatusDescriptor descriptor, boolean isTrue ) {
Logger.d(TAG, "状态发生改变---descriptor---" + descriptor + "----isTrue---" + isTrue);
Logger.d( TAG, "状态发生改变---descriptor---" + descriptor + "----isTrue---" + isTrue );
switch ( descriptor ) {
case USER_INTERACTED:
case USER_INTERACTED:
if ( isTrue && !mRefreshRemainingTimeStatus ) {
mRefreshRemainingTimeStatus = true;
mRefreshRemainingTime += mAutoRefreshStrategy.getInterruptInterval();
@@ -556,17 +557,17 @@ public class MogoServiceProvider implements IMogoModuleProvider,
mAutoRefreshCallback.onSuccess();
}
}
} catch (Exception e) {
} catch ( Exception e ) {
e.printStackTrace();
}
break;
}
}
public void refreshStrategy(){
public void refreshStrategy() {
Logger.d( TAG, "move to center and refresh data." );
mStatusManager.setUserInteractionStatus(ServiceConst.TYPE, true, false );
mUiController.moveToCenter(mLastAutoRefreshLocation);
mStatusManager.setUserInteractionStatus( ServiceConst.TYPE, true, false );
mUiController.moveToCenter( mLastAutoRefreshLocation );
notifyRefreshData( mLastAutoRefreshLocation, getQueryRadius(), mAutoRefreshCallback );
}