下面列出了怎么用android.view.Choreographer.FrameCallback的API类实例代码及写法,或者点击链接到github查看源代码。
private VrShellDelegate(ChromeActivity activity, VrClassesWrapper wrapper) {
mActivity = activity;
mVrClassesWrapper = wrapper;
// If an activity isn't resumed at the point, it must have been paused.
mPaused = ApplicationStatus.getStateForActivity(activity) != ActivityState.RESUMED;
updateVrSupportLevel();
mNativeVrShellDelegate = nativeInit();
mFeedbackFrequency = VrFeedbackStatus.getFeedbackFrequency();
mEnterVrHandler = new Handler();
Choreographer.getInstance().postFrameCallback(new FrameCallback() {
@Override
public void doFrame(long frameTimeNanos) {
if (mNativeVrShellDelegate == 0) return;
Display display =
((WindowManager) mActivity.getSystemService(Context.WINDOW_SERVICE))
.getDefaultDisplay();
nativeUpdateVSyncInterval(
mNativeVrShellDelegate, frameTimeNanos, 1.0d / display.getRefreshRate());
}
});
ApplicationStatus.registerStateListenerForAllActivities(this);
}