Kişisel Sayfaları
İlgi Alanları
İş Tecrubesi
Eğitim Geçmişi
Dil Becerileri
Son Forum Aktiviteleri
4volley json data alırken senkron sorunu
Merhaba,
GenelService.java diye bir class var(web servise bağlanıp json formatında veriler çektim tüm metodlarım bu class içinde) ve içerisinde seçilen şehiri parametre olarak gönderip ilçe listesini getirdiğim bir metodum var, bu metod geriye bir List<IlceModel> tipinde bir liste döndürmektedir, bu listeyi activity içerisinde bir değişkene atayıp kullanıyorum, fakat web servisten veriler çekilirken bu işlemin birmesi beklenmeden sıradaki diğer işleme geçtiği için sorun yaşamaktayım, web servis isteği tamamlandığı zaman sıradaki işleme geçilmesini nasıl sağlayabilirim?
[code]
//activity içerisindeki ilçeleri çağırdığım metod
public void IlceDoldur(int sehirId){
final List<IlceModel> ilceler = GenelService.GetIlceList(context,sehirId); //bu satırdaki istek bitmeden bir sonraki satıra geçmeyi nasıl engellerim
Spinner sp = (Spinner) findViewById(R.id.spIlce);
ArrayAdapter<IlceModel> adapter = new ArrayAdapter<IlceModel>(this, android.R.layout.simple_spinner_dropdown_item, ilceler );
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
sp.setAdapter(adapter);
}
//web servisden veri çektiğim metod
public static List<IlceModel> GetIlceList(final Context context,int sehirId) {
final ArrayList<IlceModel> data = new ArrayList<IlceModel>();
data.add(new IlceModel(0,"ilçe seçiniz"));
if(sehirId==0)
return data;
pd = ProgressDialog.show(context, null, "İlçe listesi alınıyor, lütfen bekleyiniz...");
//pd.setCancelable(true);
String prm = "?sehirId=" + sehirId;
String url = serviceUrl + "/genel/GetIlceler" + prm;
RequestQueue q = Volley.newRequestQueue(context);
JsonObjectRequest rq = new JsonObjectRequest(Request.Method.POST, url, null, new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject response) {
pd.hide();
Gson gson = new Gson();
try {
if (!response.getBoolean("Sonuc")) {
Toast.makeText(context, response.getString("Mesaj").toString(), Toast.LENGTH_LONG).show();
return;
}
Type listType = new TypeToken<List<IlceModel>>(){}.getType();
List<IlceModel> items= (List<IlceModel>) gson.fromJson(response.getJSONArray("Data").toString(), listType);
data.addAll(items);
} catch (JSONException e) {
e.printStackTrace();
Toast.makeText(context, e.getMessage(), Toast.LENGTH_LONG).show();
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
pd.hide();
Toast.makeText(context, error.toString(), Toast.LENGTH_LONG).show();
}
});
q.add(rq);
return data;
}
[/code]
WebView kullanmadan html içeriği göstermek
WebView kullanmadan html içeriği göstermek için hangi nesneyi kullanmalıyız?
asp.net mvc web api ile android client üyelik sistemi
Merhaba,
Asp.net mvc web api servisine andorid uygulaması üzerinden login işlemi yaparak erişmek istiyorum, normalde bu işlemi bir browser üzerinden yaptığımızda kullanıcının oturum bilgisini çerezler vasıtası ile elde edebiliyoruz ancak mobil bir cihazda bu işlemi nasıl yöneteceğiz?
örneğin; bir sınav servisi düşünelim, üye öğrenci numarası ve şifresi ile sisteme login oldu ve api den sadece kendisine ait olan sınav listesini çekecek, login işlemi başarılı ancak sınav servisinde de ben üyeyi doğrulamak istediğimde üye id sine nasıl erieşeceğim, her istekte kullanıcı/şifre mi göndermem gerekiyor yada login olduktan sonra mobil client'a bir kod verip her isteğin bununla gönderilip kullanıcının tanınması mı sağlanmalıdır.
volley json data alırken senkron sorunu
@Abdullah
verinin gelmesinde bir problem yok, şöyle izah edeyim örneğin;
işlem-1 // email/şifre al
işlem-2 // UyelikServis.Dogrula(email,sifre) web servisten şifreyi doğrula
işlem-3 // gelen değeri bir 'N' değişkenine ata
işlem-4 // 'N' true ise MainActivity aç değil ise hata mesajı göster
"işlem-2" daha bitmeden "işlem-3" den devam ediliyor, dolayısı ile veri henüz gelmediği için "true" olması gereken değer default değeri(false) ile "işlem-4" de gittiği için her zaman kullanıcı şifresi hatalı kabul ediliyor,
"işlem-2" tamamlanmadan diğer metodlara geçilmesin istiyorum.
umarım anlatabilmişimdir.