i am using Rtofit to handling the Serverside Data from Mobile After Implementing the Retrofit I am Getting the below Exception any know about this issue tell me where i am did wrong
Init Retrofit:
mRetrofit = new Retrofit.Builder()
.baseUrl(AppConstance.APP_URL)
.addConverterFactory(GsonConverterFactory.create())
.build();
Iservice = mRetrofit.create(IdeaService.class);
Gradle File
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.2.1'
compile 'com.squareup.retrofit2:retrofit:2.0.2'
compile 'com.squareup.retrofit2:converter-gson:2.0.0'
compile 'com.squareup.okhttp:okhttp:2.2.0'
compile 'com.squareup.okhttp:okhttp-urlconnection:2.0.0'
compile 'com.squareup.okio:okio:1.7.0'
}
Stacktrace
04-26 11:54:36.441 18355-18355/com.omt.example W/dalvikvm: threadid=1: thread exiting with uncaught exception (group=0x41da0c98)
04-26 11:54:36.441 18355-18355/com.omt.example W/dalvikvm: threadid=1: uncaught exception occurred
04-26 11:54:36.442 18355-18355/com.omt.example W/System.err: java.lang.NoClassDefFoundError: retrofit2.Platform
04-26 11:54:36.444 18355-18355/com.omt.example W/System.err: at retrofit2.Retrofit$Builder.<init>(Retrofit.java:402)
04-26 11:54:36.445 18355-18355/com.omt.example W/System.err: at com.omt.example.utils.Idea.onCreate(Idea.java:79)
04-26 11:54:36.447 18355-18355/com.omt.example W/System.err: at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1007)
04-26 11:54:36.448 18355-18355/com.omt.example W/System.err: at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4541)
04-26 11:54:36.449 18355-18355/com.omt.example W/System.err: at android.app.ActivityThread.access$1500(ActivityThread.java:151)
04-26 11:54:36.450 18355-18355/com.omt.example W/System.err: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1381)
04-26 11:54:36.451 18355-18355/com.omt.example W/System.err: at android.os.Handler.dispatchMessage(Handler.java:110)
04-26 11:54:36.451 18355-18355/com.omt.example W/System.err: at android.os.Looper.loop(Looper.java:193)
04-26 11:54:36.452 18355-18355/com.omt.example W/System.err: at android.app.ActivityThread.main(ActivityThread.java:5292)
04-26 11:54:36.453 18355-18355/com.omt.example W/System.err: at java.lang.reflect.Method.invokeNative(Native Method)
04-26 11:54:36.454 18355-18355/com.omt.example W/System.err: at java.lang.reflect.Method.invoke(Method.java:515)
04-26 11:54:36.455 18355-18355/com.omt.example W/System.err: at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:824)
04-26 11:54:36.456 18355-18355/com.omt.example W/System.err: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:640)
04-26 11:54:36.457 18355-18355/com.omt.example W/System.err: at dalvik.system.NativeStart.main(Native Method)
04-26 11:54:36.457 18355-18355/com.omt.example W/dalvikvm: threadid=1: calling UncaughtExceptionHandler
I had the same problem. Possible solution (fixed my problem):
1) Add gradle dependency:
compile 'com.android.support:multidex:1.0.0'
(file build.gradle)
2) Set multiDexEnabled true
(file build.gradle)
3) Add android:name="android.support.multidex.MultiDexApplication"
(file AndroidManifest.xml)
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme"
android:name="android.support.multidex.MultiDexApplication">
</application>
Try change the okhttp to okhttp3
compile 'com.squareup.okhttp3:okhttp:3.2.0'
compile 'com.squareup.okhttp3:okhttp-urlconnection:3.2.0'
As retrofit2
internally using okhttp3
.
Try build and sync gradle.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With