1、首先遇到的问题,如下
HttpClient client = new DefaultHttpClient();
HttpParams httpParams = client.getParams(); // 设置网络超时参数
HttpConnectionParams.setConnectionTimeout(httpParams, 10000);
HttpConnectionParams.setSoTimeout(httpParams, 10000);
HttpResponse response = client.execute(new HttpGet(url));
到达这里就不能执行了,由于这个方法上面写了 throws Exception 具体报什么错误,也在logCat下面看不到,
一致在怀疑是不是 “<uses-permission android:name="android.permission.INTERNET" >
</uses-permission>‘这个网络访问权限是不是不起作用。
而且,确认了 ,
(1)手机其他webview访问网络的功能都是可以用的,
(2)而且 url,在浏览器下面都是可以访问的,url也没有写错。
于是把方法的 throws Exception,去掉,增加了 try catch模块,这样在logcat下面就可以看到错误了。
android.os.NetworkOnMainThreadException;通过网上查找了答案,在此Activity的onCreate方法增加如下代码
StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder().detectDiskReads().detectDiskWrites().detectNetwork().penaltyLog().build());
StrictMode.setVmPolicy(new StrictMode.VmPolicy.Builder().detectLeakedSqlLiteObjects().detectLeakedClosableObjects().penaltyLog().penaltyDeath().build());
注意,增加后会报错,按照提示 ,增加 @SuppressLint("NewApi"),如果还是报错,则执行 andriod clean link makers。
到此终于解决了,花了好几个小时。
2、版本的更新下载又遇到了一些小问题,
(1)提”conversion to dalvik format failed with “,此时,仅仅需要 clean一下工程即可。
(2)android 已安装了存在签名冲突的同名数据包
两次打包用的签名key不一样,
于是,这个进行了全部重新搞过。