Daten von Internetseite importieren?

D

dannywilde

Neues Mitglied
0
Hallo Community,

ich habe folgendes Problem:

Auf meiner Website veröffentliche ich irgendwelche Daten in textform, die täglich aktualisiert werden.
Jetzt habe ich eine App geschrieben, wo ich diese Daten nutzen will.
Wie kann ich die Daten aus dem Internet in meine App laden?

Gibt es dafür vielleicht irgendwo ein tutorial? (Habe keins gefunden)

Habt ihr sonstige Methoden/Vorschläge, wie man das machen könnte?

PS: Es ist selbstverständlich nicht gemeint, dass die Internetseite in einem Browser geöffnet werden soll.
Vielmehr soll z.B. ein TextView einen bestimmten Text von der Homepage anzeigen, der täglich verändert wird.

Danke für die Hilfe.
 
stichwort lautet ajax wenn du nur bestimmte teile einer seite laden möchtest ;)
 
Die ideale Vorgehensweise wäre wohl eine Datenbank für deine Inhalte die dann von Webseite und App benutzt wird.

Du kannst natürlich auch die Webseite als String einlesen und dir rausholen was du brauchst - da es deine Webseite ist wird es dir ja leichtfallen die richtigen Daten zu finden oder sogar zu markieren.
Beispiel dafür für dich gegoogelt: Read remote HTML into a String with Android.
 
dannywilde schrieb:
Hallo Community,

ich habe folgendes Problem:

Auf meiner Website veröffentliche ich irgendwelche Daten in textform, die täglich aktualisiert werden.
Jetzt habe ich eine App geschrieben, wo ich diese Daten nutzen will.
Wie kann ich die Daten aus dem Internet in meine App laden?

Gibt es dafür vielleicht irgendwo ein tutorial? (Habe keins gefunden)

Habt ihr sonstige Methoden/Vorschläge, wie man das machen könnte?

PS: Es ist selbstverständlich nicht gemeint, dass die Internetseite in einem Browser geöffnet werden soll.
Vielmehr soll z.B. ein TextView einen bestimmten Text von der Homepage anzeigen, der täglich verändert wird.

Danke für die Hilfe.

Meinst du mit den Daten in Textform eine Art API speziell zur Informationsweitergabe an deine App? So habe ich es z.B. bei einer meiner Apps gelöst, um Traffic zu sparen.

Falls du also einen Datenstring einfach einlesen und weiterverarbeiten willst, machst du das wie folgt:

Ich habe z.B. einen Datenstring mit bestimmten Trennzeichen, der von der API ausgegeben wird: "Key1;Value1|Key2;Value2"
Code:
try {
    URL url = new URL("http://example.com");
    BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(url.openStream()));
    String line = "";
    while ((line = bufferedReader.readLine()) != null) {
        // Code zur Verarbeitung der Zeile
        String[] keyValueString = line.split("\\|");
        String[] keyValue1 = keyValueString[0].split(";");
        String[] keyValue2 = keyValueString[1].split(";");
        // Arbeite mit diesen Werten weiter...
    }
} catch (MalformedURLException e) {
    // fange Fehler ab
} catch (IOException e) {
    // fange Fehler ab
} catch ArrayIndexOutOfBoundsException e {
    // fange Fehler ab
}
Der bufferedReader list zeilenweise den Quelltext aus, den die Seite wiedergibt. Diese Zeilen (String line) kannst du dann einfach bearbeiten, in meinem Falle splitte ich den Datenstring anhand der Trennzeichen wieder in seine einzelnen Bestandteile auf und arbeite mit diesen Werten dann in der App.
 
Wie ChemDroid schon richtig sagte wäre da ein API gut geeignet. Allerdings kann man als Datenformat z. B. JSON verwenden, das lässt sich zum einen gut erzeugen (bei PHP z. B. sehr einfach mit json_encode) und zum zweiten in Java mit JSONArray und JSONObject auslesen.
 

Ähnliche Themen

A
Antworten
10
Aufrufe
1.021
swa00
swa00
S
Antworten
17
Aufrufe
554
jogimuc
J
H
Antworten
0
Aufrufe
612
Hcman
H
Zurück
Oben Unten