ApplozicConversation.getMessageListForContact () ограничивает размер результата - PullRequest
0 голосов
/ 18 марта 2019

Я хочу получить сообщения для контакта, когда я вызываю эту функцию

ApplozicConversation.getMessageListForContact(getAppContext(), contact.getContactIds(), null, new MessageListHandler() {
            @Override
            public void onResult(List<Message> messageList, ApplozicException e) {
                if (e == null) {
                    listOfMessages.addAll(0, messageList);
                    listener.onResult(messageList, e);
                } else {
                    listener.onResult(null, e);
                }
            }
        });

Размер списка сообщений равен 235. Мне нужно сделать нумерацию страниц. Как я могу ограничить размер результата? Я использую следующую версию SDK для Android.

com.applozic.communication.message: mobicomkit: 5,34

1 Ответ

1 голос
/ 04 июня 2019

К сожалению, ограничения на выборку сообщений не существует, но мы подумаем о его добавлении.

На данный момент вы можете использовать обходной путь для импорта исходного кода. Загрузив Applozic-Android-SDK из проекта GitHub по этой ссылке: https://github.com/AppLozic/Applozic-Android-SDK

Далее импортируйте модуль mobicomkit из загруженного проекта GitHub при импорте он покажет mobicomkit и mobicommons, выберите оба.

, затем в своем приложении Build.gradle добавьте файл api project(':mobicomkit') и убедитесь, что вы удалили зависимость gradle com.applozic.communication.message:mobicomkit:5.34из вашего build.gradle файла

Далее вы можете открыть файл fileDatabaseService.java и найти метод

public List<Message> getMessages(Long startTime, Long endTime, Contact contact,  Channel channel, Integer conversationId) {

, тогда вы увидите запрос курсора, вы можете добавить ограничение какниже

 Cursor cursor = db.query("sms", null, structuredNameWhere, structuredNameParamsList.toArray(new String[structuredNameParamsList.size()]), null, null, "createdAt asc limit 200");
...