2017-06-25 40 views
-1

由於出乎意料的情況,我發現自己在Java中編寫Android應用程序(我的經驗是Android或Java的經驗0),我一直做得非常好,但現在我堅持一些東西。我正嘗試解析的iTunes搜索API,並且從來就下載了一個圖書館這樣做:itunes-search API Android

https://github.com/mdewilde/itunes-search

但我不能管理使搜索(後得到的單參數),這是我的代碼:

Response response = new Search("La+vereda+de+la+puerta+de+atras").execute(); 
response.setResults(response.getResults()); 
Result result = new Result(); 
System.out.println(result.getArtistName().toString()); // Returns nil 

非常感謝你在先進

+2

您創建一個新結果並從中讀取ArtistName。這當然是空的。在不知道API的情況下,我會猜測response.getResults()會爲您提供搜索返回的數據,並且必須遍歷此數據才能打印所有接收到的數據。 –

+0

@FlorianS。你的猜測是正確的,但是當API已經有一個Result模型,其中iTunes返回的所有參數已經被定義時,迭代它不會有多大意義。 – ctabuyo

+0

是不是response.getResults()某種具有與您的查詢匹配的多個結果的Collection?只需遍歷該集合,然後爲每個Result對象,您可以訪問它的參數,如ArtistName,Title或其他。 –

回答

1

這將是這樣做的正確方法:

Response response = new Search("La+vereda+de+la+puerta+de+atras").execute(); 
List<Result> results = response.getResults(); 

if (results != null && results.size() > 0) { 
    for(Result result : results) { 
     System.out.println(result.getArtistName().toString()); 
    } 
} else { 
    System.out.println("No results found :("); 
} 
+0

工作就像一個魅力,非常感謝你! – ctabuyo

+0

沒問題。我會很高興得到upvote太:) – Tharkius

+0

得到upvote先生:) – ctabuyo