BaseApp.java 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. package com.haochuan.hciptvbasic;
  2. import android.app.Application;
  3. import com.liulishuo.filedownloader.FileDownloader;
  4. import com.tt.memorymonitorlib.MemoryMonitor;
  5. import com.yanzhenjie.nohttp.InitializationConfig;
  6. import com.yanzhenjie.nohttp.NoHttp;
  7. import com.yanzhenjie.nohttp.URLConnectionNetworkExecutor;
  8. import com.yanzhenjie.nohttp.cache.DBCacheStore;
  9. import com.yanzhenjie.nohttp.cookie.DBCookieStore;
  10. public class BaseApp extends Application {
  11. @Override
  12. public void onCreate() {
  13. super.onCreate();
  14. initHttp();
  15. FileDownloader.setupOnApplicationOnCreate(this); //初始化文件下载插件
  16. MemoryMonitor.getInstance().init(this);//初始化memory monitor
  17. }
  18. private void initHttp() {
  19. InitializationConfig config = InitializationConfig.newBuilder(this)
  20. // 全局连接服务器超时时间,单位毫秒,默认10s。
  21. .connectionTimeout(10 * 1000)
  22. // 全局等待服务器响应超时时间,单位毫秒,默认10s。
  23. .readTimeout(10 * 1000)
  24. // 配置缓存,默认保存数据库DBCacheStore,保存到SD卡使用DiskCacheStore。
  25. .cacheStore(
  26. // 如果不使用缓存,setEnable(false)禁用。
  27. new DBCacheStore(this).setEnable(false)
  28. )
  29. // 配置Cookie,默认保存数据库DBCookieStore,开发者可以自己实现CookieStore接口。
  30. .cookieStore(
  31. // 如果不维护cookie,setEnable(false)禁用。
  32. new DBCookieStore(this).setEnable(false)
  33. )
  34. // 配置网络层,默认URLConnectionNetworkExecutor,如果想用OkHttp:OkHttpNetworkExecutor。
  35. .networkExecutor(new URLConnectionNetworkExecutor())
  36. // 全局重试次数,配置后每个请求失败都会重试x次。
  37. .retry(2)
  38. .build();
  39. NoHttp.initialize(config);
  40. }
  41. }