2010-12-03 24 views
1

Ich habe eine Anwendung für das Android für eine Organisation entwickelt, aber ein Problem ist entstanden. Während meine Programmierkenntnisse relativ fair sind, war meine Verwendung von Java neuer. Das ist der größte Teil meines aktuellen Problems, da ich wissen muss, wie ich eine Anwendung zum Abrufen von Daten von einem Server einrichten soll. Das nächste Beispiel wäre eine Form von "Nachrichten" -Anwendungen, die derzeit verfügbar sind. Wenn Sie die Anwendung öffnen, werden die aktuell verfügbaren Artikel oder Audiodateien aktualisiert. Ich habe fast keine Kenntnisse darüber, wie man den notwendigen Code erstellt oder implementiert, um einen solchen Datenabruf durchzuführen. Ich weiß auch nicht, was auf der Serverseite getan werden muss, damit die Anwendung die relevanten Daten abrufen kann. (Noch einmal, das wären Textartikel und Audiodateien) Ich bin in dieses Forum gekommen, um Hilfe zu meinem Problem zu bekommen.Daten holen vom Server

Antwort

0

Ihr Server muss in einem Format antworten, das Ihr Client verstehen kann. Sie können zum Beispiel im Nur-Text-, XML- oder JSON-Format antworten. Sie können Ihren Server wie jede andere Website implementieren, aber Sie können es sehr minimal halten und mit reinem Text anstelle von HTML antworten.

Dann implementieren Sie Ihren Client, damit er das von Ihnen verwendete Format verstehen kann. Und Sie können Ihre Nachrichten mit dem HttpClient senden und empfangen.

Sie können Jackson verwenden, um JSON in Ihrem Java-Client auf dem Android-Telefon zu verwalten. Es gibt ein Tutorial zur Verwendung von Apache HttpClient, das nützlich sein kann. Und schließlich gibt es ein interessantes Gespräch über Android REST client applications auf Youtube von Google.

+0

Zunächst einmal, vielen Dank für Ihre zweckdienliche Antwort. Während du eine meiner Fragen zu möglichen Formaten beantwortet hast, benutze serverseitig. Ich bin immer noch nicht in der Lage, die Kundenseite voranzubringen. Da ich einfach nicht weiß, wie man den Klienten ermöglicht, die Daten zu holen und sie direkt in die UI zu implementieren, um gelesen zu werden. Danke, und ich bitte Sie, weitere Hilfe anzubieten, die Sie möglicherweise haben. – Programmer

+0

@Programmer: Ich habe meine Antwort aktualisiert und ein paar Links hinzugefügt, die hilfreich sein können. – Jonas

0

Ich würde vorschlagen, Rails für Back-End zu verwenden. Sie können eine einfache Rails-App mit einer Datenbank erstellen, und rails wird mit der REST-Standardschnittstelle geliefert (dh, es wäre einfach, einen Datensatz mit einer URL aus der Datenbank abzurufen). Sobald Sie diese Einrichtung haben, können Sie einfach die URL von Ihrer Android App aufrufen und die notwendigen Parameter variieren. Rails kümmert sich auch darum, die Daten im JSON- oder XML-Format (ohne zusätzliche Codierung) zu beantworten, was Ihnen das Parsen in der Android App erleichtert.

Wenn Sie neu bei Rails sind, wird das obige einfache Setup (Datenbank und Abruf über URL) kaum einen halben Tag dauern.

-2

Warum Java? Mit der zur Zeit verfügbaren HTML5 Funktionalität haben Sie eine vollständige relationale Datenbank, Offline/Online Web Integration. Und eine sinnvolle Sprache für den Aufbau von Benutzeroberflächen!

Serverside ..... alles, was Sie wollen. Ich finde Java ein PITA, mit dem man für webbasierte Anwendungen arbeiten kann (meistens PHP), aber es gibt auch Ruby, Perl und andere. Sicherlich wirst du einige Tricks brauchen, um herauszufinden, welche Inhalte an den Client weitergegeben werden müssen.

Es gibt zwar kein Ende von Open-Source-CMS, aber ich bin mir nicht bewusst, dass es für einen Offline-Client entwickelt wurde - es gibt ein ganz neues Geschäftsmodell, das es zu entdecken gilt!

+0

2 downvotes und keine Kommentare - Feiglinge! – symcbean