Application crash when using Retrofit callback in debug mode

My application crashes when I try to debug it, but it works fine in startup mode. I looked at the stack trace and I know that this is due to the callback code.

Any ideas why the app crashes only in debug mode?

Here is a snippet:

public class MoviePosterFragment extends Fragment { private void updateMoviePosters(final RecyclerView rv) { MovieAPI mMovieAPI = NetworkAPI.createService(MovieAPI.class); Callback<movieGeneral> callback = new Callback<movieGeneral>() { @Override public void success(movieGeneral mMovieGeneral, Response response) { updateMovieGrid(rv, mMovieGeneral); Toast.makeText(getActivity(), "callback success!", Toast.LENGTH_LONG).show(); } @Override public void failure(RetrofitError error) { int a =0; //show error message //set adapter to null Toast.makeText(getActivity(), "fail!", Toast.LENGTH_LONG).show(); } }; mMovieAPI.fetchPopMovies(MOST_POPULAR, API_KEY, callback); } } 

Network API:

 public class NetworkAPI { //Volatile keyword ensures that multiple threads handle the unique/instance correctly private volatile static NetworkAPI uniqueInstance; public static final String POP_MOVIES_URL = "http://api.themoviedb.org/3/discover/movie?"; private final String API_KEY = "xxxxxxxxxxxxxxxxxxxxxx"; final String SORT_PARAM = "sort_by"; final String PAGE = "page"; final String KEY = "api_key"; private static RestAdapter.Builder builder = new RestAdapter.Builder() .setEndpoint(POP_MOVIES_URL) //API endpoint .setClient(new OkClient(new OkHttpClient())); //setClient: the HTTP client used for requests public static <S> S createService(Class<S> serviceClass) { RestAdapter adapter = builder.build(); return adapter.create(serviceClass); } } 

Interface:

 public interface MovieAPI { @GET("/3/discover/movie") void fetchPopMovies ( //@Query: specifies the query key name with the value of the annotated parameter. @Query("sort_by") String SORT_PARAM, @Query("api_key") String API_KEY, retrofit.Callback<movieGeneral> cb //last parameter must be a Callback so API call can run asynchronously ); } 

Stacktrace:

 02-26 00:34:32.544 1109-1109/? E/SELinux: [DEBUG] get_category: variable seinfo: default sensitivity: NULL, cateogry: NULL 02-26 00:34:44.145 1109-1116/example.user.popmovie E/art: art::mirror::Object* art::StackVisitor::GetThisObject() const unimplemented Failed to determine this object of abstract or proxy method: void example.user.popmovie.utils.MovieAPI.fetchPopMovies(java.lang.String, java.lang.String, retrofit.Callback) 02-26 00:34:44.315 1109-1109/example.user.popmovie A/art: sart/runtime/check_jni.cc:65] JNI DETECTED ERROR IN APPLICATION: JNI GetStringUTFChars called with pending exception 'android.view.InflateException' thrown in android.view.View android.view.LayoutInflater.inflate(org.xmlpull.v1.XmlPullParser, android.view.ViewGroup, boolean):548 02-26 00:34:44.315 1109-1109/example.user.popmovie A/art: sart/runtime/check_jni.cc:65] in call to GetStringUTFChars 02-26 00:34:44.315 1109-1109/example.user.popmovie A/art: sart/runtime/check_jni.cc:65] from int android.util.Log.println_native(int, int, java.lang.String, java.lang.String) 02-26 00:34:44.315 1109-1109/example.user.popmovie A/art: sart/runtime/check_jni.cc:65] "main" prio=5 tid=1 Runnable 02-26 00:34:44.315 1109-1109/example.user.popmovie A/art: sart/runtime/check_jni.cc:65] | group="main" sCount=0 dsCount=0 obj=0x8759bef0 self=0xb4f07800 02-26 00:34:44.315 1109-1109/example.user.popmovie A/art: sart/runtime/check_jni.cc:65] | sysTid=1109 nice=0 cgrp=apps sched=0/0 handle=0xb6f67ec8 02-26 00:34:44.315 1109-1109/example.user.popmovie A/art: sart/runtime/check_jni.cc:65] | state=R schedstat=( 0 0 0 ) utm=30 stm=10 core=2 HZ=100 02-26 00:34:44.315 1109-1109/example.user.popmovie A/art: sart/runtime/check_jni.cc:65] | stack=0xbe4f4000-0xbe4f6000 stackSize=8MB 02-26 00:34:44.315 1109-1109/example.user.popmovie A/art: sart/runtime/check_jni.cc:65] | held mutexes= "mutator lock"(shared held) 02-26 00:34:44.315 1109-1109/example.user.popmovie A/art: sart/runtime/check_jni.cc:65] native: #00 pc 00004640 /system/lib/libbacktrace_libc++.so (UnwindCurrent::Unwind(unsigned int, ucontext*)+23) 02-26 00:34:44.315 1109-1109/example.user.popmovie A/art: sart/runtime/check_jni.cc:65] native: #01 pc 00002e8d /system/lib/libbacktrace_libc++.so (Backtrace::Unwind(unsigned int, ucontext*)+8) 02-26 00:34:44.315 1109-1109/example.user.popmovie A/art: sart/runtime/check_jni.cc:65] native: #02 pc 002481d1 /system/lib/libart.so (art::DumpNativeStack(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, int, char const*, art::mirror::ArtMethod*)+68) 02-26 00:34:44.315 1109-1109/example.user.popmovie A/art: sart/runtime/check_jni.cc:65] native: #03 pc 0022cf0b /system/lib/libart.so (art::Thread::Dump(std::__1::basic_ostream<char, std::__1::char_traits<char> >&) const+146) 02-26 00:34:44.315 1109-1109/example.user.popmovie A/art: sart/runtime/check_jni.cc:65] native: #04 pc 000b17ab /system/lib/libart.so (art::JniAbort(char const*, char const*)+582) 02-26 00:34:44.315 1109-1109/example.user.popmovie A/art: sart/runtime/check_jni.cc:65] native: #05 pc 000b1ee5 /system/lib/libart.so (art::JniAbortF(char const*, char const*, ...)+60) 02-26 00:34:44.315 1109-1109/example.user.popmovie A/art: sart/runtime/check_jni.cc:65] native: #06 pc 000b4ff5 /system/lib/libart.so (art::ScopedCheck::ScopedCheck(_JNIEnv*, int, char const*)+1284) 02-26 00:34:44.315 1109-1109/example.user.popmovie A/art: sart/runtime/check_jni.cc:65] native: #07 pc 000bce59 /system/lib/libart.so (art::CheckJNI::GetStringUTFChars(_JNIEnv*, _jstring*, unsigned char*)+24) 02-26 00:34:44.315 1109-1109/example.user.popmovie A/art: sart/runtime/check_jni.cc:65] native: #08 pc 00062b75 /system/lib/libandroid_runtime.so (???) 02-26 00:34:44.315 1109-1109/example.user.popmovie A/art: sart/runtime/check_jni.cc:65] native: #09 pc 00089511 /system/lib/libandroid_runtime.so (???) 02-26 00:34:44.315 1109-1109/example.user.popmovie A/art: sart/runtime/check_jni.cc:65] native: #10 pc 0166fdc3 /system/framework/arm/boot.oat (Java_android_util_Log_println_1native__IILjava_lang_String_2Ljava_lang_String_2+146) 02-26 00:34:44.315 1109-1109/example.user.popmovie A/art: sart/runtime/check_jni.cc:65] at android.util.Log.println_native(Native method) 02-26 00:34:44.315 1109-1109/example.user.popmovie A/art: sart/runtime/check_jni.cc:65] at android.util.Log.d(Log.java:164) 02-26 00:34:44.315 1109-1109/example.user.popmovie A/art: sart/runtime/check_jni.cc:65] at android.app.Activity.performCreate(Activity.java:6291) 02-26 00:34:44.315 1109-1109/example.user.popmovie A/art: sart/runtime/check_jni.cc:65] at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1120) 02-26 00:34:44.315 1109-1109/example.user.popmovie A/art: sart/runtime/check_jni.cc:65] at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2655) 02-26 00:34:44.315 1109-1109/example.user.popmovie A/art: sart/runtime/check_jni.cc:65] at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2767) 02-26 00:34:44.315 1109-1109/example.user.popmovie A/art: sart/runtime/check_jni.cc:65] at android.app.ActivityThread.access$900(ActivityThread.java:177) 02-26 00:34:44.315 1109-1109/example.user.popmovie A/art: sart/runtime/check_jni.cc:65] at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1450) 02-26 00:34:44.315 1109-1109/example.user.popmovie A/art: sart/runtime/check_jni.cc:65] at android.os.Handler.dispatchMessage(Handler.java:102) 02-26 00:34:44.315 1109-1109/example.user.popmovie A/art: sart/runtime/check_jni.cc:65] at android.os.Looper.loop(Looper.java:147) 02-26 00:34:44.315 1109-1109/example.user.popmovie A/art: sart/runtime/check_jni.cc:65] at android.app.ActivityThread.main(ActivityThread.java:5953) 02-26 00:34:44.315 1109-1109/example.user.popmovie A/art: sart/runtime/check_jni.cc:65] at java.lang.reflect.Method.invoke!(Native method) 02-26 00:34:44.315 1109-1109/example.user.popmovie A/art: sart/runtime/check_jni.cc:65] at java.lang.reflect.Method.invoke(Method.java:372) 02-26 00:34:44.315 1109-1109/example.user.popmovie A/art: sart/runtime/check_jni.cc:65] at android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1399) 02-26 00:34:44.315 1109-1109/example.user.popmovie A/art: sart/runtime/check_jni.cc:65] at android.internal.os.ZygoteInit.main(ZygoteInit.java:1194) 02-26 00:34:44.315 1109-1109/example.user.popmovie A/art: sart/runtime/check_jni.cc:65] 02-26 00:34:44.515 1109-1109/example.user.popmovie A/libc: Fatal signal 11 (SIGSEGV), code 1, fault addr 0x40 in tid 1109 (e.user.popmovie) 
+6
source share

All Articles