Android 改装无法在对象中提取JSON

Android 改装无法在对象中提取JSON,android,json,gson,retrofit2,Android,Json,Gson,Retrofit2,我正在研究如何使用改型来停止使用AsyncTask。我有一个名为Network的接口来发出GET请求,还有一个名为ServiceGenerator的类来创建我的reformation.Builder和我的HTTP拦截器,最后是我的MainActivity(我还实现了名为Results的对象类) 问题是,在MainActivity中我的onResponse方法(.enqueue)中:我不知道如何提取JSON并在视图中放置“name”标记 这是我的ServiceGenerator课程: 公共类服务生

我正在研究如何使用改型来停止使用
AsyncTask
。我有一个名为
Network
的接口来发出GET请求,还有一个名为
ServiceGenerator
的类来创建我的
reformation.Builder
和我的HTTP拦截器,最后是我的
MainActivity
(我还实现了名为
Results
的对象类)

问题是,在
MainActivity
中我的
onResponse
方法(
.enqueue
)中:我不知道如何提取JSON并在视图中放置“name”标记

这是我的
ServiceGenerator
课程:

公共类服务生成器{
//URL base do endpoint.Deve sempre terminar com/
公共静态最终字符串API_BASE_URL=”https://randomuser.me/";
公共静态S createService(类serviceClass){
//我们需要什么
HttpLoggingInterceptor loggingInterceptor=新的HttpLoggingInterceptor();
loggingInterceptor.setLevel(HttpLoggingInterceptor.Level.BODY);
OkHttpClient.Builder httpClient=新建OkHttpClient.Builder()
.读取超时(5,时间单位为秒);
httpClient.addInterceptor(loggingInterceptor);
//httpClient.addInterceptor(loggingInterceptor.build();
//Inst–ncia do改造
改装改装=新改装.Builder()
.baseUrl(API_BASE_URL)
.addConverterFactory(GsonConverterFactory.create(new Gson()))
.client(httpClient.build())
.build();
返回改装。创建(serviceClass);
}
}
这是我的界面
网络

公共接口网络{
@获取(“api/”)
调用randomUser();
}
最后,主要活动是:

公共类MainActivity2扩展了AppCompatActivity{
私有文本视图nome;
私有文本视图SobreName;
私人文本查看电子邮件;
私有文本视图endereco;
私有文本视图;
私有文本视图estado;
私有文本视图用户名;
私有文本视图senha;
私有文本视图nascimento;
私人TextView电话;
私有图像视图foto;
私人对话负载;
社会性别;
公开结果;
公共静态最终字符串BASE_URL=”https://randomuser.me/";
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
nome=(TextView)findViewById(R.id.nome);
SobreName=(TextView)findViewById(R.id.SobreName);
email=(TextView)findViewById(R.id.email);
endereco=(TextView)findViewById(R.id.endereco);
cidade=(TextView)findViewById(R.id.cidade);
estado=(TextView)findViewById(R.id.estado);
username=(TextView)findViewById(R.id.username);
senha=(TextView)findViewById(R.id.senha);
nascimento=(TextView)findViewById(R.id.nascimento);
telefone=(TextView)findViewById(R.id.telefone);
foto=(ImageView)findViewById(R.id.foto);
网络=ServiceGenerator.createService(Network.class);
Call requestUser=network.randomUser();
enqueue(新的回调(){
@凌驾
公共void onResponse(调用、响应){
if(response.issusccessful()){
ProgressDialog进度=新建ProgressDialog(MainActivity2.this);
进度。设置标题(“发送…”);
progress.show();
结果r=response.body();
/*也许我应该在这里放点东西:*/
如果(r!=null){
System.out.println();
//r.setGender(results.getGender());
nome.setText((CharSequence)results.setName(r.getName());
//System.out.println(“用户2:+response.raw());
//r、 setGender(r.getGender());
//结果r=新结果();
进步。解散();
//nome.setText(results.gender.toString());
//System.out.println(“随机用户:CARAIO”+user.random);
//命名为setText((字符序列)r.gender);
}else Toast.makeText(MainActivity2.this,“获取JSON时出错”,Toast.LENGTH_LONG.show();
}
}
@凌驾
失败时公共无效(调用调用,可丢弃的t){
}
});
}
}
我的
成绩
课程也包括:

公共类结果{
公共静态字符串性别;
公共成果{};
公共静态字符串getGender(){
返回性别;
}
公共静态无效设置性别(字符串性别){
结果:性别=性别;
}
公共列表getName(){
返回名称;
}
公共对象集合名(列表名){
this.name=名称;
返回null;
}
公共列表getLocation(){
返回位置;
}
公共无效设置位置(列表位置){
这个位置=位置;
}
公共字符串getEmail(){
回复邮件;
}
公用电子邮件(字符串电子邮件){
this.email=电子邮件;
}
公共列表getLogin(){
返回登录;
}
public void setLogin(列表登录){
this.login=登录;
}
公共字符串getPhone(){
回电话;
}
公用无效设置电话(字符串电话){
this.phone=电话;
}
公共列表getPicture(){
返回图片;
}
公共图片(列表图片){
这个图片=图片;
}
公开名单名称;
公共列表位置;
公共字符串电子邮件;
公共列表登录;
公用串电话;
公共列表图片;
}
如果你们能帮忙的话,那将是非常棒的
public interface Network {

    @GET("api/")
    Call<RandomUserServiceResponse> randomUser();

}
 public class RandomUserServiceResponse {

    private List<Result> results = null;
   // private Info info;

    public List<Result> getResults() {
        return results;
    }

    public void setResults(List<Result> results) {
        this.results = results;
    }

}
 Call<RandomUserServiceResponse> requestUser = network.randomUser();

        requestUser.enqueue(new Callback<RandomUserServiceResponse>() {
            @Override
            public void onResponse(Call<RandomUserServiceResponse> call, Response<RandomUserServiceResponse> response) {

                if (response.isSuccessful()) {

                    ProgressDialog progress = new ProgressDialog(MainActivity2.this);
                    progress.setTitle("sending...");
                    progress.show();
                    RandomUserServiceResponse r = response.body();



                /* if you want to get NAME tag please */
                Name name = r.getResults().getName();
               /* now you can get Name properties 
               name.getTitle(),name.getFirst(),name.getLast() */




                    if (r != null) {

                        System.out.println();

                       // r.setGender(results.getGender());

                        nome.setText((CharSequence) results.setName(r.getName()));

                        //System.out.println("USER 2: " + response.raw() );


                        //r.setGender(r.getGender());
                        //Results r = new Results();



                        progress.dismiss();

                      //  nome.setText(results.gender.toString());


                        // System.out.println("random user: CARAIO  " + user.random);
                           //nome.setText((CharSequence) r.gender);


                    } else Toast.makeText(MainActivity2.this,"ERROR IN GET JSON",Toast.LENGTH_LONG).show();
                }

                }

            @Override
            public void onFailure(Call<RandomUserServiceResponse> call, Throwable t) {

            }
        });
public class Result {

    private String gender;
    private Name name;
    private Location location;
    private String email;
    private Login login;
    private String dob;
    private String registered;
    private String phone;
    private String cell;
    private Id id;
    private Picture picture;
    private String nat;

    public String getGender() {
        return gender;
    }

    public void setGender(String gender) {
        this.gender = gender;
    }

    public Name getName() {
        return name;
    }

    public void setName(Name name) {
        this.name = name;
    }

    public Location getLocation() {
        return location;
    }

    public void setLocation(Location location) {
        this.location = location;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    public Login getLogin() {
        return login;
    }

    public void setLogin(Login login) {
        this.login = login;
    }

    public String getDob() {
        return dob;
    }

    public void setDob(String dob) {
        this.dob = dob;
    }

    public String getRegistered() {
        return registered;
    }

    public void setRegistered(String registered) {
        this.registered = registered;
    }

    public String getPhone() {
        return phone;
    }

    public void setPhone(String phone) {
        this.phone = phone;
    }

    public String getCell() {
        return cell;
    }

    public void setCell(String cell) {
        this.cell = cell;
    }

    public Id getId() {
        return id;
    }

    public void setId(Id id) {
        this.id = id;
    }

    public Picture getPicture() {
        return picture;
    }

    public void setPicture(Picture picture) {
        this.picture = picture;
    }

    public String getNat() {
        return nat;
    }

    public void setNat(String nat) {
        this.nat = nat;
    }

}
public class Name {

    private String title;
    private String first;
    private String last;

    public String getTitle() {
        return title;
    }

    public void setTitle(String title) {
        this.title = title;
    }

    public String getFirst() {
        return first;
    }

    public void setFirst(String first) {
        this.first = first;
    }

    public String getLast() {
        return last;
    }

    public void setLast(String last) {
        this.last = last;
    }

}
public class Picture {

    private String large;
    private String medium;
    private String thumbnail;

    public String getLarge() {
        return large;
    }

    public void setLarge(String large) {
        this.large = large;
    }

    public String getMedium() {
        return medium;
    }

    public void setMedium(String medium) {
        this.medium = medium;
    }

    public String getThumbnail() {
        return thumbnail;
    }

    public void setThumbnail(String thumbnail) {
        this.thumbnail = thumbnail;
    }

}
public class Login {

    private String username;
    private String password;
    private String salt;
    private String md5;
    private String sha1;
    private String sha256;

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public String getSalt() {
        return salt;
    }

    public void setSalt(String salt) {
        this.salt = salt;
    }

    public String getMd5() {
        return md5;
    }

    public void setMd5(String md5) {
        this.md5 = md5;
    }

    public String getSha1() {
        return sha1;
    }

    public void setSha1(String sha1) {
        this.sha1 = sha1;
    }

    public String getSha256() {
        return sha256;
    }

    public void setSha256(String sha256) {
        this.sha256 = sha256;
    }

}
public class Location {

    private String street;
    private String city;
    private String state;
    private Integer postcode;

    public String getStreet() {
        return street;
    }

    public void setStreet(String street) {
        this.street = street;
    }

    public String getCity() {
        return city;
    }

    public void setCity(String city) {
        this.city = city;
    }

    public String getState() {
        return state;
    }

    public void setState(String state) {
        this.state = state;
    }

    public Integer getPostcode() {
        return postcode;
    }

    public void setPostcode(Integer postcode) {
        this.postcode = postcode;
    }

}
public class Info {

    private String seed;
    private Integer results;
    private Integer page;
    private String version;

    public String getSeed() {
        return seed;
    }

    public void setSeed(String seed) {
        this.seed = seed;
    }

    public Integer getResults() {
        return results;
    }

    public void setResults(Integer results) {
        this.results = results;
    }

    public Integer getPage() {
        return page;
    }

    public void setPage(Integer page) {
        this.page = page;
    }

    public String getVersion() {
        return version;
    }

    public void setVersion(String version) {
        this.version = version;
    }

}
public class Id {

    private String name;
    private Object value;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public Object getValue() {
        return value;
    }

    public void setValue(Object value) {
        this.value = value;
    }

}