【发布时间】:2016-07-01 18:13:19
【问题描述】:
我已经通过代码在我的应用上启用了StrictMode:
public void onCreate() {
setStrictMode();
super.onCreate();
}
private void setStrictMode() {
StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder()
.detectAll()
.penaltyLog()
.penaltyDeath()
.build());
StrictMode.setVmPolicy(new StrictMode.VmPolicy.Builder()
.detectAll()
.penaltyLog()
.build());
}
我在以下日志启动时发现崩溃:
StrictMode 政策违规; ~duration=0 毫秒:android.os.StrictMode$StrictModeDiskReadViolation:策略=95 违规=2 在 android.os.StrictMode$AndroidBlockGuardPolicy.onReadFromDisk(StrictMode.java:1137) 在 libcore.io.BlockGuardOs.open(BlockGuardOs.java:182) 在 libcore.io.IoBridge.open(IoBridge.java:442) 在 java.io.FileInputStream.(FileInputStream.java:76) 在 android.graphics.Typeface.getFullFlipFont(Typeface.java:582) 在 android.graphics.Typeface.getFontPathFlipFont(Typeface.java:530) 在 android.graphics.Typeface.SetFlipFonts(Typeface.java:717) 在 android.graphics.Typeface.SetAppTypeFace(Typeface.java:844) 在 android.app.Application.onCreate(Application.java:108)
我认为是io操作违反主线程,我的设备是三星s6,android版本5.1.1,但是我在任何地方都找不到方法getFullFlipFont,如果我禁用strictmode就可以了,在哪里io违规发生了吗?
【问题讨论】:
标签: android