[personal profile] qse

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

Мне прежде не приходилось пользоваться Android Studio, а коллеги инженеры ещё в придачу сказали, что с винды это дело скорее всего не сработает, надо всё дело собирать с убунты. Ну, зашибись.

Что меня удивило, так это то, что люди кривятся от отвратительного для них виндовса... Алё, гараж! Давайте посмотрим правде в глаза. Во-первых, я довольно быстро понял, что я вполне могу все делать с винды. Все то же самое, просто по-людски. Основная проблема была в том, что один из опенсорсных пакетов дичайшим образом самонастраивался и валил сборку. Его нужно было повернуть в сторону конфигурации через пёрл и там еще пара небольших усилий и все нормально - работаешь с винды как человек.

Возвращаемся с андроиду. Мне нужно чтобы заработала специфическая андроидная железка. С немецкого Амазона принесли под дверь на утро следующего дня после заказа вечером. На ней отладка через кабель не работает - и не ебёт. Я быстро вкурил, что можно отлаживать по сетевому соединению, хоть оно и отваливается время от времени, надо просто уже когда наловчился возвращать его к жизни.

Но самый эпический трабл был в том, что все приложение валилось нахуй не подавая малейшей информации о причинах. SIGSYS... и гуляй Вася! Несколько заходов с разных сторон помогли чуть конкретнее установить, что причина - в seccomp. Один раз каким-то чудом и то не на устройстве, а в эмуляторе удалось увидеть стек вызова и вынести обоснованное предположение о том API, которое ведет к повалу. Дальше дело пошло чуть получше и в итоге стало понятно что к чему. Никакого нормального решения не существует кроме того как откатить один пакет на несколько лет назад, прежде чем они начали пользоваться новшествами несовместимыми со старой версией андроида на этой железке. Где-то отдаленно это мне напомнило историю на винде с технологией DEP, но когда это было, двадцать лет назад познакомились с ней, быстро отмучились, отключить могли кому совсем уж оно мешало, и проехали дальше, и уже все забыли. А тут, блядь, на этой андроидной железке это добро ещё хуй отключишь даже когда ты уже понял, что именно оно тебе мешает.

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

Сборка, запуск, отладка идут как-то сильно медленно, неадекватно для текущего положения дел. IDE местами вызывает вопросы, хотя и не выглядит отвратительно, кое-что можно отметить как удобное. Процесс сборки как-то очень странно обрезает логи - для нашего удобства, конечно же, и приходится прикладывать усилия, чтобы копаться в них. Что удивило - не нашел горячей клавиши для установки точки остановки, может плохо искал, но это ещё не все - когда отладчик таки останавливается на нем, редактор никак это видимым образом не отмечает. Если у тебя две точки рядом, то непонятно на чем он стопнул. Я, конечно, не настоящий андроидоковырятель, но всё это дело вызвало некоторое удивление.

Date: 2024-08-24 06:07 am (UTC)
alexartukov: (Default)
From: [personal profile] alexartukov
Шутку в конце ты добавил, чтобы чайникам типо меня было что комментировать)

Date: 2024-08-24 02:41 pm (UTC)
From: [personal profile] anonim_legion
Примерно в 2012 я писал под андроид. Тогда меня удивил процесс настройки окружения. Дело в том, что под андроид обычно пишут на Яве (писали), хорошим тоном для Явы является создание проекта в формате Maven, после чего процесс разработки становится легко повторяемым на разных машинах.

А с Андроидом не так. Надо скачать кучу их SDK, а потом засунуть в локальный репоз Мавена, и оно как-то очень неочевидно делалось.

Profile

qse

March 2025

S M T W T F S
      1
2345678
910 1112131415
16171819202122
23242526272829
3031     

Style Credit

Expand Cut Tags

No cut tags
Page generated Jan. 8th, 2026 01:08 am
Powered by Dreamwidth Studios