Android AppStateManager ::检测到的DataBuffer对象内部数据泄漏

Hec*_*tor 9 android google-play-services

我正在使用AppState来存储我当前的Android应用程序数据.当我调用该 load方法并设置一个回调监听器时,我在logcat输出中看到以下内容.

检测到DataBuffer对象内部数据泄漏!确保在完成所有DataBuffer扩展对象后显式调用close().(com.google.android.gms.appstate.AppStateBuffer@45454128)

这是我的方法调用(我没有明确打开任何缓冲区)

AppStateManager
    .load(getApiClient(), APP_STATE_STATE_KEY)
    .setResultCallback(new ResultCallback<AppStateManager.StateResult>() {
        @Override
        public void onResult(final StateResult stateResult) {
        }
    });
Run Code Online (Sandbox Code Playgroud)

例如,该onResult()方法是空的,为什么我看到这个logcat条目?我需要什么缓冲关闭?

Jul*_*nez 5

它不是你需要关闭的缓冲区,而是连接.即使你的onResult方法为空,它也是回调的结果,这意味着建立了连接.

我在ommited时看到了与Google Maps Api相同的logcat输出

GoogleApiClient.disconnect()
Run Code Online (Sandbox Code Playgroud)

在活动/片段生命周期结束时