Je souhaite récupérer les données d'un service Web en vue texte. Le service Web fonctionne bien. J'utilise le retrofit pour le réseau. Mais je deviens null dans prmoDetails ici response.body. J'ai vérifié et essayé toutes les solutions passées. Mais ça ne marche toujours pas. Aidez-moi s'il vous plaît à résoudre ceci.Rénovation 2 - le corps de la réponse donne une valeur nulle
POJO classe
public class PromoDetails {
private String PromoId;
private String PromoName;
private String Category;
private String PromoImg;
private String promoDetails;
private String promoValidty;
public PromoDetails(String PromoId, String PromoName, String Category , String PromoImg , String promoDetails , String promoValidity) {
this.PromoId = PromoId;
this.PromoName = PromoName;
this.Category = Category;
this.PromoImg = PromoImg;
this.promoDetails = promoDetails;
this.promoValidty = promoValidity;
}
public String getPromoId() {
return PromoId;
}
public void setPromoId(String promoId) {
PromoId = promoId;
}
public String getPromoName() {
return PromoName;
}
public void setPromoName(String promoName) {
PromoName = promoName;
}
public String getCategory() {
return Category;
}
public void setCategory(String category) {
Category = category;
}
public String getPromoImg() {
return PromoImg;
}
public void setPromoImg(String promoImg) {
PromoImg = promoImg;
}
public String getPromoDetails() {
return promoDetails;
}
public void setPromoDetails(String promoDetails) {
this.promoDetails = promoDetails;
}
public String getPromoValidty() {
return promoValidty;
}
public void setPromoValidty(String promoValidty) {
this.promoValidty = promoValidty;
}}
Interface Api
public interface ApiInterface {
@POST("ap/promotions.php")
Call<List<PromoDetails>> getPromotions();}
MainActivity
public class MainActivity extends AppCompatActivity {
private ApiInterface apiInterface;
private List<PromoDetails> promoDetails;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
getPromotionUpdate();
}
private void getPromotionUpdate() {
apiInterface = ApiClient.getApiClient().create(ApiInterface.class);
Call<List<PromoDetails>> call = apiInterface.getPromotions();
call.enqueue(new Callback<List<PromoDetails>>() {
@Override
public void onResponse(Call<List<PromoDetails>> call, Response<List<PromoDetails>> response) {
promoDetails = response.body();
runOnUiThread(new Runnable() {
@Override
public void run() {
TextView prDescription = (TextView)findViewById(R.id.TextView1) ;
prDescription.setText(promoDetails.get(0).getPromoId());
}
});
}
@Override
public void onFailure(Call<List<PromoDetails>> call, Throwable t) {
}
});
}}
Mon service Web comme celui-ci
[{"promoId":"7","companyName":"Pizza Hut","pName":"Connecting Dots TEDXCOLOMBO 2017","category":"EVENTS","pImg":"https:\/\/androidsra.000webhostapp.com\/img_ap\/tedx.png"},{"promoId":"6","companyName":"Subway","pName":"BUY any SUB & get another SUB FREE!","category":"FOODS & DRINKS","pImg":"https:\/\/androidsra.000webhostapp.com\/img_ap\/subway.png"},{"promoId":"5","companyName":"KFC ","pName":"40% off at Queens Hotel - Kandy for HSBC Credit cards.","category":"BANKS & CARDS","pImg":"https:\/\/androidsra.000webhostapp.com\/img_ap\/queens.png"},{"promoId":"4","companyName":"Pizza Hut","pName":"New sets of Furniture with special discounts.","category":"HOME & KITCHEN","pImg":"https:\/\/androidsra.000webhostapp.com\/img_ap\/singerfur_promo.png"},{"promoId":"3","companyName":"Browns Tours","pName":"Exclusive Offer !! Fly to Melbourne with Srilankan Airlines from Browns Tours","category":"TRAVEL","pImg":"https:\/\/androidsra.000webhostapp.com\/img_ap\/melbourne_promo.png"},{"promoId":"2","companyName":"KFC ","pName":"Hot Drumlets with 2L Pepsi for just Rs.1100\/- only","category":"FOODS & DRINKS","pImg":"https:\/\/androidsra.000webhostapp.com\/img_ap\/kfc_promo.png"},{"promoId":"1","companyName":"Pizza Hut","pName":"50% Off for Medium Pizzas.","category":"FOODS & DRINKS","pImg":"https:\/\/androidsra.000webhostapp.com\/img_ap\/pizza_promo.png"}]
Oui. Je l'ai changé. Mais même question – venura
@venura s'il vous plaît vérifier la réponse mise à jour –
Merci beaucoup. Pouvez-vous s'il vous plaît m'aider avec ça? https://stackoverflow.com/questions/46177484/how-to-retrieve-web-service-values-through-retrofit-to-text-view?noredirect=1#comment79320108_46177484 – venura