Я предполагаю, что вы в порядке с добавлением эллипсиса в конце строки. В этом случае, если ваша строка превышает 200 символов, вам нужно взять подстроку, которая идет от первого символа (индекс: 0) до 197-го. Затем вы соединяете «...» с этой подстрокой и используете ее в своем уведомлении.
Есть еще одна возможность, которую я использовал в прошлом: когда вы создаете уведомление, вы сжимаете свое сообщение с алгоритмом come (я использовал простой старый huffman) и отправляю сжатую версию в качестве полезной нагрузки. В вашем приложении вы раздуваете сжатое сообщение и показываете его, что практически превышает ограничение по размеру. Само собой разумеется, что это работает до тех пор, пока сжатая версия вписывается в полезную нагрузку уведомления. Если вы не можете этого сделать, вам придется сделать ваше сообщение короче заранее - либо с помощью метода, описанного выше, и затем отправить его в виде обычного текста, либо вы будете работать дольше, чем сможете усечь свое сообщение, прежде чем сжимать его что дефлированная версия помещается внутри полезной нагрузки.
ДАВАЙТЕ имеют следующую строку: var data = "Это строка не так долго". Мне нужно, чтобы оно составляло не более 10 символов, а затем «...» Как код с подстрокой в Swift? –
Если у вас есть ограничение на n символов, вам нужно проверить, является ли ваш ввод длиннее. Если это так, то возьмите первые n - 3 символа (в этом случае 7) и добавьте «...» к ним, чтобы иметь 10-символьную строку. –