LINUX.ORG.RU
ФорумTalks

Нормальные программеры мобильных приложений пишут свой софт так...

 


0

2

Чтобы он работал в том числе и на подобных устройствах: https://img.mvideo.ru/Pdb/30034538b.jpg

Это подарочные смартфоны из 2014 года. Такие (вместе с Oysters Arctic 350 - по сути тот же смартфон) дарили за покупку крупной техники бесплатно, а так их продвали до 2.000 рублей.

В чем суть: мобилки по 2-3к и сейчас существуют (в основном, на базе чипсетов MT6580) и ими пользуется ощутимый процент людей (судя по всплывающим объявам на юлито). Почему разработчики мобильных приложений забивают МПХ на оптимизацию приложений под самые бюджетные гаджеты? Или лишь бы присрать модный интерфейс на говнофлаттере?

Реально горит от того, что вообще все забивают хрен на бюджетники. Вообще все. Раньше на бюджетках легко работала ВКшечка - сейчас нет, раньше на бюджетках был сбер и ватсапп - сейчас тоже мимо, лаги жуть, раньше на бюджетках были даже игры - и сейчас на них все забили. Зажрались или откуда столько откровенного говнокода?



Последнее исправление: monobogdan1337 (всего исправлений: 3)
Ответ на: комментарий от goingUp

Время разработчиков стоит деньги для компании, оптимизацию под старые телефоны не ставят в план разработки.

Оптимизацию вообще, а не только под старые устройства. Не, ну есть компании, где хотят сделать хорошо, но их не так много.

Zhbert ★★★★★
()

Почему разработчики мобильных приложений забивают МПХ на оптимизацию приложений под самые бюджетные гаджеты?

Потому что у пользователей таких устройств нет денег на интернет.

grem ★★★★★
()

Потому что надо «все вокруг меня пользуются» не статистика. Ищи нормальную статистику и смотри по ней.

Например, https://www.composables.com/tools/distribution-chart

Отсюда следует, что 90% устройств имеют версию Android 8.0 и новее. Сомневаюсь что твой смартфон 2012 года получил такое обновление.

Разработчики ориентируется на 90-99% аудитории в зависимости от своих целей. На 0.5% Android 4.4 будут ориентироваться только самые уникумы.

А ещё учти, что нельзя просто взять и поставить minSdkVersion 1. Некоторые API обьявлявляют deprecated и они перестают адекватно работать на новых версиях Android. Например, AlarmManager. NotificationManager сильно изменился. Появился явный запрос разрешений. И т. д. Обратная совместимость не полная (как минимум из-за борьбы за батарейку и приватность пользователя), а даже та что есть отваливается когда ставишь высокий targetSdkVersion. А ты не можешь его не поставить, потому что Google Play не даст опубликовать приложение.

Если приложение сколько-нибудь интегрируется с системой, поддержка старых телефонов это не «просто не использовать флаттер», а обвешивать код кучей if (причём часто даже на несколько диапазонов версий на одну и ту же фичу). Даже с compat libraries. Без них if будет ещё больше. А ещё это всё надо тестировать.

Также, от версии к версии меняются не только темы оформления (которые, кстати, сидят в compat библиотеке и без неё придётся велосипедить), но и появляются новые системные виджеты и т. п. И если ты хочешь адекватного look'n'feel на новых устройствах, ты должен всем этим пользоваться.

Сделать поддержку старых устройств малой кровью «просто не буду использовать новое» - значит сильно ухудшить приложение для 90% юзеров (у кого новый Android), в некоторых случаях вплоть до невозможности пользоваться (представь себе напоминалку использующую AlarmManager и ничего не напоминающую на новых Android). Сделать чтобы у всех нормально работало - значит по сути написать 3-4 разных приложения (в части взаимодействия с ОС). При этом большая часть усилий будет ради нескольких процентов рынка.

KivApple ★★★★★
()
Последнее исправление: KivApple (всего исправлений: 8)

Потому что это филиал веба, а веб — говно.

BceM_IIpuBeT ★★☆☆☆
()
Ответ на: комментарий от Zhbert

Ты будешь очень удивлен тем, как много людей следует философии «права силы» и «вины жертвы». По их морали правильно всё, за что сложно или нельзя понести наказание. Жертва же виновна в том, что оказалась не там, и вдвойне виновна, если сопротивляется, когда это бесполезно.

Я пришел к выводу, что это не просто глупость, а именно полноценное и законченное мировоззрение, причем со вполне стройной внутренней логикой. Иное дело, что его скорее ожидаешь встретить у серийных убийц, а не у простых обывателей — но тем не менее… Впрочем, после прочтения статей об экспериментах Милгрэма и Стэнфордском тюремном всё встает на места.

По мне, страшное в маньяках-убийцах и прочих не то, какие они монстры, а то, что они — вполне себе люди, от нормы лишь слегка отошедшие. Так что я считаю выражение «будь человеком» парадоксальным — ведь плохое с точки зрения морали поведение более естественно для человека, чем следование ей.

Vsevolod-linuxoid ★★★★★
()
Последнее исправление: Vsevolod-linuxoid (всего исправлений: 1)
Ответ на: комментарий от imul

Не, там просто лючок туалета выглядит так же, как лючок бензобака на машине. Остановился ночевать в дребеденях, утром вышел, лючок открыт, рядом шланг, ведро и заблевано все.

Zhbert ★★★★★
()
Ответ на: комментарий от Vsevolod-linuxoid

Так это «философия» всей геополитики уже тысячилетия. До тебя только дошло?

BceM_IIpuBeT ★★☆☆☆
()

Надо сказать спасибо менеджерам за неправильную трактовку Agile и короткие спринты.

ac130kz ★★
()
Ответ на: комментарий от monobogdan1337

А я даже в 2023 не понимаю, зачем нужно отдельное приложение vk, мордокниги и т.п., если есть браузер, которые, емнип, давно умеют уведомления присылать.

grem ★★★★★
()
Ответ на: комментарий от Zhbert

Для слежки за пользователем, конечно. Сайт — закрыл и всё. А тут можно в фоне сидеть и шпионить.

Vsevolod-linuxoid ★★★★★
()
Ответ на: комментарий от Zhbert

Не знаю, поэтому их и не ставлю. Но почему-то каждый магазин, аптека, заправка, булочная их предлагают поставить.

grem ★★★★★
()
Ответ на: комментарий от Vsevolod-linuxoid

Если тебе интересно, то могу объяснить, что очень даже имеют за пределами лора.

imul ★★★★★
()
Ответ на: комментарий от grem

Ну у меня пара штук стоят ради бонусной программы, но раздражает, да.

Zhbert ★★★★★
()

Оптимизация - это очень дорого, повлечет за собой стоимость приложения/подписок, и все ради того чтобы Вася на своем топчике позапрошлого десятилетия смог что-то там запустить

slyjoeh ★★★
()
Ответ на: комментарий от monobogdan1337

Именно поэтому я лично заявляю, что 256 мегабайт ОЗУ для мобилки отлично хватит на любой контент. И на видосы, и на браузеры, и на вкшечку, и на музыку. И несколько приложений точно сможет работать в фоне одновременно. 512мб ОЗУ - это прям край для флагманов.

Я сейчас запустил 2160p видео и 1080p на десктопе с помощью самого эффективного плеера mpv. Первое заняло в памяти почти 450 метров, второе – 260+. Я думаю ты сам догадаешься куда тебе нужно засунуть свое экспертное мнение.

MoldAndLimeHoney
()

Реально горит от того, что вообще все забивают хрен на бюджетники. Вообще все. Раньше на бюджетках легко работала ВКшечка - сейчас нет, раньше на бюджетках был сбер и ватсапп - сейчас тоже мимо, лаги жуть, раньше на бюджетках были даже игры - и сейчас на них все забили. Зажрались или откуда столько откровенного говнокода?

Это скорее люди обеднели и собирают какие-то китайские рисовые бюджетники за двадцать баксов, когда можно купить iOS/Android флагман за $1000 и три года спокойно его использовать, а потом купить такой же но новый и не париться.

все забивают хрен на бюджетники

Так и правильно делают. Ковыряние в древнем 10-летнем бюджетном хламе если ты не гик-демосценер и тебе это в кайф – не приносит никаких денег. Вообще никаких. Бюджетники не генерируют прибыль, а денег на оптимизацию жрут как не в себя. Следовательно их сразу дропают, это более чем нормальная практика.

Раз в 5 лет смартфон можно обновлять без проблем, даже если человек очень беден.

EXL ★★★★★
()
Последнее исправление: EXL (всего исправлений: 1)
Ответ на: комментарий от Zhbert

Ну чтоб не засмеяли одноклассники. А то че как лох.

Я своих на борьбу отдал. Дешевле и универсальнее - не только за айфон пояснят.

aiqu6Ait ★★★★
()
Ответ на: комментарий от Zhbert

Ну чтоб не засмеяли одноклассники.

Правильно воспитанный детеныш гордо и уверенно носит любой телефон. Еще и при желании засмеет распонтованных одноклассников.

vaddd ★☆
()

каждый день будешь создавать треды с самолюбованием и дрочкой на то, какой ты классный кодер и пиарить гебнявый ФСБук?

annerleen ★★★★☆
()
Ответ на: комментарий от EXL

А чего принципиально нового появилось в дебилках, что они стали жрать раз в 10 больше вычислительной мощности? Да и электрической тоже, если еще сделать поправку на уменьшение тех. процессов.

BceM_IIpuBeT ★★☆☆☆
()
Ответ на: комментарий от KivApple

Я вижу еще одну проблему - в том, что аппетиты приложений неоправданно растут. Разработчики пишут приложения так, словно оно должно быть единственным работающим в системе.

Особенно нелепо это выглядит в случаях приложений с долгой историей разработки, когда при сравнении двух версий с разницей в 5 или 10 лет становится понятно, что основная функция приложения не поменялась совершенно и нисколько не эволюционировала, а потребление памяти и ресурсов процессора выросли на порядок, и это совсем не художественное преувеличение.

Другой вариант - когда приложение с конкретной функцией превращают в комбайн и какое-нибудь приложение для вызова такси вдруг становится приложением, где можно купить обувь, а кнопку «вызвать такси» даже сразу и не найдешь, или когда к банковскому клиенту прикручивают голосовой помощник, и внезапно оказывается, что 95% всего приложения - это тот самый голосовой помощник, а банковский клиент - практически побочная функция.

Leupold_cat ★★★★★
()
Последнее исправление: Leupold_cat (всего исправлений: 1)
Ответ на: комментарий от BceM_IIpuBeT

Речь про потребление? Модемы больше жрать стали из-за большой пропускной способности, матрицы больше стали жрать из-за увеличения диагонали дисплея (и соответственно - светодиодов подсветки) и их разрешения (контроллеры тоже немного, но кушают), у процов вместо 1 ядра стало 8 (путь и big.LITTLE), ну и сами приложения стали жрать дохера.

monobogdan1337
() автор топика
Ответ на: комментарий от Leupold_cat

Сбер почему-то забыл про такую крутую вещь, как возможность юзать библиотеки из других пакетов и слать в них интенты. Что мешало выделить помощник в отдельный пакет и просто предлагать его установить как плагин?

monobogdan1337
() автор топика
Ответ на: комментарий от monobogdan1337

А если это Жигуль, который ты довел до уровня мерседеса?

Оксюморон

utanho ★★★★★
()
Ответ на: комментарий от BceM_IIpuBeT
  • Нейросетевые ASIC’и для распознования голосовых команд и улучшения фотографий.

  • Поддержка съёмки видеороликов 4K @ 60 fps и фотографий в сотни мегапикселей.

  • Графоний в играх уровня современных игровых консолей.

  • Поддержка высокоскоростных 5G-сетей, благодаря которой можно не только смотреть видео 2K @ 60 fps в онлайне без подгрузок, но стримить в таком же качестве.

EXL ★★★★★
()
Ответ на: комментарий от EXL

И как все это должно тормозить софт? Наоборот же, это все аппаратные ускорялки.

BceM_IIpuBeT ★★☆☆☆
()
Ответ на: комментарий от EXL

Графоний в играх уровня современных игровых консолей

Смешно)

BceM_IIpuBeT ★★☆☆☆
()
Ответ на: комментарий от monobogdan1337

Речь про потребление?

Нет, но как следствие и оно сосет.

Модемы больше жрать стали из-за большой пропускной способности

Да, а тех. процессы не менялись по твоему?!

матрицы больше стали жрать из-за увеличения диагонали дисплея

Во-первых, нет. Во-вторых, а зачем их было так увеличивать? Не для того ли, чтобы всунуть мощнее батарею, которая бы тянула говнософт хотя бы день?

контроллеры тоже немного, но кушают

А тех. процесс все тот же...

у процов вместо 1 ядра стало 8

Pentium 4 может и 200 ватт жрать, где же эффективность!?

ну и сами приложения стали жрать дохера

Не дохера, а на десятки порядков больше.

BceM_IIpuBeT ★★☆☆☆
()
Последнее исправление: BceM_IIpuBeT (всего исправлений: 2)
Ответ на: комментарий от Vsevolod-linuxoid

У стэндфордского тюремного куча вопросов к методике проведения)

frunobulax ★★★
()
Ответ на: комментарий от Leupold_cat

Частично это обусловено тем, что у Android достаточно специфический API, плюс иногда частично ломаемый между некоторыми версиями, так что автор сколько-нибудь сложного приложения обмазывается прослойками совместимости и фреймворками лишь бы не реализовывать фичи руками. Прослойки же очень универсальные и содержат в себе не только то что нужно конкретному приложению, поэтому жрут ОЗУ и ЦПУ.

Крч как графические тулкиты для Linux. На Windows можно написать приложение использующее только системные библиотеки и которое будет иметь развитый UI и мало весить и работать от Windows 95 до Windows 11. Для Linux сколько-нибудь сложное приложение нуждается в тяжёлых Qt/Gtk, либо их самописным аналоге (который могут позволить себе написать не только лишь все). Потому что на голом xlib/wayland сложный интерфейс не сделаешь. Только вот на Linux есть пакетный менеджер, а на Android все приложения должны все свои библиотеки носить с собой.

Также есть вопрос кроссплатформенности. Ибо у Android и iOS +- сравнимые доли рынка, так что по-хорошему надо разрабатывать под обе платформы. Но при этом платформы отличаются сильнее, чем Windows от Linux. И тут опять же на помощь приходят всякие фреймворки. Нет денег разработать два полностью разных приложения? Возьми Flutter/React Native. Разумеется, такая толстая прослойка не будет бесплатной.

Короче, если бы на рынке мобильных ОС был один доминатор и если бы у него было вменяемое стабильное API, то, возможно, приложения бы жрали меньше.

Но это только часть проблемы, да. Техническая. Есть ещё эффективные менеджеры «мы должны создать свою экосистему», тут проблема уже не в технологиях, а в головах. Но, к счастью, этим грешат в основном крупные игроки. И на конкретном телефоне «экосистемные» приложения можно пересчитать по пальцам. И да, лучше бы их распиливали на несколько приложений, умеющих общаться друг с другом. Но нет.

KivApple ★★★★★
()
Последнее исправление: KivApple (всего исправлений: 3)
Ответ на: комментарий от KivApple

Короче, если бы на рынке мобильных ОС был один доминатор и если бы у него было вменяемое стабильное API, то, возможно, приложения бы жрали меньше.

Так есть жы. Аппле. Но там те же яйца)

BceM_IIpuBeT ★★☆☆☆
()
Ответ на: комментарий от MagicMirror

Да, согласен, прям сильно оптимистичные выводы сделал) Размер одного фхд кадра в RGB888 - 6 мегабайт, с учетом того, что на декодер кадры поступают сильно пережатые, в другом пиксельформате и с информацией о компенсации движения - пусть будет 3-4мб на кадр. Все равно маловато, минимум ~100 мегабайт нужно будет для предотвращения серьезной буферизации.

monobogdan1337
() автор топика
Последнее исправление: monobogdan1337 (всего исправлений: 3)
Ответ на: комментарий от monobogdan1337

Некорректное сравнение. Многозадачность в иос появилась только в 4й версии. Да и в целом первые айфоны были малофункциональным говном. Ни обои поменять, ни мелодию звонка

cobold ★★★★★
()
Последнее исправление: cobold (всего исправлений: 1)
Ответ на: комментарий от MoldAndLimeHoney

Та я уже признал, что сильно оптимистично посчитал, согласен)

monobogdan1337
() автор топика
Ответ на: комментарий от cobold

Она там всегда была, только ОС распоряжалась сама, когда и какое приложение ей прибить - как и Android до четверки. Если ты про панель задач - ее твиками добавляли, см. multifl0w. Мелодии и обои тоже с джейлом менялись, но это только если мы упоминаем сам джейл. В стоке 2G многозадачность никак не умел.

monobogdan1337
() автор топика
Последнее исправление: monobogdan1337 (всего исправлений: 1)
Ответ на: комментарий от monobogdan1337

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

cobold ★★★★★
()
Закрыто добавление комментариев для недавно зарегистрированных пользователей (со score < 50)