PDA

View Full Version : سرعت برنامه اندروید



sh.mahdavi
چهارشنبه 26 آبان 1395, 19:48 عصر
سلام و خسته نیاشید

من با اندروید استدیو آخرین ورژنش و sdk ورژن 24.3.4 یه برنامه موبایل نوشتم برای یکی از شهر ها. سرعت برنامه داخل شهر خودم(شیراز) بسیار عالی است، با وای فای و با اینترنت H+ ایرانسل و همراه اول تست کردم. خیلی خوب و سریع بالا میاد.

برای برقراری ارتباط با سرور از دستور زیر استفاده میکنم و برای دریافت اطلاعات از php فریم ویورک codingnighter استفاده میکنم و نمونه دستوراتمو زیر آوردم:
سرعت برنامه در شهر گناوه به گفته خود صاحب برنامه بسیار پایینه و میگه دیر برنامه بالا میاد.

بنظر شما مشکل از کجاست؟(نوع برنامه نویسی اندروید؟ سرعت اینترنت؟نوع هاستی که اطلاعات داخلش هست؟)

کد برای ارسال درخواست به سرور:



public class get_advs extends AsyncTask {

@Override
protected Object doInBackground(Object... arg0) {
// TODO Auto-generated method stub

try{
String data= URLEncoder.encode("offset","utf8")+URLEncoder.encode("","utf8");
URL link=new URL(MainActivity.url+"get_advs");
URLConnection connect=link.openConnection();
//send data
connect.setDoOutput(true);
OutputStreamWriter wr=new OutputStreamWriter(connect.getOutputStream());
wr.write(data);
wr.flush();
BufferedReader reader=new BufferedReader(new InputStreamReader(connect.getInputStream()));
StringBuilder sb=new StringBuilder();
String line=null;
while((line=reader.readLine())!= null){
sb.append(line);
}
res=sb.toString();
if (res.length() > 0) {
res = res.substring(1, res.length());
}

}catch(Exception e){
res=e.toString();
}
return "";
}
@Override
protected void onPostExecute(Object result) {
// TODO Auto-generated method stub
super.onPostExecute(result);

id = new ArrayList<String>();
image_address= new ArrayList<String>();
job_id_slide= new ArrayList<String>();
try {

JSONArray ja = new JSONArray(res);

for (int i = 0; i < ja.length(); i++) {

JSONObject ID = ja.getJSONObject(i);
JSONObject PIC = ja.getJSONObject(i);
JSONObject JOB_ID = ja.getJSONObject(i);

id.add(ID.getString("id"));
job_id_slide.add(JOB_ID.getString("job_id"));
image_address.add(PIC.getString("image_address"));

str_id11 = id.toArray(new String[id.size()]);
arr_job_id_slid = job_id_slide.toArray(new String[job_id_slide.size()]);
str_image_addresst=image_address.toArray(new String[image_address.size()]);

}

} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

int num_length = str_id11.length;
if (num_length>1){
init();
new notification_message().execute();
}

}
}


نمونه کد php دریافت اطلاعات از دیتا بیس و ارسال به اپ:



if($request == 'get_advs2'){
$data= $this->base_model->get_data('khedri_advertisements','*',array('div'=>'bottom'));
echo json_encode($data);

}

so2011
پنج شنبه 27 آبان 1395, 22:54 عصر
سرعت دريافت اطلاعات صرفا مربوط به كدها نميشه وتا حد زيادي و به عوامل ديگه اي مثل ترافيك سرور،نوع هاست و موقعيت سرور ها و همچنين عواملي مثل نوع اينترنت كاربر و سرعت اينترنت،ورژن اندرويد و مشخصات سخت افزاري دستگاه هم مربوط ميشود