如何使用改进库在Android的JsonObject中获取个人Id数据

如何使用改进库在Android的JsonObject中获取个人Id数据,android,json,retrofit,Android,Json,Retrofit,我是Android平台的新手。使用改装从类似此链接获取数据时感到疲惫 我想用这个链接作为个人ID数据,就像1,2,3,。。。 我试了很多次,但都是空的没有数据来 我的Api接口类是 我的patientsJson类是 您可以从代码中动态传递id。您只需要为代码编写改装接口 @GET("{id}") Call<List<patientsJson>> getPatientsJson(@Path("id") int id); @GET(“{id}”) 调用getPatient

我是Android平台的新手。使用改装从类似此链接获取数据时感到疲惫 我想用这个链接作为个人ID数据,就像1,2,3,。。。 我试了很多次,但都是空的没有数据来

我的Api接口类是

我的patientsJson类是


您可以从代码中动态传递id。您只需要为代码编写改装接口

@GET("{id}")
Call<List<patientsJson>> getPatientsJson(@Path("id") int id);
@GET(“{id}”)
调用getPatientsJson(@Path(“id”)int-id);

现在,在调用web服务时,您需要将ID作为参数传递。

Hi@Kirtan出现如下错误。。。。。。。。应为begin_数组,但在第1行第2列路径$@hamzarahman处为begin_对象,该错误与改装无关。它是如何解析响应中的JSON数据的。根据web服务的响应,它返回的JSON对象是您在响应中编写JSON数组的位置。那么,我该如何摆脱它呢?据我所知,改型工作与Json数组不是对象。但我只需要处理对象。。因此,当我传递这个id时,它将返回一个JsonObject。。是这样吗?此URL正在返回您可以看到的对象。而且这并不是说改型仅适用于阵列。您能给出解决方案吗。。我只需要一个身份证数据不是全部我现在很沮丧。。
Retrofit retrofit = new Retrofit.Builder()
                .baseUrl(Api.BaseURL)
                .addConverterFactory(GsonConverterFactory.create())
                .build();

        Api api = retrofit.create(Api.class);

        Call<List<patientsJson>> call = api.getPatientsJson();
        call.enqueue(new Callback<List<patientsJson>>() {
            @Override
            public void onResponse(Call<List<patientsJson>> call, Response<List<patientsJson>> response) {
                List<patientsJson> patientsJsons = response.body();

                for (patientsJson data: patientsJsons ){

                    t1.setText(data.getName());
                    t2.setText(data.getId());
                    t3.setText(data.getEmail());

                    Log.d("Name: ", data.getName() );
                    //Log.d("ID: ", data.getId());
                    Log.d("Email: ", data.getEmail());
                }
            }

            @Override
            public void onFailure(Call<List<patientsJson>> call, Throwable t) {
                Toast.makeText(getApplicationContext(), t.getMessage(), Toast.LENGTH_LONG).show();

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

    Button b = (Button)findViewById(R.id.button);
    b.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            Intent intent = new Intent(MainActivity.this, patients_Activity.class);
            //intent.putExtra("ID", "1");
            startActivity(intent);
        }
    });
}
  //private String postId;
    private String id;
    private String name;
    private String email;

    public patientsJson( String id, String name, String email) {
        this.id = id;
        this.name = name;
        this.email = email;
    }


    public String getId() {
        return id;
    }

    public String getName() {
        return name;
    }

    public String getEmail() {
        return email;
    }
@GET("{id}")
Call<List<patientsJson>> getPatientsJson(@Path("id") int id);