من قصد دارم
رو با مقداری که از اکتیویتی قبلی میارم پر کنم ، یعنی max ، در اکتیویتی قبلی به int تبدیل کردم عددی که از سرور میگیرم رو و در اکتیویتی جدید هم به صورت int دریافت می کنم اما این ارور رو بهم میده :
وقتی متغیر max رو در همین اکتیویتی مقدار دهیش میکنم بدون ارور بالا میاد اما وقتی می خوام از اکتیویتی قبلی بگیرمش ارور میده. max رو به استرینگ تبدیل کردم و در یک تکس ویو نمایش دادم به درستی گرفته میشه از اکتیویتی قبلی اما نمیدونم چرا ارور میده
شما میدونید؟
کد:
ArrayList<Integer> integerList = getRandomSubset(20);
رو با مقداری که از اکتیویتی قبلی میارم پر کنم ، یعنی max ، در اکتیویتی قبلی به int تبدیل کردم عددی که از سرور میگیرم رو و در اکتیویتی جدید هم به صورت int دریافت می کنم اما این ارور رو بهم میده :
کد پیاچپی:
04-17 22:21:35.981: E/AndroidRuntime(23456): FATAL EXCEPTION: AsyncTask #6
04-17 22:21:35.981: E/AndroidRuntime(23456): Process: com.milionbor.srp, PID: 23456
04-17 22:21:35.981: E/AndroidRuntime(23456): java.lang.RuntimeException: An error occured while executing doInBackground()
04-17 22:21:35.981: E/AndroidRuntime(23456): at android.os.AsyncTask$3.done(AsyncTask.java:300)
04-17 22:21:35.981: E/AndroidRuntime(23456): at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:355)
04-17 22:21:35.981: E/AndroidRuntime(23456): at java.util.concurrent.FutureTask.setException(FutureTask.java:222)
04-17 22:21:35.981: E/AndroidRuntime(23456): at java.util.concurrent.FutureTask.run(FutureTask.java:242)
04-17 22:21:35.981: E/AndroidRuntime(23456): at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231)
04-17 22:21:35.981: E/AndroidRuntime(23456): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
04-17 22:21:35.981: E/AndroidRuntime(23456): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
04-17 22:21:35.981: E/AndroidRuntime(23456): at java.lang.Thread.run(Thread.java:841)
04-17 22:21:35.981: E/AndroidRuntime(23456): Caused by: java.lang.IndexOutOfBoundsException: Invalid index 0, size is 0
04-17 22:21:35.981: E/AndroidRuntime(23456): at java.util.ArrayList.throwIndexOutOfBoundsException(ArrayList.java:255)
04-17 22:21:35.981: E/AndroidRuntime(23456): at java.util.ArrayList.get(ArrayList.java:308)
04-17 22:21:35.981: E/AndroidRuntime(23456): at com.milionbor.srp.Bazigari$SaveProductDetails.doInBackground(Bazigari.java:280)
04-17 22:21:35.981: E/AndroidRuntime(23456): at com.milionbor.srp.Bazigari$SaveProductDetails.doInBackground(Bazigari.java:1)
04-17 22:21:35.981: E/AndroidRuntime(23456): at android.os.AsyncTask$2.call(AsyncTask.java:288)
04-17 22:21:35.981: E/AndroidRuntime(23456): at java.util.concurrent.FutureTask.run(FutureTask.java:237)
04-17 22:21:35.981: E/AndroidRuntime(23456): ... 4 more
04-17 22:21:36.814: E/WindowManager(23456): android.view.WindowLeaked: Activity com.milionbor.srp.Bazigari has leaked window com.android.internal.policy.impl.PhoneWindow$DecorView{42660730 V.E..... R......D 0,0-684,192} that was originally added here
04-17 22:21:36.814: E/WindowManager(23456): at android.view.ViewRootImpl.<init>(ViewRootImpl.java:422)
04-17 22:21:36.814: E/WindowManager(23456): at android.view.WindowManagerGlobal.addView(WindowManagerGlobal.java:250)
04-17 22:21:36.814: E/WindowManager(23456): at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:69)
04-17 22:21:36.814: E/WindowManager(23456): at android.app.Dialog.show(Dialog.java:297)
04-17 22:21:36.814: E/WindowManager(23456): at com.milionbor.srp.Bazigari$SaveProductDetails.onPreExecute(Bazigari.java:273)
04-17 22:21:36.814: E/WindowManager(23456): at android.os.AsyncTask.executeOnExecutor(AsyncTask.java:587)
04-17 22:21:36.814: E/WindowManager(23456): at android.os.AsyncTask.execute(AsyncTask.java:535)
04-17 22:21:36.814: E/WindowManager(23456): at com.milionbor.srp.Bazigari$NetCheck.onPostExecute(Bazigari.java:256)
04-17 22:21:36.814: E/WindowManager(23456): at com.milionbor.srp.Bazigari$NetCheck.onPostExecute(Bazigari.java:1)
04-17 22:21:36.814: E/WindowManager(23456): at android.os.AsyncTask.finish(AsyncTask.java:632)
04-17 22:21:36.814: E/WindowManager(23456): at android.os.AsyncTask.access$600(AsyncTask.java:177)
04-17 22:21:36.814: E/WindowManager(23456): at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:645)
04-17 22:21:36.814: E/WindowManager(23456): at android.os.Handler.dispatchMessage(Handler.java:110)
04-17 22:21:36.814: E/WindowManager(23456): at android.os.Looper.loop(Looper.java:193)
04-17 22:21:36.814: E/WindowManager(23456): at android.app.ActivityThread.main(ActivityThread.java:5333)
04-17 22:21:36.814: E/WindowManager(23456): at java.lang.reflect.Method.invokeNative(Native Method)
04-17 22:21:36.814: E/WindowManager(23456): at java.lang.reflect.Method.invoke(Method.java:515)
04-17 22:21:36.814: E/WindowManager(23456): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:829)
04-17 22:21:36.814: E/WindowManager(23456): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:645)
04-17 22:21:36.814: E/WindowManager(23456): at dalvik.system.NativeStart.main(Native Method)
وقتی متغیر max رو در همین اکتیویتی مقدار دهیش میکنم بدون ارور بالا میاد اما وقتی می خوام از اکتیویتی قبلی بگیرمش ارور میده. max رو به استرینگ تبدیل کردم و در یک تکس ویو نمایش دادم به درستی گرفته میشه از اکتیویتی قبلی اما نمیدونم چرا ارور میده
شما میدونید؟