SWay онбординг и всякое другое ТЗ
1. Сделать онбординг.
4 экрана, на трех текст+картинка+кнопка "дальше" и на четвертом пейволы.
При первом открытии приложения юзер попадает на экран "настройки", после заполнения настроек и нажатии на кнопку "сохранить" его перебрасывает на главный экран.
Мне нужно, что бы после нажатия на кнопку "сохранить" открывался онбординг и уже после его прохождения юзера перебрасывало на главный экран. (в целом можно сделать, что бы онбординг открывался как окно "поверх" экранов (в том числе поверх нижнего меню конечно), тогда не надо будет менять логику. Просто при нажатии кнопки "сохранить" юзера также будет перекидывать на главный экран и одновременно открываться онбординг, тогда после его прохождения юзер сразу окажется на главном экране.)
Онбординг должен открываться только при ПЕРВОМ после установки нажатии юзером кнопки "сохранить". Последующие изменения настроек не должны вызывать онбординг.
Для пользователей из России четвертый экран онбординга с пейволами должен пропускаться (монетизации то нет), то есть после нажатия на третьем экране кнопки "дальше" юзер из России должен попадать сразу на главный экран.
Также на 4 экран онбординга с пейволами должно подтягиваться значение экономии за 12 месяцев из калькулятора в настройках.
Цены (зеленые цифры на кнопках пейволов) должны подтягиваться из Гугл плей в зависимости от страны пользователя. Без символов валют.
На всякий случай, если это не очевидно - пейволы с покупкой и подпиской на Премиум функционал уже существуют в приложении, их надо просто дублировать в онбординг, что бы после оплаты на онбординге у юзера активировались те же процессы (расширение функционала и всякие другие, там есть по мелочи), что и после обычной оплаты.
Крестик наверху слева и кнопка "Потом" внизу экрана закрывают онбодинг. (покупка или подписка тоже).
Приложение работает на 8 языках, то есть надо все тексты онбордига надо добавить в .xml файлы всех языков. Прям на русском, главное что бы тексты были на своих местах, переведу я сам.
2. Политика конфиденциальности
Добавить гиперссылку на политику конфиденциальности внизу экрана "настройки" (и во все .xml файлы с языками)
вот эту https://teletype.in/@shaman_che/74yXUUOb433
3. Запрос разрешения SCHEDULE_EXACT_ALARM
Нужно сделать запрос этого разрешения у пользователей андроид 14(с уровня API 33) и выше. Нужно сделать так, что бы если юзер отклоняет разрешение, оно появлялось снова пока он не одобрит. Без него приложение нормально работать не будет.
Судя по тексту приложение должно проверять, что разрешение предоставлено.
https://developer.android.com/training/scheduling/alarms#using-schedule-exact-permission
4. Обновить уровень API (targetsdk)до 34
Собственно все в заголовке. Циферки в манифесте поменять не проблема, но надо смотреть требования, а то когда я сам пытался обновится до 33 все пошло не так и полезли баги.
5. Добавить еще 1 язык(к 8 имеющимся)
Переведу я сам, собственно стринг.xml файл готов, надо его только поставить нормально.
Почему-то когда я ставлю у меня при билдинге вылезают ошибки по грандлу(и еще какая-то абракадабра) причем не в этом файле, а когда без него делаю билд актуальной версии, то все норм.
6. Контроль фоновой активности
В старых версиях андроид до 13 приложение запрашивает разрешение на фоновую активность, без этого разрешения приложение не работает, если нажать отклонить, то запрос появляется снова, там только выбор да или нет, вот такой:
Сегодня потестировал на андроид 14 (наверное на андроид 13 так же) и там другая картина, уже нужно делать выбор:
Проблема в том, что приложения разрабатывалось, когда андроид 13-14 не существовало и такого выбора пунктов не было.
Поэтому сейчас, если нажать как отмечено галочкой по умолчанию "умный режим", то приложение не запустится, а вернется на этот экран контроля фоновой активности.
Нужно сделать что бы галочка была по умолчанию на пункте "нет ограничений" . (с "умным режимом" приложение работает плохо, система постоянно его режет, а приложение это таймер реального времени и должно постоянно работать в фоне)
Вторая проблема в том, что даже если юзер догадается, что надо нажать на пункт "нет ограничений", то его все равно вернет на этот экран! И только если нажать на "нет ограничений" второй раз приложение запустится. Это странный баг, и почти непроходимый квест для юзера.
Похоже я на этом много пользователей теряю, потому что вижу негативные отзывы от пользователей которые не смогли запустить приложение.
У меня самого андроид 10, так что возможно эта проблема есть не только на андроид 14, но и на 11, 12, 13, я не знаю. На эмуляторе это не выскакивало.