2014-07-06 23 views
0

我有一個發送JSON類似於這樣一個Web服務:如何檢索帶有android註釋的JSON數組?

[ 
    "4.11.3", 
    "4.10.7", 
    "4.10.2", 
    "4.9.1" 
] 

我的REST接口看起來是這樣的:

@Rest(...) 
public interface RestInterface { 

    @Get("...") 
    String[] getVersions(); 
} 

但我總是得到null作爲返回值。請有人幫助我嗎?

+0

我以前沒有使用過REST API,但是我知道你必須添加一個轉換器。你仔細閱讀[this](https://github.com/excilys/androidannotations/wiki/Rest%20API)嗎? – WonderCsabo

回答

0

添加到您的其餘服務:

@Accept(MediaType.APPLICATION_JSON) 
+2

簡短的解釋爲什麼代碼片段解決了這個問題,會增加響應的質量! –

0

您的JSON是包含字符串的長度爲4的JSON陣列

所以....使用以下代碼:

JSONArray versionJsonArray=new JSONArray(<web-service response>); 
String[] versionString=new String[versionJsonArray.length()]; 

for(int j=0;j<versionJsonArray.length();j++) 
    versionString[j]=versionJsonArray.getString(j); 
0
Rest(...) 
public interface RestInterface { 

@Get("...") 
    JSONArray getVersions(); 
} 

讓剩下的適配器將字符串輸入到一個json數組中。