Comment demander à des données vidéo à partir de Tomates Pourries en utilisant leur API JSON?
Dans mon application Android, j'ai un EditText
, un Button
, et un Listview
. Lorsque je tape un nom de film dans mon EditText
champ et appuyez sur la Button
, je veux le ListView
être remplie avec le film de noms à partir des Tomates Pourries site web qui correspondent à ce que je suis entré dans la EditText
champ.
Mais je ne peux pas comprendre comment utiliser le Des Tomates pourries API JSON pour obtenir les données de films. Comment dois-je faire?
OriginalL'auteur user1924895 | 2013-01-05
Vous devez vous connecter pour publier un commentaire.
Fondamentalement, vous avez besoin de faire quatre choses:
http://api.rottentomatoes.com/api/public/v1.0/movies.json?apikey=[your_api_key]&q=[search_keyword]&page_limit=[page_limit]
, comme illustré sur cette page.J'ai mis en place une petite démo de l'application qui vont le faire. S'il vous plaît essayer le code ci-dessous.
MainActivity.java
res/layouts/activity_main.xml
Et ajoutez cette ligne à votre
AndroidManifest.xml
(il donne à votre application Android autorisation d'utiliser l'Internet, vous aurez évidemment besoin de faire la demande de Tomates Pourries serveur web):Bonus de réponse:
Si vous voulez "live" des résultats de recherche, vous tapez le mot-clé de recherche dans l'EditText champ, ajoutez un TextWatcher via EditText de
addTextChangedListener()
méthode, et en faire la requête HTTP dansonTextChanged()
.J'ai testé le code, il fonctionne comme un charme, j'ai perdu des heures et même des jours, essayer de comprendre tout cela, vous êtes à la réponse qu'il m'a sauvé un grand moment, c'est parce que des gars comme vous, que stackoverflow est tellement réussie, l'effort que vous avez mis dans votre réponse est très admirable et je suis reconnaissants pour cela, je ne peux pas résister, mais de demander, est-il une chance que je peux avoir, vous êtes e-mail, ou de toute façon je pouvais communiquer avec vous dans le futur? de tous les endroits sur l'internet, rien ne m'a aidé à la façon dont vous l'avez fait, il serait dommage de ne pas avoir un moyen de contacter ces personnes brillantes comme vous-même.
Désolé, je tiens à rester anonyme pour le moment. 🙂 Cheers.
Pas de problème, je vous remercie et vous êtes à l'aide! vous voir 🙂
Hey XåpplI'-I0llwlg I, pouvez vous s'il vous plaît voir cette(stackoverflow.com/questions/23031999/...). Ce qui peut être fait ici.?
OriginalL'auteur
Une approche typique pour ce genre de problème serait:
Créer un
AsyncTask
qui gère la mise en réseau et l'analyse de votre demande et la réponse, depuis longtemps, l'exécution des opérations dans le main (ou de l'INTERFACE utilisateur) thread est une mauvaise idée. Dans l'AsyncTask vous communiquer à l'API du serveur à l'aide d'un HttpClient et parser le JSON de requête/réponse à l'aide d'un parser JSON, comme Google gson.Vous pouvez trouver beaucoup de tutoriels sur la façon de communiquer avec des serveurs distants à l'aide de la HttpClient, voici l'un d'eux (je ne peux pas se porter garant pour la qualité):
http://www.mysamplecode.com/2011/09/android-asynctask-httpclient-with.html
OriginalL'auteur soren.qvist