光环助手V4.7.0-首页游戏功能强化(视频自动播放)(20210202测试问题) https://git.ghzs.com/pm/halo-app-issues/-/issues/1122

This commit is contained in:
张玉久
2021-02-02 17:01:30 +08:00
parent 2368e268bf
commit d33d0e98c9
5 changed files with 47 additions and 14 deletions

View File

@ -81,6 +81,7 @@ import com.gh.gamecenter.retrofit.Response;
import com.gh.gamecenter.retrofit.RetrofitManager;
import com.gh.gamecenter.suggest.SuggestSelectFragment;
import com.gh.gamecenter.suggest.SuggestType;
import com.google.android.exoplayer2.upstream.cache.Cache;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import com.halo.assistant.HaloApp;
@ -100,6 +101,7 @@ import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.lang.reflect.Field;
import java.util.Enumeration;
import java.util.List;
import java.util.Timer;
@ -114,6 +116,7 @@ import okhttp3.MediaType;
import okhttp3.RequestBody;
import okhttp3.ResponseBody;
import retrofit2.HttpException;
import tv.danmaku.ijk.media.exo2.ExoSourceManager;
import static com.gh.common.util.EntranceUtils.ENTRANCE_BROWSER;
import static com.gh.common.util.EntranceUtils.HOST_LAUNCH_SIMULATOR_GAME;
@ -326,6 +329,25 @@ public class MainActivity extends BaseActivity {
super.onDestroy();
handler.removeCallbacksAndMessages(null);
releaseExoSourceCache();
}
/**
* 由于ExoTransformer中拦截了{@link ExoSourceManager#release}方法,
* 所以需要在app退出的时候手动release
*/
private void releaseExoSourceCache() {
Cache cache = ExoSourceManager.getCacheSingleInstance(HaloApp.getInstance().getApplication(), null);
cache.release();
try {
Field cacheField = ExoSourceManager.class.getDeclaredField("mCache");
cacheField.setAccessible(true);
cacheField.set(null, null);
} catch (NoSuchFieldException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
}
}
private void observeAd() {
@ -339,7 +361,7 @@ public class MainActivity extends BaseActivity {
}
}
});
AppExecutor.getUiExecutor().executeWithDelay(() -> hideAd(false), 950);
}