无论你是编写http,socket,json,xml网络程序时,经常碰到一个错误,找了很久才解决才知道,添加如下语句就可以解决:
StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder().detectDiskReads().detectDiskWrites().detectNetwork().penaltyLog().build());StrictMode.setVmPolicy(new StrictMode.VmPolicy.Builder().detectLeakedSqlLiteObjects().detectLeakedClosableObjects().penaltyLog().penaltyDeath().build());
由于时间短,也没深究,这两个语句加在setContentView(main)之前。今天才理解是啥回事:
1、是开发人员用于检测哪些操作不应该在主线程中执行的一种方法。
2、开发人员用于限制如连接网络或者磁盘读写等操作,不充许出现在主线程中。也可以不限制。关键是参数问题!