Я разработал приложение для Android, и она работает отлично, но иногда бросает странную ошибку:Странная ошибка в super.onStart();
Если заявка была выполнена раньше, и вы выполнить его снова, только иногда, он бросает мне следующую ошибку: android.database.CursorIndexOutOfBoundsException: Index 0 requested, with a size of 0
.
Странная часть этого (по крайней мере, для меня, потому что я не эксперт по Android) заключается в том, что, кроме того, это не всегда происходит, заключается в том, что первая точка, появляющаяся в журнале ошибок, равна super.onStart();
строка моего main.java, и я ничего не имею перед этой строкой.
Вот мой OnStart метод:
@Override
protected void onStart() {
super.onStart();
mPager.setOffscreenPageLimit(4);
mPager.setPageTransformer(true, new ZoomOutPageTransformer());
}
Вот журнал ошибок:
...
at dalvik.system.NativeStart.main(Native Method)
Caused by: android.database.CursorIndexOutOfBoundsException: Index 0 requested, with a size of 0
at android.database.AbstractCursor.checkPosition(AbstractCursor.java:418)
at android.database.AbstractWindowedCursor.checkPosition(AbstractWindowedCursor.java:136)
at android.database.AbstractWindowedCursor.getInt(AbstractWindowedCursor.java:68)
at mysql.BaseDatos.getAsignaturaDataBase(BaseDatos.java:233)
at com.tfd.myapp.FragmentAsig.onCreateView(FragmentAsig.java:269)
at android.support.v4.app.Fragment.performCreateView(Fragment.java:1478)
at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:927)
at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1104)
at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1086)
at android.support.v4.app.FragmentManagerImpl.dispatchActivityCreated(FragmentManager.java:1877)
at android.support.v4.app.FragmentActivity.onStart(FragmentActivity.java:552)
at com.tfd.myapp.Principal.onStart(Principal.java:108)
at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1166)
at android.app.Activity.performStart(Activity.java:5254)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2043)
...
Как это может быть?
Какой класс деятельности вы распространяете? – akohout
Не уверен, что это вам поможет: https://github.com/android/platform_frameworks_base/blob/master/core/java/android/app/Activity.java#L1160 У вас когда-нибудь была возможность отладить такой крах? Или это происходит только в режиме без отладки? :) – akohout
Если у вас есть курсор в вашем суперклассе, проверьте, есть ли у него какие-либо данные, перед использованием объекта курсора. if (cursor.moveToFirst()) { // если курсор содержит данные, первый объект; тогда сделайте свою работу здесь } – vembutech