Android SDK的docs访问速度很慢(新)
#设置环境变量
名称:ANDROID_SDK_HOME
值:我的为-->E:\android\android-sdk
#代码编译及运行
1.把下面的代码保存为:AndroidDocRepair.java
2.javac AndroidDocRepair.java
3.java AndroidDocRepair
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileFilter;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Map;
import java.util.UUID; public class AndroidDocRepair {
private static final String ANDROID_SDK_HOME = "ANDROID_SDK_HOME";
private static final String TAG = "<script src=\"http://www.google.com/jsapi\" type=\"text/javascript\"></script>";
private static final String TAG2 = "<link rel=\"stylesheet\"";
private static final String TAG3 = "href=\"http://fonts.googleapis.com/css?family=Roboto:regular,medium,thin,italic,mediumitalic,bold\" title=\"roboto\">";
private static String androidSDKHome; public static void main(String[] args) {
Map<String, String> map = System.getenv();
androidSDKHome = map.get(ANDROID_SDK_HOME);
if (androidSDKHome != null) {
System.out.println("Detected the Android SDK Installation path:"
+ androidSDKHome);
File docs = new File(androidSDKHome + "\\docs"); System.out.println("It will take several minutes, please wait...");
traverse(docs);
System.out
.println("Operation Down!!! Now you can visit Android Doc without waiting...");
} else {
System.out
.println("Please configure the Android SDK Environment variable (ANDROID_SDK_HOME)!");
}
} /**
* 遍历Android SDK安装目录下的docs目录
*
* @param dir
*/
private static void traverse(File dir) {
if (dir.isDirectory()) {
File[] files = dir.listFiles(new FileFilter() {
@Override
public boolean accept(File file) {
if (file.isFile() && file.getName().endsWith(".html")) {
BufferedReader reader = null;
try {
reader = new BufferedReader(new FileReader(file));
String buffer;
while ((buffer = reader.readLine()) != null) {
if (buffer.trim().equalsIgnoreCase(TAG)||buffer.trim().equalsIgnoreCase(TAG2)||buffer.trim().equalsIgnoreCase(TAG3)) {
return true;
}
}
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
}
} else if (file.isDirectory()) {
return true;
} return false;
}
}); for (File file : files) {
if (file.isDirectory()) {
System.out.println("Scanning Folder:"
+ file.getAbsolutePath());
traverse(file);
} else {
doChange(file);
}
}
}
} /**
* 注释html中的某行Javascript代码
*
* @param file
* @return
*/ private static boolean doChange(File file) {
System.out.println("Extracting File:" + file.getAbsolutePath() + "...");
String desPath = file.getParent() + "\\" + UUID.randomUUID().toString() + ".html";
File des = new File(desPath);
BufferedReader reader = null;
BufferedWriter writer = null;
try {
des.createNewFile();
reader = new BufferedReader(new FileReader(file));
writer = new BufferedWriter(new FileWriter(des));
String buffer;
while ((buffer = reader.readLine()) != null) {
if (buffer.trim().equalsIgnoreCase(TAG)) {
buffer = "<!--" + TAG + "-->";
}
if (buffer.trim().equalsIgnoreCase(TAG2)) {
buffer = "<!--" + TAG2;
}
if (buffer.trim().equalsIgnoreCase(TAG3)) {
buffer = TAG3 + "-->";
} writer.write(buffer + "\n");
writer.flush();
} return true;
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
reader.close();
writer.close();
file.delete();
des.renameTo(file);
} catch (IOException e) {
e.printStackTrace();
}
} return false;
}
}
Android SDK的docs访问速度很慢(新)的更多相关文章
- 解决Android sdk manager无法访问google服务器的问题
开发Android应用,使用最广泛的开发工具应该就是ADT了,但是ADT默认只带了Android 4.3(API 18),如果需要安装其他版本的SDK,就需要启动Android SDK Manager ...
- Github访问速度很慢的原因,以及解决方法
1,CDN,Content Distribute Network,可以直译成内容分发网络,CDN解决的是如何将数据快速可靠从源站传递到用户的问题.用户获取数据时,不需要直接从源站获取,通过CDN对于数 ...
- weblogic 控制台访问速度很慢的解决方案
实际是JVM在Linux下的bug 他想调用一个随机函数 但取不到 暂时的解决办法是 1)较好的解决办法: 在Weblogic启动参数里添加 “- Djava.security.egd=file:/d ...
- 【转】如何让你的Android SDK下载或者升级快如闪电
准备学习Android开发,但是Android SDK Manager界面都刷不出来,今天看到了一篇文章,顿时就解决了,原文地址http://qichaochen.github.io/2014/12/ ...
- 第一部分:开发前的准备-第八章 Android SDK与源码下载
第8章 Android SDK与源码下载 如果你是新下载的SDK,请阅读一下步骤了解如何设置SDK.如果你已经下载使用过SDK,那么你应该使用AVD Manager,来更新即可. 下面是构建Andro ...
- 简单的刚開始学习的人配置Android SDK+ADT+Eclipse
1.下载JDK.Android SDK和Eclipse(Eclipse 版本号最好新一些) 注意:下载的SDK最好和后面的ADT配套,否则Eclipse可能会报错. 如:SDK 21.0.1 相应 A ...
- Android SDK及ADT更新访问问题的解决办法
一.访问问题Eclipse使用SDK Manager更新时总是出现问题 Failed to fetch URL https://dl-ssl.google.com/android/repository ...
- windows中android SDK manager安装更新sdk很慢,或者出现Done loading packages后不动甚至没有任何可用包
出现问题: 1.windows中android SDK manager安装更新sdk很慢,或者出现Done loading packages后不动甚至没有任何可用包 2.Failed to fetch ...
- 关于Android SDK Manager更新速度慢的解决方法
因为我的C盘比较小,android sdk安装在c盘那么他下载的东西也会默认在c盘.所以我选择安装在其他的盘.而且我发现android sdk manager可以开多个窗口,这样的话如果每个窗口都很慢 ...
随机推荐
- 关于Ajax知识点小节
URL:统一资源定位符 网络的七层协议:网卡 驱动 网络层(ip) 传输层(tcp udp) 会话层( ) 应用层(http.) restful表征状态转移(一种表征架构) CURD 增删改查 ...
- Samba服务器安装及配置
Samba最早诞生在unix操作系统上面,samba是基于SMB(Server Message Block)协议,是一种客户端服务器协议 一.安装samba # yum -y install samb ...
- Codeforces Round #149 (Div. 2)
A. Heads or Tails 枚举. B. Big Segment \(L=min(l_i),\ R=max(R_i)\) 判断是否存在区间\([L,R]\). C. King's Path 单 ...
- Andoid 利用ndk-stack定位崩溃代码
Android NDK自从版本R6开始, 提供了一个工具ndk-stack( 在目录{ndk_root}/中 ). 这个工具能自动分析dump下来的crash log, 将崩溃时的调用内存地址和c++ ...
- Linux系统编程@终端IO
Linux系统中终端设备种类 终端是一种字符型设备,有多种类型,通常使用tty 来简称各种类型的终端设备.终端特殊设备文件一般有以下几种: 串行端口终端(/dev/ttySn ) ,伪终端(/dev ...
- java基础之:匿名内部类应用例子一
一:接口 package com.yeepay.sxf.testclassforinner; /** * 回调接口. * @author shangxiaofei * */ public interf ...
- Hightchart.js 的使用
中文网址介绍 http://www.hcharts.cn/docs/basic-zoom http://v1.hcharts.cn/demo/index.php?p=46
- A quest for the full InnoDB status
When running InnoDB you are able to dig into the engine internals, look at various gauges and counte ...
- 命名空间"system.web"中不存在类型或命名空间名称security"
在webservice中添加了一个md5加密报错: "命名空间"system.web"中不存在类型或命名空间名称security" 在引用中添加System.W ...
- J2EE分布式事务中的提交、回滚方法调用异常。
这个是昨天上班的时候,写一个后台程序的调试程序时碰到的问题,和项目经理纠结了一天,最后搞定了.于是今天上班正好闲着,花了几乎一天的时间去网上找各种相关的资料.目前了解的内容如此: 根据使用的weblo ...