Java Вопрос, получение данных из Интернета - PullRequest
0 голосов
/ 13 февраля 2011

Хорошо, у меня есть этот метод, с помощью которого я получаю HTML-код с любого URL-адреса ввода:

private String GetURL(String f)throws Exception{ //return html code for input url f
                String k="";        String l="";
                URL url = new URL(f);

        HttpURLConnection conn = (HttpURLConnection) url.openConnection();
        conn.setConnectTimeout(5000);    // 5 seconds
        conn.setRequestMethod("GET");       
        conn.connect();
        BufferedReader rd  = new BufferedReader(new InputStreamReader(  
                                                    conn.getInputStream()));


        while ((k = rd.readLine()) != null) {
            l = l + k;
        }
        conn.disconnect(); 
        return l; 
       }

Он отлично работает для меня.Я использую его в приложении для Android на главном интерфейсе.Таким образом, когда пользователь запускает приложение, оно извлекает данные из Интернета, используя вышеуказанный метод, а затем отображает его.

Я хочу знать, есть ли способ кэширования этой информации в Java, чтобы, если она была получена слишком рано, она могла вернуть результат из кэша, а затем снова подключилась к сети.

Поскольку проблема заключается в том, что всякий раз, когда пользователь меняет макет, вертикальный на горизонтальный;основной экран сбрасывается, и пользователь снова получает подсказку индикатора выполнения (которую я разработал до загрузки данных).Я хочу избежать этого без использования какой-либо сложности базы данных.

Так хотите знать, предлагает ли Java какой-либо параметр кэширования автоматически или нет?

Ответы [ 2 ]

1 голос
/ 13 февраля 2011

Вы должны сами управлять жизненным циклом Activity, так что, к сожалению, все не так просто.Этот ответ дает хорошее решение описываемой вами проблемы: Перезапуск активности при ротации Android

0 голосов
/ 13 февраля 2011

Так хотите узнать, предлагает ли Java какую-либо опцию кэширования автоматически или нет?

Нет. Вам придется сделать это самостоятельно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...