Thanks for the reply!
As you suggested, we have added some output logs to see the raw data retrieved by the client. To do so, we have used the HttpLoggingInterceptor of OkHttp. Here is the result on Android:
2018-10-03 10:43:27.895 11689-13215/com.digitalplumecompany.boostyourteam D/OkHttp: --> GET https://www.fakedomain.fr/teams/149/wall http/1.1
2018-10-03 10:43:27.895 11689-13215/com.digitalplumecompany.boostyourteam D/OkHttp: Accept: application/json
2018-10-03 10:43:27.895 11689-13215/com.digitalplumecompany.boostyourteam D/OkHttp: --> END GET
2018-10-03 10:43:28.175 11689-13215/com.digitalplumecompany.boostyourteam D/OkHttp: <-- 200 OK https://www.fakedomain.fr/teams/149/wall (279ms)
2018-10-03 10:43:28.175 11689-13215/com.digitalplumecompany.boostyourteam D/OkHttp: X-Powered-By: Express
2018-10-03 10:43:28.176 11689-13215/com.digitalplumecompany.boostyourteam D/OkHttp: Content-Type: application/json; charset=utf-8
2018-10-03 10:43:28.176 11689-13215/com.digitalplumecompany.boostyourteam D/OkHttp: Content-Length: 3074
2018-10-03 10:43:28.176 11689-13215/com.digitalplumecompany.boostyourteam D/OkHttp: ETag: W/"c02-6eopWb56C2G8DSYxhknQVPebo2s"
2018-10-03 10:43:28.176 11689-13215/com.digitalplumecompany.boostyourteam D/OkHttp: Date: Wed, 03 Oct 2018 08:43:29 GMT
2018-10-03 10:43:28.176 11689-13215/com.digitalplumecompany.boostyourteam D/OkHttp: Connection: close
2018-10-03 10:43:28.184 11689-13215/com.digitalplumecompany.boostyourteam D/OkHttp: {"posts":[{"comment":{"id":"7010","text":"\"Bonjour Dylanie. Ok pour Tess mais ton message d’origine a été supprimé. C’est bien pour « nice fête la rentrée » sur la prom pour la présentation de toutes les activités sportives et associatives de la ville de Nice ?!\"","elapsed_time":29041,"new":false,"player":{"id":"1","first_name":"Nicolas","last_name":"Prugne","profile_pic_url":"https://s3.eu-west-3.amazonaws.com/fakedomain-bucket/1f18af17-7000-446b-9c3c-8f8e841971e4.jpg"}},"id":"2721","text":"\"Arnaud dis à ta femme de faire des muffins 🤣🤣🤣\"","player":{"id":"1","first_name":"Nicolas","last_name":"Prugne","profile_pic_url":"https://s3.eu-west-3.amazonaws.com/fakedomain-bucket/1f18af17-7000-446b-9c3c-8f8e841971e4.jpg"},"team_id":"149","elapsed_time":29232,"new":false,"total_players_count":2,"total_views_count":2,"total_likes_count":0,"total_dislikes_count":0,"is_liked":false,"is_disliked":false,"hidden_comments_count":0},{"id":"2720","text":"\"Merci Dylanie ! Tess a rejoint le groupe 😉. Bonne soirée à tous\"","player":{"id":"1","first_name":"Nicolas","last_name":"Prugne","profile_pic_url":"https://s3.eu-west-3.amazonaws.com/fakedomain-bucket/1f18af17-7000-446b-9c3c-8f8e841971e4.jpg"},"team_id":"149","elapsed_time":29232,"new":false,"total_players_count":2,"total_views_count":2,"total_likes_count":0,"total_dislikes_count":0,"is_liked":false,"is_disliked":false,"hidden_comments_count":0},{"id":"2719","text":"\"Bonne semaine d’entraînement les filles ! Vous avez bien bosser.\n \nReposez vous\nA mardi 😊\"","player":{"id":"1","first_name":"Nicolas","last_name":"Prugne","profile_pic_url":"https://s3.eu-west-3.amazonaws.com/fakedomain-bucket/1f18af17-7000-446b-9c3c-8f8e841971e4.jpg"},"team_id":"149","elapsed_time":29232,"new":false,"total_players_count":2,"total_views_count":2,"total_likes_count":0,"total_dislikes_count":0,"is_liked":false,"is_disliked":false,"hidden_comments_count":0},{"id":"2718","text":"\"Nathhhhhhhhhh ton mari est arrivé et y a pas les muffinsssss 😢😢😢😢😢😢\"","player":{"id":"1","first_name":"Nicolas","last_name":"Prugne","profile_pic_url":"https://s3.eu-west-3.amazonaws.com/fakedomain-bucket/1f18af17-7000-446b-9c3c-8f8e841971e4.jpg"},"team_id":"149","elapsed_time":29232,"new":false,"total_players_count":2,"total_views_count":2,"total_likes_count":0,"total_dislikes_count":0,"is_liked":false,"is_disliked":false,"hidden_comments_count":0},{"id":"2717","text":"Cc dylanie ok pour samedi pour Juliette merci de me\nConfirmer l’adresse exacte et la tenue à mettre bonne journée","player":{"id":"1","first_name":"Nicolas","last_name":"Prugne","profile_pic_url":"https://s3.eu-west-3.amazonaws.com/fakedomain-bucket/1f18af17-7000-446b-9c3c-8f8e841971e4.jpg"},"team_id":"149","elapsed_time":29233,"new":false,"total_players_count":2,"total_views_count":2,"total_likes_count":0,"total_dislikes_count":0,"is_liked":false,"is_disliked":false,"hidden_comments_count":0}],"continuation_token":"1536838254_2717"}
2018-10-03 10:43:28.185 11689-13215/com.digitalplumecompany.boostyourteam D/OkHttp: <-- END HTTP (3074-byte body)
And here is what we have on iOS:
OkHttp 3 --> GET https://www.fakedomain.fr/teams/149/wall http/1.1
OkHttp 3 Accept: application/json
OkHttp 3 Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ8.eyJpZCI7IjIiLCJpYXQiOjE1Mzg1NTYwMjUsImV4cCI6MTUzODU1NjMyNX0.W8bzcKXn65uoxOaQwRdCKs012qtMovZQa9viYUgxfPk
OkHttp 3 --> END GET
OkHttp 3 <-- 200 OK https://www.fakedomain.fr/teams/149/wall (462ms)
OkHttp 3 X-Powered-By: Express
OkHttp 3 Content-Type: application/json; charset=utf-8
OkHttp 3 Content-Length: 3074
OkHttp 3 ETag: W/"c02-nvirdGPzt5DGWAuSXYHQPFFC3D8"
OkHttp 3 Date: Wed, 03 Oct 2018 08:41:08 GMT
OkHttp 3 {"posts":[{"comment":{"id":"7010","text":"\"Bonjour Dylanie. Ok pour Tess mais ton message d’origine a été supprimé. C’est bien pour « nice fête la rentrée » sur la prom pour la présentation de toutes les activités sportives et associatives de la ville de Nice ?!\"","elapsed_time":29039,"new":false,"player":{"id":"1","first_name":"Nicolas","last_name":"Prugne","profile_pic_url":"https://s3.eu-west-3.amazonaws.com/fakedomain-bucket/1f18af17-7000-446b-9c3c-8f8e841971e4.jpg"}},"id":"2721","text":"\"Arnaud dis à ta femme de faire des muffins 🤣🤣🤣\"","player":{"id":"1","first_name":"Nicolas","last_name":"Prugne","profile_pic_url":"https://s3.eu-west-3.amazonaws.com/fakedomain-bucket/1f18af17-7000-446b-9c3c-8f8e841971e4.jpg"},"team_id":"149","elapsed_time":29230,"new":false,"total_players_count":2,"total_views_count":2,"total_likes_count":0,"total_dislikes_count":0,"is_liked":false,"is_disliked":false,"hidden_comments_count":0},{"id":"2720","text":"\"Merci Dylanie ! Tess a rejoint le groupe 😉. Bonne soirée à tous\"","player":{"id":"1","first_name":"Nicolas","last_name":"Prugne","profile_pic_url":"https://s3.eu-west-3.amazonaws.com/fakedomain-bucket/1f18af17-7000-446b-9c3c-8f8e841971e4.jpg"},"team_id":"149","elapsed_time":29230,"new":false,"total_players_count":2,"total_views_count":2,"total_likes_count":0,"total_dislikes_count":0,"is_liked":false,"is_disliked":false,"hidden_comments_count":0},{"id":"2719","text":"\"Bonne semaine d’entraînement les filles ! Vous avez bien bosser.\n \nReposez vous\nA mardi 😊\"","player":{"id":"1","first_name":"Nicolas","last_name":"Prugne","profile_pic_url":"https://s3.eu-west-3.amazonaws.com/fakedomain-bucket/1f18af17-7000-446b-9c3c-8f8e841971e4.jpg"},"team_id":"149","elapsed_time":29230,"new":false,"total_players_count":2,"total_views_count":2,"total_likes_count":0,"total_dislikes_count":0,"is_liked":false,"is_disliked":false,"hidden_comments_count":0},{"id":"2718","text":"\"Nathhhhhhhhhh ton mari est arrivé et y a pas les muffinsssss 😢😢😢😢😢😢\"","player":{"id":"1","first_name":"Nicolas","last_name":"Prugne","profile_pic_url":"https://s3.eu-west-3.amazonaws.com/fakedomain-bucket/1f18af17-7000-446b-9c3c-8f8e841971e4.jpg"},"team_id":"149","elapsed_time":29230,"new":false,"total_players_count":2,"total_views_count":2,"total_likes_count":0,"total_dislikes_count":0,"is_liked":false,"is_disliked":false,"hidden_comments_count":0},{"id":"2717","text":"Cc dylanie ok pour samedi pour Juliette merci de me\nConfirmer l’adresse exacte et la tenue à mettre bonne journée","player":{"id":"1","first_name":"Nicolas","last_name":"Prugne","profile_pic_url":"https://s3.eu-west-3.amazonaws.com/fakedomain-bucket/1f18af17-7000-446b-9c3c-8f8e841971e4.jpg"},"team_id":"149","elapsed_time":29231,"new":false,"total_players_count":2,"total_views_count":2,"total_likes_count":0,"total_dislikes_count":0,"is_liked":false,"is_disliked":false,"hidden_comments_count":0}],"continuation_token":"1536838254_2717"}
OkHttp 3 <-- END HTTP (3074-byte body)
We have used a tool to compare the raw data (this part {“posts”: [{ … }]}) that we call a “wall chunk” in our app and we have found no differences except the elapsed_time fields.
Here is the stack trace of the error:
stackTrace = {StackTraceElement[27]@2641}
0 = {StackTraceElement@2644} "com.google.gson.stream.JsonReader.syntaxError(JsonReader.java:1568)"
1 = {StackTraceElement@2645} "com.google.gson.stream.JsonReader.nextQuotedValue(JsonReader.java:1031)"
2 = {StackTraceElement@2646} "com.google.gson.stream.JsonReader.nextString(JsonReader.java:815)"
3 = {StackTraceElement@2647} "com.google.gson.internal.bind.TypeAdapters$16.read(TypeAdapters.java:402)"
4 = {StackTraceElement@2648} "com.google.gson.internal.bind.TypeAdapters$16.read(TypeAdapters.java:390)"
5 = {StackTraceElement@2649} "com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.read(ReflectiveTypeAdapterFactory.java:131)"
6 = {StackTraceElement@2650} "com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:222)"
7 = {StackTraceElement@2651} "com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper.read(TypeAdapterRuntimeTypeWrapper.java:41)"
8 = {StackTraceElement@2652} "com.google.gson.internal.bind.CollectionTypeAdapterFactory$Adapter.read(CollectionTypeAdapterFactory.java:82)"
9 = {StackTraceElement@2653} "com.google.gson.internal.bind.CollectionTypeAdapterFactory$Adapter.read(CollectionTypeAdapterFactory.java:61)"
10 = {StackTraceElement@2654} "com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.read(ReflectiveTypeAdapterFactory.java:131)"
11 = {StackTraceElement@2655} "com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:222)"
12 = {StackTraceElement@2656} "retrofit2.converter.gson.GsonResponseBodyConverter.convert(GsonResponseBodyConverter.java:39)"
13 = {StackTraceElement@2657} "retrofit2.converter.gson.GsonResponseBodyConverter.convert(GsonResponseBodyConverter.java:27)"
14 = {StackTraceElement@2658} "retrofit2.ServiceMethod.toResponse(ServiceMethod.java:122)"
15 = {StackTraceElement@2659} "retrofit2.OkHttpCall.parseResponse(OkHttpCall.java:217)"
16 = {StackTraceElement@2660} "retrofit2.OkHttpCall.execute(OkHttpCall.java:180)"
17 = {StackTraceElement@2661} "retrofit2.adapter.rxjava.CallExecuteOnSubscribe.call(CallExecuteOnSubscribe.java:40)"
18 = {StackTraceElement@2662} "retrofit2.adapter.rxjava.CallExecuteOnSubscribe.call(CallExecuteOnSubscribe.java:24)"
19 = {StackTraceElement@2663} "retrofit2.adapter.rxjava.BodyOnSubscribe.call(BodyOnSubscribe.java:36)"
26 = {StackTraceElement@2670} "com.digitalplumecompany.boostyourteam.schedulers.ScheduledAction$1.call_addExecutionBlock(ScheduledAction.java:57)"
25 = {StackTraceElement@2669} "rx.Single$13$1.call(Single.java:2051)"
24 = {StackTraceElement@2668} "rx.Single.subscribe(Single.java:1979)"
23 = {StackTraceElement@2667} "rx.internal.operators.OnSubscribeSingle.call(OnSubscribeSingle.java:27)"
22 = {StackTraceElement@2666} "rx.internal.operators.OnSubscribeSingle.call(OnSubscribeSingle.java:81)"
21 = {StackTraceElement@2665} "rx.Observable.unsafeSubscribe(Observable.java:10327)"
20 = {StackTraceElement@2664} "retrofit2.adapter.rxjava.BodyOnSubscribe.call(BodyOnSubscribe.java:28)"
We still have the issue and we don’t know where does it come from.
Regards,
Nicolas