From 3f6a6c15296884241f63fb3a531a833a7d68ed1a Mon Sep 17 00:00:00 2001 From: Aryan Moradi Date: Thu, 28 Mar 2019 17:56:15 +0430 Subject: [PATCH] 2019-03-28 17:55 Bug fix again --- .../gcorp/retrofithelperexample/BaseApp.kt | 5 ++-- .../retrofithelperexample/MainActivity.kt | 24 +++++++++++++++---- .../com/gcorp/retrofithelperexample/T3.kt | 10 +++++--- .../com/gcorp/retrofithelperexample/Test.java | 17 +++++++++++++ .../java/com/gcorp/retrofithelper/Response.kt | 4 +++- .../gcorp/retrofithelper/RetrofitClient.kt | 7 ++---- 6 files changed, 51 insertions(+), 16 deletions(-) create mode 100644 app/src/main/java/com/gcorp/retrofithelperexample/Test.java diff --git a/app/src/main/java/com/gcorp/retrofithelperexample/BaseApp.kt b/app/src/main/java/com/gcorp/retrofithelperexample/BaseApp.kt index 8e7a978..bae5386 100644 --- a/app/src/main/java/com/gcorp/retrofithelperexample/BaseApp.kt +++ b/app/src/main/java/com/gcorp/retrofithelperexample/BaseApp.kt @@ -8,9 +8,8 @@ class BaseApp : Application() { super.onCreate() retrofitClient = -// RetrofitClient().setBaseUrl("http://192.168.1.2/test/") - RetrofitClient().setBaseUrl("http://bef0de5a.ngrok.io/api/") - .setUrl("salam","http://192.168.1.95:81/") + RetrofitClient().setBaseUrl("http://192.168.1.2/test/") + .setUrl("mili","http://7468e347.ngrok.io/api/") .setConnectionTimeout(15) .setReadingTimeout(15) .addHeader("Accept", "application/json") diff --git a/app/src/main/java/com/gcorp/retrofithelperexample/MainActivity.kt b/app/src/main/java/com/gcorp/retrofithelperexample/MainActivity.kt index 00f7cec..6937693 100644 --- a/app/src/main/java/com/gcorp/retrofithelperexample/MainActivity.kt +++ b/app/src/main/java/com/gcorp/retrofithelperexample/MainActivity.kt @@ -3,12 +3,14 @@ package com.gcorp.retrofithelperexample import android.graphics.BitmapFactory import android.support.v7.app.AppCompatActivity import android.os.Bundle +import android.util.JsonReader import android.util.Log import com.gcorp.retrofithelper.RequestHandler import com.gcorp.retrofithelper.Response import com.gcorp.retrofithelperexample.BaseApp.Companion.retrofitClient import com.google.gson.Gson import java.io.Serializable +import java.io.StringReader import kotlin.math.log @@ -46,11 +48,23 @@ class MainActivity : AppCompatActivity() { // }) // .run() +// val json = +// "{items=[{name=Fruit Ninja Fight, url=https://www.farsroid.com/wp-content/uploads/Fruit-Ninja-Fight-Logo-150x150.png}, {name=Trailer Park Boys, url=https://www.farsroid.com/wp-content/uploads/Trailer-Park-Boys-Greasy-Money-logo-c-150x150.png}, {name=Cradle of Empires, url=https://www.farsroid.com/wp-content/uploads/Cradle-of-Empires-logo-d-150x150.png}, {name=Disco Ducks, url=https://www.farsroid.com/wp-content/uploads/Disco-Ducks-150x150.png}, {name=Manor Cafe, url=https://www.farsroid.com/wp-content/uploads/Manor-Cafe-logo-f-150x150.png}, {name=Live or Die: Survival, url=https://www.farsroid.com/wp-content/uploads/Live-or-Die-survival-2019-logo-150x150.jpg}]}" +// +// + +// val aa = Gson().fromJson(Gson().toJson(json), T3::class.java) +// +// Log.e("Ary", "T3 -> ${aa.items!!.size}") +// aa.items.forEach { +// Log.e("Ary", "${it.name} -> ${it.url}") +// } - retrofitClient.Post() + retrofitClient.Get() + .setBaseUrlKey("mili") .setPath("todo/1") - .setRequestHandler(T3::class.java,object : RequestHandler() { - override fun onSuccess(response: Response) { + .setRequestHandler(T2::class.java, object : RequestHandler() { + override fun onSuccess(response: Response) { super.onSuccess(response) // EEEERRRRRRRRRORRRRRRRRRR is hear @@ -61,9 +75,11 @@ class MainActivity : AppCompatActivity() { Log.e("Ary", "raw.body -> " + response.raw!!.body()) Log.e("Ary", "body -> " + response.body.name) + + } - override fun onError(response: Response?) { + override fun onError(response: Response?) { super.onError(response) } diff --git a/app/src/main/java/com/gcorp/retrofithelperexample/T3.kt b/app/src/main/java/com/gcorp/retrofithelperexample/T3.kt index 2467523..8b70380 100644 --- a/app/src/main/java/com/gcorp/retrofithelperexample/T3.kt +++ b/app/src/main/java/com/gcorp/retrofithelperexample/T3.kt @@ -1,6 +1,10 @@ package com.gcorp.retrofithelperexample open class T3 { - var id: String = "pashm" - var name: String = "pashm" - var isComplete: Boolean = false + val items: List? = null + + + inner class Item{ + var name: String = "" + var url: String = "" + } } \ No newline at end of file diff --git a/app/src/main/java/com/gcorp/retrofithelperexample/Test.java b/app/src/main/java/com/gcorp/retrofithelperexample/Test.java new file mode 100644 index 0000000..1df33f3 --- /dev/null +++ b/app/src/main/java/com/gcorp/retrofithelperexample/Test.java @@ -0,0 +1,17 @@ +package com.gcorp.retrofithelperexample; + +import android.util.JsonReader; +import com.google.gson.Gson; + +import java.io.StringReader; + +public class Test { + + void aa(){ + String json= "{items=[{name=Fruit Ninja Fight, url=https://www.farsroid.com/wp-content/uploads/Fruit-Ninja-Fight-Logo-150x150.png}, {name=Trailer Park Boys, url=https://www.farsroid.com/wp-content/uploads/Trailer-Park-Boys-Greasy-Money-logo-c-150x150.png}, {name=Cradle of Empires, url=https://www.farsroid.com/wp-content/uploads/Cradle-of-Empires-logo-d-150x150.png}, {name=Disco Ducks, url=https://www.farsroid.com/wp-content/uploads/Disco-Ducks-150x150.png}, {name=Manor Cafe, url=https://www.farsroid.com/wp-content/uploads/Manor-Cafe-logo-f-150x150.png}, {name=Live or Die: Survival, url=https://www.farsroid.com/wp-content/uploads/Live-or-Die-survival-2019-logo-150x150.jpg}]}"; + Gson gson = new Gson(); + JsonReader reader = new JsonReader(new StringReader(json)); + reader.setLenient(true); + T3 userinfo1 = (T3) gson.fromJson(String.valueOf(reader), T3.class); + } +} diff --git a/retrofithelper/src/main/java/com/gcorp/retrofithelper/Response.kt b/retrofithelper/src/main/java/com/gcorp/retrofithelper/Response.kt index 9cb449a..37599ef 100644 --- a/retrofithelper/src/main/java/com/gcorp/retrofithelper/Response.kt +++ b/retrofithelper/src/main/java/com/gcorp/retrofithelper/Response.kt @@ -1,12 +1,14 @@ package com.gcorp.retrofithelper +import android.util.JsonReader import android.util.Log import com.google.gson.Gson import retrofit2.Response +import java.io.StringReader class Response(response: Response, classOfT: Class) { var header: MutableMap>? = response.headers().toMultimap() - var body = Gson().fromJson(response.body().toString(), classOfT) + var body = Gson().fromJson(Gson().toJson(response.body()), classOfT) var code = response.code() var raw: okhttp3.Response? = response.raw() diff --git a/retrofithelper/src/main/java/com/gcorp/retrofithelper/RetrofitClient.kt b/retrofithelper/src/main/java/com/gcorp/retrofithelper/RetrofitClient.kt index e59bcd9..0616375 100644 --- a/retrofithelper/src/main/java/com/gcorp/retrofithelper/RetrofitClient.kt +++ b/retrofithelper/src/main/java/com/gcorp/retrofithelper/RetrofitClient.kt @@ -3,6 +3,7 @@ package com.gcorp.retrofithelper import android.app.Activity import android.graphics.Bitmap import android.util.Log +import com.google.gson.Gson import com.google.gson.GsonBuilder import okhttp3.MediaType import okhttp3.MultipartBody @@ -540,9 +541,8 @@ class RetrofitClient { override fun onNext(t: Response?) { if (t != null) { Log.e("Request", "code -> ${t.code()}") - Log.e("Request", "raw -> ${t.raw()}") - Log.e("Request", "body -> ${t.body()}") Log.e("Request", "header -> ${t.headers()}") + Log.e("Request", "body -> ${t.body()}") } if (t == null) { @@ -550,9 +550,6 @@ class RetrofitClient { return } - Log.e("AryLib", "raw -> " + t.raw().toString()) - Log.e("AryLib", "raw.body -> " + t.body()) - val res = Response(t, classOfT) if (t.code() != 200) {