使用Retrofit获取简单的JSON字符串数组

时间:2015-05-12 14:33:25

标签: android json retrofit

我想使用Retrofit从服务器获取JSON字符串数组。 JSON数组是这样的。

["A","B","C"]

这是我制作的代码。

MainActivity.class

public class MainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    String url="http://proverbs-app.antjan.us";

    RestAdapter restAdapter;        
    restAdapter = new RestAdapter.Builder()
    .setEndpoint(url)
    .build(); 

    Service service=restAdapter.create(Service.class);
    service.get(new Callback<List<String>>(){


        @Override

        public void failure(RetrofitError error) {
            Toast.makeText(getApplicationContext(), "Error", Toast.LENGTH_LONG).show();
         }

        @Override
        public void success(List<String> arg0, Response arg1) {
            Toast.makeText(getApplicationContext(), arg0.toString(), Toast.LENGTH_LONG).show();

        }
         });    
}

}

这是Service.class

public interface Service {
@GET("/")
public void get(Callback<List<String>> callback);

}

它只显示“错误”Toast。

我的代码有问题。 请帮我修理一下。 我是初学者。 所以,请详细回答我,因为我不太了解它。 提前谢谢。

2 个答案:

答案 0 :(得分:1)

您需要在界面中指定URL的相对路径。

@GET("/")
public void get(Callback<List<String>> callback);

答案 1 :(得分:1)

看起来你错过了Gson。将此行添加到dependencies中的build.gradle块:

compile 'com.google.code.gson:gson:2.3.1'