دلم براتون میسوزه که کسی جوابتونو نمیده :(
امیدوارم که هرچی سریع تر مشکلتون حل شه دوست عزیز ♥
بروز خطا
[message]
اشتراک در سوال
رای ها
[dataList]
پرسش و پاسخ
سوال در مورد ModuleWebservice
مدیریت گفتگو
آخرین تغییر: 11 سال پیش
من تمام حالت هایی که بلد بودمو تست کردم تنها حالتی که ModuleWebservice استاد درست اجرا میشه فراخوانی از کلاس G هست.من راه دیگه ای بلد نیستم.یه سوالی که تو ذهنمه ؟ آیا فراخوانی ماژول از کلاس G کاره درستیه و بعدا مشکل ساز نمیشه ؟
راه دیگه ای اگه میدونین پیشنهاد بدین.ماژول وب سرویس استاد وب سرویسه کاملیه اما مشکلی که داره اینه که وقتی در اکتیویتی اصلی ماژول رو اجرا میکنم لیست خالی میمونه و کسی از دوستان هم تو انجمن گشتم راهی پیشنهاد نداده . با تشکر.
پاسخها 2
این کد Main در این حالت اجرا میکنم لیست خالیه نمایش داده میشه ولی به کلاس G منتقل میکنم بدون مشکل اجرا میشه.
public class ActivityApps extends ActivityEnhanced implements LazyListView.LazyListener {
private static LazyListView list;
public static AdapterSerials adapter;
public static ArrayList<StructApps> apps= new ArrayList<StructApps>();
private static int part = 0;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_serialsdb);
StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
StrictMode.setThreadPolicy(policy);
list = (LazyListView) findViewById(R.id.listfav);
list.setListener(this);
boolean online = isOnline();
if (online) {
populateFromServer2();
} else {
Toast.makeText(G.context, "No Internet", Toast.LENGTH_SHORT).show();
}
adapter = new AdapterApps(apps);
list.setAdapter(adapter);
adapter.notifyDataSetChanged();
View actionBarView = G.inflater.inflate(R.layout.action_bar, null);
ActionBar actionBar = getSupportActionBar();
actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_STANDARD);
actionBar.setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM);
actionBar.setCustomView(actionBarView, new ActionBar.LayoutParams
(ViewGroup.LayoutParams.MATCH_PARENT,
ViewGroup.LayoutParams.MATCH_PARENT));
}
نظرات
اینم کد populateFromServer2 :
public static void populateFromServer2() {
ModuleWebservice module = new ModuleWebservice();
ModuleWebservice.Listener listener = new ModuleWebservice.Listener() {
@Override
public void onDataReceive(String data) {
Log.i("LOG", "Webservice Data: " + data);
if (data != null) {
try {
JSONArray programs= new JSONArray(data);
for (int i = 0; i < programs.length(); i++) {
JSONObject object = programs.getJSONObject(i);
StructApps app= new StructApps();
app.id = object.getLong("app_id");
app.name = object.getString("app_name");
app.ratingValue = (float) object.getDouble("app_rating");
app.logoUrl = object.getString("app_logourl");
app.genre = object.getString("app_genre");
app.votes = object.getString("app_vote");
apps.add(app);
}
if (adapter != null) {
adapter.notifyDataSetChanged();
}
part++;
list.setIsLoading(false);
}
catch (JSONException e) {
e.printStackTrace();
}
}
}
@Override
public void onFail(int statusCode) {
switch (statusCode) {
case ModuleWebservice.IO_EXCEPTION:
Log.i("LOG", "IO Exception");
break;
case ModuleWebservice.PROTOCOL_EXCEPTION:
Log.i("LOG", "PROTOCOL Exception");
break;
case ModuleWebservice.UNKNOWN_EXCEPTION:
Log.i("LOG", "UNKNOWN Exception");
break;
}
}
};
ArrayList<NameValuePair> input = new ArrayList<NameValuePair>();
input.add(new BasicNameValuePair("part", "" + part));
module.url("http://192.168.1.51/app-server/service.php?action=read", input)
.inputArguments(input)
.listener(listener)
.cacheDir(G.DIR_CACHE)
.enableCache(true)
.cacheExpireTime(300)
.connectionTimeout(3000)
.socketTimeout(5000)
.read();
}
نظرات
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .
ویرایش
پیام
نظرات