Как обрабатывать модифицированный вызов, который возвращает несколько моделей

#android #retrofit

#Android #модифицированный

Вопрос:

Я выполняю вызов API, который возвращает массив различных объектов с разными атрибутами:

 [
    {
        "likesCount": 17771,
        "sharesCount": 8823,
        "liked": false,
        "shared": false,
        "mediaType": "video",
        "mediaWidth": 1920,
        "mediaHeight": 1080,
        "mediaAspectRatio": "16:9",
        "mediaVideoUriDash": "https://d339b3x89fwe5u.cloudfront.net/2685322c-52cb-4c45-b671-63e607f17c97/dash/community-tile-video-1600081282.mpd",
        "mediaVideoUriHls": "https://d339b3x89fwe5u.cloudfront.net/2685322c-52cb-4c45-b671-63e607f17c97.m3u8",
        "mediaVideoCoverImageUri": "https://d339b3x89fwe5u.cloudfront.net/2685322c-52cb-4c45-b671-63e607f17c97/thumbnails.jpg"

},{
        "createdDate": "2020-09-14T11:01:20.025583Z",
        "createdTimestampEpochInMilliseconds": 1600081280026,
        "updatedDate": "2020-09-14T11:10:41.9218332Z",
        "updatedTimestampEpochInMilliseconds": 1600081841922,
        "id": "2490fc73-e17a-4a77-8905-b3e945c89fbf",
        "name": "Test",
        "url": "https://google.com/",
        "categoryType": "community",
        "weight": 5400,
        "isLikable": true,
        "isSharable": true,
        "isFullWidth": true
   
}
]
 

Как мне разобрать их на разные локальные объекты?

Комментарии:

1. Это нарушает Array DS . Это должна быть коллекция похожих типов данных. Вам нужно изменить ответ API, если вы не можете, тогда вам нужно написать пользовательский синтаксический анализатор, который, я думаю, будет проблемой при таком расположении.

2. Спасибо за ваш ответ. Любые известные примеры пользовательского анализатора?

3. Я не думаю, что написание пользовательского синтаксического анализатора — хорошая идея. Поскольку вы не знаете , какой объект является следующим в массиве. Они должны находиться под отдельными массивами.