Android docs4.3API

來源:互聯網
上載者:User

網上找的類,加快訪問Android docs API,主要原因是載入網上的js檔案慢,另外一個是載入google字型慢!

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 AndroidDoc {     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 TAG = "";    private static String androidSDKHome;     public static void main(String[] args) {        Map 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)) {                                    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 = "";                }                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;    } }

直接編譯運行,注釋的三行,三行代表替換三次

載入慢原因有兩個一個是載入Google的字型,二個是載入Google的JS檔案.

如果感覺麻煩直接去的我網盤下載,地址:http://pan.baidu.com/s/1eQd4gEm


聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.