[SberPortal] Приложение крашит СберПортал при старте
Closed this issue · 7 comments
Где нашелся баг:
в СберПортале пользователя @subnetsRU
Описание проблемы:
приложение «Умный список покупок» крашит портал при старте.
Проблема воспроизводится у других пользователей?
не знаю.
Дополнительная информация:
В тестировании работает нормально. В мобильных клиентах (обоих) работает нормально.
Приложение написано с использованием Smartapp API. Вот JSON, который приложение отдаёт на старте:
{
"uuid": {
"userChannel": "B2C",
"sub": "lZEKYx3m+PiTcQM92TgBSpFs9FFDRTS+T5DkGApeoFqV3umJMlu9jP57CjcuQPJxu8EP3Mh1ackSYT+UCsjswIPNv3Ks+8t21AZixlVDwvSJ6sDBisINQ+YAAnsH7rxkySlnFTKb08AgIPC4XkvbnWJ+f3Q/ZA/e8l8hpSQ+I4k=",
"userId": "d982636c-cd54-4ad9-88fb-46dbd66691ef"
},
"sessionId": "9e6a8d6a-584e-3fcb-b2d1-97ba3b1a1c40",
"payload": {
"asr_hints": {
"enable_letters ": false,
"words": null,
"eou": 5,
"nospeechtimeout": 7
},
"pronounceText": "Привет! Я могу быстро сохранить для тебя список покупок, который ты надиктуешь. Просто расскажи мне в свободной форме, что хочешь купить.",
"intent": null,
"finished": false,
"items": [
{
"bubble": {
"text": "Привет! Я могу быстро сохранить для тебя список покупок, который ты надиктуешь. Просто расскажи мне в свободной форме, что хочешь купить.",
"markdown": true
}
},
{
"card": {
"items": [
{
"top_text": {
"text": "Помощь",
"text_color": "secondary",
"max_lines": 1,
"typeface": "caption",
"margins": null
},
"bottom_text": {
"margins": null,
"text": "Что ты умеешь?",
"max_lines": 0,
"typeface": "body3",
"text_color": "default"
},
"actions": [
{
"type": "text",
"should_send_to_backend": true,
"text": "Что ты умеешь?"
}
],
"type": "greeting_grid_item",
"paddings": {
"left": "6x",
"right": "6x",
"bottom": "6x",
"top": "6x"
}
},
{
"top_text": {
"text_color": "secondary",
"typeface": "caption",
"margins": null,
"text": "Пример",
"max_lines": 1
},
"actions": [
{
"text": "Литр молока, хлеб, зелёный лук",
"should_send_to_backend": true,
"type": "text"
}
],
"type": "greeting_grid_item",
"paddings": {
"right": "6x",
"left": "6x",
"top": "6x",
"bottom": "6x"
},
"bottom_text": {
"typeface": "body3",
"text_color": "default",
"max_lines": 0,
"text": "Литр молока, хлеб, зелёный лук",
"margins": null
}
}
],
"item_width": "small",
"type": "grid_card",
"columns": 2
}
}
],
"emotion": null,
"projectName": null,
"device": {
"platformVersion": "9",
"features": {
"appTypes": [
"APK",
"WEB_APP",
"DIALOG"
]
},
"additionalInfo": {},
"surface": "SBERBOX",
"capabilities": {
"screen": {
"available": true
},
"mic": {
"available": true
},
"speak": {
"available": true
}
},
"surfaceVersion": "1.69.35",
"platformType": "android"
},
"auto_listening": true
},
"messageName": "ANSWER_TO_USER",
"messageId": 1615022826368833000
}
Проблема стабильно воспроизводится.
Запускал апп 4-ре раза и все 4-ре портал выпадал в загрузчик.
При этом если выбрать "try again", то портал загружается, появляется рабочий стол и далее опять уходит в ребут и снова экран загрузчика.
Если выбрать "factory reset", то портал загружается, но общаться с ассистентом невозможно. Система слушает, лавашар помигивает, но после того как я замолкаю, просто снова показывает "Скажите: Салют!" и всё.
Проблему работы устройства решает только полный сброс устройства, но если запустить апп, то ....
Сбербокс тоже имеет проблемы с этим апом, но он хотя бы не крашится. На сбербоксе card при запуске не показывается, как и в некоторых местах внутри апа так же. Вероятно это как-то связано.
Исправление будет в версии 1.70.
Сейчас можно явно задать max_lines в карточках, например, так:
`{
"uuid": {
"userChannel": "B2C",
"sub": "lZEKYx3m+PiTcQM92TgBSpFs9FFDRTS+T5DkGApeoFqV3umJMlu9jP57CjcuQPJxu8EP3Mh1ackSYT+UCsjswIPNv3Ks+8t21AZixlVDwvSJ6sDBisINQ+YAAnsH7rxkySlnFTKb08AgIPC4XkvbnWJ+f3Q/ZA/e8l8hpSQ+I4k=",
"userId": "d982636c-cd54-4ad9-88fb-46dbd66691ef"
},
"sessionId": "9e6a8d6a-584e-3fcb-b2d1-97ba3b1a1c40",
"payload": {
"asr_hints": {
"enable_letters ": false,
"words": null,
"eou": 5,
"nospeechtimeout": 7
},
"pronounceText": "Привет! Я могу быстро сохранить для тебя список покупок, который ты надиктуешь. Просто расскажи мне в свободной форме, что хочешь купить.",
"intent": null,
"finished": false,
"items": [
{
"bubble": {
"text": "Привет! Я могу быстро сохранить для тебя список покупок, который ты надиктуешь. Просто расскажи мне в свободной форме, что хочешь купить.",
"markdown": true
}
},
{
"card": {
"items": [
{
"top_text": {
"text": "Помощь",
"text_color": "secondary",
"max_lines": 1,
"typeface": "caption",
"margins": null
},
"bottom_text": {
"margins": null,
"text": "Что ты умеешь?",
"max_lines": 2,
"typeface": "body3",
"text_color": "default"
},
"actions": [
{
"type": "text",
"should_send_to_backend": true,
"text": "Что ты умеешь?"
}
],
"type": "greeting_grid_item",
"paddings": {
"left": "6x",
"right": "6x",
"bottom": "6x",
"top": "6x"
}
},
{
"top_text": {
"text_color": "secondary",
"typeface": "caption",
"margins": null,
"text": "Пример",
"max_lines": 1
},
"actions": [
{
"text": "Литр молока, хлеб, зелёный лук",
"should_send_to_backend": true,
"type": "text"
}
],
"type": "greeting_grid_item",
"paddings": {
"right": "6x",
"left": "6x",
"top": "6x",
"bottom": "6x"
},
"bottom_text": {
"typeface": "body3",
"text_color": "default",
"max_lines": 3,
"text": "Литр молока, хлеб, зелёный лук",
"margins": null
}
}
],
"item_width": "small",
"type": "grid_card",
"columns": 2
}
}
],
"emotion": null,
"projectName": null,
"device": {
"platformVersion": "9",
"features": {
"appTypes": [
"APK",
"WEB_APP",
"DIALOG"
]
},
"additionalInfo": {},
"surface": "SBERBOX",
"capabilities": {
"screen": {
"available": true
},
"mic": {
"available": true
},
"speak": {
"available": true
}
},
"surfaceVersion": "1.69.35",
"platformType": "android"
},
"auto_listening": true
},
"messageName": "ANSWER_TO_USER",
"messageId": 1615022826368833000
}`
@Genenko-Svetlana а если я хочу не ограничивать max_lines
(потому что не знаю сколько получится с учётом ширины карточек), я могу например везде передать max_lines = 99
? это не сломает вёрстку?
Не сломает )
@DenisNP всё получилось? Вопрос решён?
@Genenko-Svetlana да, max_lines = 99
не крашится теперь. Но приложение не разворачивается само при запуске на Портале. Хотя полагаю это другая ошибка.
@DenisNP тогда по этой новой ошибке можно завести новую задачу (с подробностями, скринами, видео).
Данный тикет закрываем.