package io.bxbxbai.zhuanlan;
import android.app.Application;
import android.view.Choreographer;
import com.facebook.stetho.Stetho;
import io.bxbxbai.common.StopWatch;
import io.bxbxbai.common.Tips;
import io.bxbxbai.zhuanlan.core.DataCenter;
/**
*
* @author bxbxbai
*/
public class ZhuanlanApplication extends Application {
private static ZhuanlanApplication mContext;
private static final Choreographer.FrameCallback FRAME_CALLBACK = new Choreographer.FrameCallback() {
@Override
public void doFrame(long frameTimeNanos) {
StopWatch.log("doFrame: " + frameTimeNanos);
}
};
@Override
public void onCreate() {
super.onCreate();
mContext = this;
Tips.init(this);
DataCenter.init(this, "zhuanlan.db");
// StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder()
// .detectDiskReads()
// .detectDiskWrites()
// .detectNetwork()
// .penaltyLog()
// .build());
//
// StrictMode.setVmPolicy(new StrictMode.VmPolicy.Builder()
// .detectActivityLeaks()
// .detectLeakedSqlLiteObjects()
// .penaltyLog()
// .penaltyDeath()
// .build());
initStetho();
Choreographer choreographer = Choreographer.getInstance();
choreographer.postFrameCallback(FRAME_CALLBACK);
}
private void initStetho() {
Stetho.initialize(Stetho.newInitializerBuilder(this)
.enableDumpapp(Stetho.defaultDumperPluginsProvider(this))
.enableWebKitInspector(Stetho.defaultInspectorModulesProvider(this))
.build());
}
public static ZhuanlanApplication getInstance() {
return mContext;
}
}