Комментарии 14
Для Android статья, наверное, действительно актуальная, но Flutter-приложения на iOS видно сразу без всяких проверок — они ощущаются по-другому, ненативно. Как-то не так работает скролл, как-то не так работают анимации, с большой вероятностью недоступна часть системных фич, присутствующих абсолютно в любой нативной приле.
Мне кажется, “ненативность” происходит из-за того, что Flutter-приложения часто являются чем-то средним между iOS и Android. Это проявляется в виджетах, анимациях, жестах, UX.
Если пытаться реализовать интерфейс максимально похожим на нативный, то преимущества кроссплатформы теряются. В таком случае многие предпочтут использовать KMM.
React Native приложения также часто делают чем-то средним, но выглядят они нативнее, особенно с тех пор когда таки подтянули нативную навигацию в react-navigation.
Думаю дело в том, что даже физику скролла Flutter реализует самостоятельно и все что мы видим - это лишь попытка подобрать ту формулу "инерции", которая является системной для iOS
Когда я впервые пробовал Flutter - скрол отличался просто чудовищно, создавало впечатление что прям что-то тяжелое и медленное скроллю - инерция скроллинга отличалась.
До недавнего времени рендеринг шрифтов также сильно отличался от iOS системного - вроде поправили, но я думаю приложения с последней версией Flutter далеко не все еще пересобрали.
Согласен, физика во Flutter лишь эмулируют нативную.
Однако, рендеринг, шрифты, малое количество "нативных "iOS виджетов, и т.д. часто не является блокерами для использования Flutter в продакшене. Компаниям дешевле написать один код и 2 приложения и решить свою задачу. А то, что там какая-то странная анимация уже никого не волнует.
А почему разбор apk в итоге оказался сложнее, чем использование отладки? Там же в списке всего три действия, в которых вроде ошибиться не так просто.
На мой взгляд, подключить девайс и посмотреть логи будет проще, чем распаковать apk через APKTool или что-то аналогичное, и затем изучать содержимое билда.
Конечно, для разработчика, который хоть что-то знает про мобилки, оба способа являются достаточно простыми.
Зачем так сложно? Достаточно переименовать apk в zip, распаковать и найти libflutter.so
Можно ещё в режиме разработчика включи Profile HWUI Rendering или Show Layout Bounds, сразу будет видно
Какая-то агитка вместо статьи. Не разрабатываю для мобилок и не имею симпатий ни к нативным инструментам, ни к инструментам типа Flutter, но статья кажется пытается скорее рекламировать, чем информировать.
Как определить, что мобильное приложение написано на Flutter