文档章节

android通过访问网页查看网页源码

ht896632
 ht896632
发布于 2016/03/02 14:07
字数 242
阅读 14
收藏 0

1.添加网络权限

<!--访问网络的权限-->
<uses-permission android:name="android.permission.INTERNET"/>

2.获取网络中网页的数据

/**
	 * 获取网页HTML源代码
	 * @param path 网页路径
	 */
	public static String getHtml(String path) throws Exception {
		URL url=new URL(path);
		HttpURLConnection conn=(HttpURLConnection)url.openConnection();
		conn.setConnectTimeout(5000);
		conn.setRequestMethod("GET");
		if(conn.getResponseCode()==200){
			InputStream inStream=conn.getInputStream();
			byte[] data=read(inStream);
			String html=new String(data,"UTF-8");
			return html;
		}
		return null;
	}

	/**
	 * 读取流中的数据
	 */
	public static byte[] read(InputStream inputStream) throws IOException {
		ByteArrayOutputStream outputStream=new ByteArrayOutputStream();
		byte[] b=new byte[1024];
		int len=0;
		while((len=inputStream.read(b))!=-1){
			outputStream.write(b);
		}
		inputStream.close();
		return outputStream.toByteArray();
	}

3.处理查看网页源码的控制

public class HtmlViewActivity extends Activity {

	private EditText pathText;
	private TextView codeView;
	@Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        pathText=(EditText) findViewById(R.id.pagepath);//网页路径
        codeView=(TextView)findViewById(R.id.codeView);//显示获得的源码
        Button button=(Button) findViewById(R.id.button);//查看按钮
        button.setOnClickListener(new ButtonClickListener());//按钮事件
    }
	/**
	 * 查看按钮处理事件
	 */
	private final class ButtonClickListener implements View.OnClickListener{
		@Override
		public void onClick(View v) {
			String path=pathText.getText().toString();
			try {
				String html=PageService.getHtml(path);
				codeView.setText(html);
			} catch (Exception e) {
				e.printStackTrace();
				Toast.makeText(getApplicationContext(), R.string.error, 1);
			}
		}
	}
}

© 著作权归作者所有

共有 人打赏支持
ht896632
粉丝 37
博文 53
码字总数 31361
作品 0
闵行
高级程序员
私信 提问
Android远程视频监控

1.通过网页远程查看android 摄像头中的内容。 2.在android端开启服务,输入网址,能够查看android 摄像头中的内容,即实现实时视频监控。 3.不连接android端的服务时,默认为不传输内容,即服...

Beery
2016/08/23
5
0
Android 上的 10 款 Web 开发应用工具

作为一个狂热的 Android 用户,我一直在寻找适合Web开发人员使用的一些应用程序。经过搜索发现能够找到Web开发几乎每个方面的工具,涉及从Web服务器本身到FTP客户端再到一个源代码查看器,让...

红薯
2011/07/17
10.6K
11
9个Web工具提高Android开发效率

在Google的广大支持下,便捷开发Android程序的Native工具层出不穷。其实Android开发涉及到的范围也不小,一些Web工具有时候也会带来事半功倍的效果。有些甚至是一些native应用无法做到的。简...

牵着蜗牛去西藏
2015/07/28
119
3
多平台含移动端/网页pc端远程视频监控系统源码

多平台含移动端/网页pc端远程视频监控系统源码出售转让 这是一整套视频监控系统,包括WEB管理后台,数据转发服务器,桌面监控客户端、移动客户端,Web监控客户端。 移动端支持android ios端, 手...

dsfcsdfs
2014/09/02
3.7K
3
为时已晚?Firefox 60 安卓版终于正式引入量子引擎

去年 11 月,Mozilla 发布了 Firefox 57 桌面版,因引入全新的浏览器 Quantum 量子引擎而将其命名为 “Firefox Quantum” 。Quantum 通过最新的线程处理技术,将 Firefox 的页面呈现速度提速...

王练
2018/05/06
2.6K
14

没有更多内容

加载失败,请刷新页面

加载更多

OSChina 周五乱弹 —— 姑娘馋的口水都留下来了。

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @且无需多言 :分享Fall Out Boy的单曲《Disloyal Order Of Water Buffaloes》 《Disloyal Order Of Water Buffaloes》- Fall Out Boy 手机党...

小小编辑
28分钟前
6
4
vue 对对象的属性进行修改时,不能渲染页面 vue.$set()

我在vue里的方法里给一个对象添加某个属性时,我console.log出来的是已经更改的object ,但是页面始终没有变化 原因如下: **受现代 JavaScript 的限制 (而且 Object.observe 也已经被废弃),...

Js_Mei
今天
2
0
开始看《Java学习笔记》

虽然书买了很久,但一直没看。这其中也写过一些Java程序,但都是基于IDE的帮助和对C#的理解来写的,感觉不踏实。 林信良的书写得蛮好的,能够帮助打好基础,看得出作者是比较用心的。 第1章概...

max佩恩
昨天
12
0
Redux 三大原则

1.单一数据源 在传统的MVC架构中,我们可以根据需要创建无数个Model,而Model之间可以互相监听、触发事件甚至循环或嵌套触发事件,这些在Redux中都是不被允许的。 因为在Redux的思想里,一个...

wenxingjun
昨天
8
0
跟我学Spring Cloud(Finchley版)-12-微服务容错三板斧

至此,我们已实现服务发现、负载均衡,同时,使用Feign也实现了良好的远程调用——我们的代码是可读、可维护的。理论上,我们现在已经能构建一个不错的分布式应用了,但微服务之间是通过网络...

周立_ITMuch
昨天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部