Android Dev: Как извлечь данные из Интернета и использовать данные в моем приложении? - PullRequest
5 голосов
/ 24 декабря 2010

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

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

Ответы [ 2 ]

19 голосов
/ 24 декабря 2010

Попробуйте ...

DefaultHttpClient httpClient = new DefaultHttpClient();
HttpGet httpGet = new HttpGet("http://www.someplace.com");
ResponseHandler<String> resHandler = new BasicResponseHandler();
String page = httpClient.execute(httpGet, resHandler);

Это можно использовать для захвата всей веб-страницы в виде строки HTML, т. Е. "<html>...</html>"

РЕДАКТИРОВАТЬ: Обратите внимание, что вам нужно объявить следующее 'использование-разрешения' в XML-файле манифеста Android ...

<uses-permission android:name="android.permission.INTERNET" />
0 голосов
/ 04 марта 2014

Для тех, кто еще не знает, в каждой из ваших программ для Android есть файл с именем manifest.

Содержимое манифеста представляет собой xml и обычно выглядит следующим образом:

<?xml version="1.0" encoding="utf-8"?>

<manifest>

    <uses-permission />
    <permission />
    <permission-tree />
    <permission-group />
    <instrumentation />
    <uses-sdk />
    <uses-configuration />  
    <uses-feature />  
    <supports-screens />  
    <compatible-screens />  
    <supports-gl-texture />  

    <application>

        <activity>
            <intent-filter>
                <action />
                <category />
                <data />
            </intent-filter>
            <meta-data />
        </activity>

        <activity-alias>
            <intent-filter> . . . </intent-filter>
            <meta-data />
        </activity-alias>

        <service>
            <intent-filter> . . . </intent-filter>
            <meta-data/>
        </service>

        <receiver>
            <intent-filter> . . . </intent-filter>
            <meta-data />
        </receiver>

        <provider>
            <grant-uri-permission />
            <meta-data />
            <path-permission />
        </provider>

        <uses-library />

    </application>

</manifest>

Помимо прочего, в этом файле вы указываете разрешения на использование, которые использует ваша программа, например, если нужно сделать телефонный звонок, загрузить данные и т. д.

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

Помните (Rawr!) Об этом при программировании, потому что ваше приложение будет лучше, если пользователь откажется от загрузки вашего приложения, а ваше приложение все еще работает.

Для вашего приложения вам необходимо разрешение на доступ в Интернет. Чтобы включить его, добавьте следующее разрешение на использование в файле манифеста, где бы вы ни хотели, в теге вверху и теге внизу:

<uses-permission android:name="android.permission.INTERNET" />

Это побудит пользователя принять решение: «Вы хотите разрешить этому приложению доступ в Интернет?»

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