【实战】android网页源代码查看器
点击查看源代码,可以查看该网页的源代码
一、文件结构
MainActivity.java:
package com.example.viewpagesource;import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;import com.example.viewpagesource.utils.StreamTool;import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.app.Activity;
import android.text.TextUtils;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;public class MainActivity extends Activity implements View.OnClickListener { protected static final int SUCCESS = 0;
protected static final int ERROR = 1;
protected static final int NETWORK_ERROR = 2;
private Button btn;
private EditText ed_path;
private TextView tv;
@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);btn=(Button) findViewById(R.id.btn);btn.setOnClickListener(this);ed_path=(EditText) findViewById(R.id.ed_path);tv=(TextView) findViewById(R.id.tv);}//定义一个秘书Handler handler=new Handler(){ public void handleMessage(android.os.Message msg) { switch (msg.what) {
case SUCCESS:
String value=(String) msg.obj;
tv.setText(value);
break;
case ERROR:
System.out.println("ERROR");
Toast.makeText(MainActivity.this, "错误发生了", 0).show();
break;
case NETWORK_ERROR:
System.out.println("NETWORK_ERROR");
Toast.makeText(MainActivity.this, "错误发生了", 0).show();
break;
default:
break;
} };};String path;
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
path = ed_path.getText().toString().trim();
if(TextUtils.isEmpty(path)){
Toast.makeText(this, "路径有错误", 0).show();
return;
}
//连接网络,要启动一个新的线程去,干耗时的事情
new Thread(){
public void run() {
try {
URL url=new URL(path);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
//设置连接超时为5秒钟
conn.setConnectTimeout(5000);
conn.setRequestMethod("GET");
String contentType = conn.getContentType();
int code = conn.getResponseCode();
if(code==200){
InputStream in = conn.getInputStream();
//这里的data是从服务器返回的
String data=StreamTool.decodeStream(in);
//展示在屏幕上
Message msg=Message.obtain();
msg.what=SUCCESS;
msg.obj=data;
handler.sendMessage(msg);
}else{
Message msg=Message.obtain();
msg.what=ERROR;
handler.sendMessage(msg);
}
} catch (Exception e) {
// TODO Auto-generated catch block
Message msg=Message.obtain();
msg.what=NETWORK_ERROR;
handler.sendMessage(msg);
e.printStackTrace();
}
};
}.start();
}}
StreamTool.java
package com.example.viewpagesource.utils;import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;public class StreamTool { public static String decodeStream(InputStream in) throws IOException {
// TODO Auto-generated method stub
//底层流
ByteArrayOutputStream baos=new ByteArrayOutputStream();
int len=0;
byte[] buf=new byte[1024];
while((len=in.read(buf))>0){
baos.write(buf,0,len);
}
String data = baos.toString();
return data;
}}
activity_main.xml:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical"tools:context=".MainActivity" ><EditTextandroid:id="@+id/ed_path"android:layout_width="fill_parent"android:layout_height="wrap_content"android:text="http://www.baidu.com" /><Buttonandroid:id="@+id/btn" android:layout_width="fill_parent"android:layout_height="wrap_content"android:text="查看网页源代码"/><ScrollViewandroid:layout_width="fill_parent"android:layout_height="wrap_content" >
<TextViewandroid:layout_width="fill_parent"android:layout_height="wrap_content"android:id="@+id/tv" />
</ScrollView>
</LinearLayout>
AndroidMainfest.xml
<uses-permission android:name="android.permission.INTERNET"/>
【实战】android网页源代码查看器相关推荐
- html历史查看器,网页源代码查看器
网页源代码查看器是一款可以查看手机浏览器网页的代码查看工具.平时我们都是在电脑IE上查看代码,现在手机上也可以查看了.网页源代码查看器app可以进行网页源代码的查看,并且拥有高亮显示,支持同步预览以及 ...
- 傲游浏览器怎么看网页源代码 网页源代码查看方法简述
网页源代码,顾名思义就是指在网页制作过程中需要用到的一些特殊的"语言",设计人员向通过对这些"语言"进行组织编排制作出网页,再由浏览器进行"翻译&qu ...
- 谷歌浏览器怎么查看网页源代码 Chrome浏览器网页源代码查看技巧分享
凭借简单.高效的使用体验,谷歌开发的网页浏览器"Chrome"在国内也不乏粉丝,甚至一度被视为装机必备的软件之一.但其操作方式和界面设计,与国产浏览器略有不同!那么,谷歌浏览器要怎 ...
- Android WIFI密码查看器实例(在获取Root权限下查看系统文件)
Android WIFI密码查看器实例 实现原理:使用shell命令查看保存WIFI密码的系统文件 涉及的知识 界面展示 基本的Shell命令 shell查看WIFI密码 ShellUtil的使用 正 ...
- Esp32Cam WebServer 网页源代码查看与编辑
Esp32Cam WebServer 网页源代码查看与编辑 date: 2022-01-12 lastmod: 2022-01-12 原文地址 背景介绍 在 为 Esp32 Cam 配置 Arduin ...
- 网页密码查看器+原代码+windows密码查看
前段时间写了个查看windows密码框的密码查看器! 今天在 网上看了些关于网页密码查看的资料 就写了个网页密码查看器! 启动后点开始按纽(也就是第一个按纽) 把鼠标移动到网页密码框等1秒就ok了 ( ...
- 恢复IE8自带的源代码查看器
各种知名不知名的文本编辑软件安完了之后,IE8的默认源代码编辑器也被改了很多次 其实IE8默认已经不使用记事本了,带有语法高亮和行号功能的查看器很好用,堪比FF的查看器了.而且占用资源很少,跑起来很快 ...
- Android 网络HTML查看器
本文实现一个基于Android的网络HTML查看器 新建项目,项目布局文件如下: <LinearLayout xmlns:android="http://schemas.android ...
- 查看网页源代码 / 查看框架源代码
网页源代码---是父级网页的代码,可在页面内右击或使用快捷键Ctrl+U 也可以在你想要查看的网页地址栏前面加上入view-source: 框架源代码---网页中有一种节点叫iframe,相当于网页的 ...
最新文章
- python用动态规划求最短路径_动态规划之最短路径和
- 泊松分布E(X^2)
- 十六进制转换为十进制的效率问题
- 磁盘阵列上的文件访问不了--原因是lvm不能activate,解决办法
- [原]RHCS集群的服务切换测试札记
- linux查看apache配置文件路径,linux 命令行下查看apache配置文件httpd.conf位置
- 计算机系统的物质实体,计算机基础-(-第1次-).pdf
- pycharm变量存_pycharm不为人知的功能们
- Vrep 中的运动规划1(主要是基于RRT算法)
- python使用sqlalchemy判断数据库是否包含某张表
- Qt学习之路3---Qt中的坐标系统
- 顶配售价 18499 元,用上 M1 的 iPad Pro 性能与价格“直逼”电脑,这届苹果发布会有你喜欢的吗?
- 空间滤波_空间频率 、 光波方向 与 空间滤波 4f系统
- mysql存储过程switch_Mysql存储过程从0开始(上)
- vss2005 配置与使用
- linux中如何编译成bin文件,gcc 如何编译成bin文件
- 2021中国隧道与地下空间大会暨中国(城市)地下空间学会(筹)成立大会
- python爬取饿了么评论_python爬取饿了么的实例
- 俄语考生学计算机难吗,俄语说的不好,没有计算机证书,甚至还是单身狗,怎么办?...
- mysql doesn t exist_Mysql的“Table 'mysql.servers' doesn't exist”的解决方法