Как стать автором
Обновить
0.8

Разработка под Tizen *

Пишем под открытую ОС Tizen

Сначала показывать
Порог рейтинга
Уровень сложности

Где заканчивается Flutter и начинается платформа?

Уровень сложностиСредний
Время на прочтение11 мин
Количество просмотров3.1K

Сердце фреймворка Flutter (который для разработчиков часто представляется только в виде набора классов на языке Dart) написано на языке С и компилируется в двоичный артефакт, известный как Flutter Engine, подключаемый к приложению и используемый из Dart-классов через механизм нативного связывания (аннотации @pragma('vm:entry-point') для вызовов из Flutter Engine в Dart, @Native и external для обращения к C++ коду во Flutter Engine из Dart).

Но в действительности Flutter Engine не имеет никакого платформо-специфического кода (при этом собран под целевую аппаратную архитектуру) и не знает, как работает платформенный event loop, как создавать потоки, на какой поверхности выполнять отрисовку сцены и не может получать информацию о действиях пользователя (касание экрана, перемещение указателя мыши, нажатие клавиш) и системных событиях. Такое архитектурное решение было сделано для того, чтобы иметь возможность запускать Flutter-приложения потенциально на любом устройстве с экраном (даже светодиодной панелью). В этой статье мы поговорим про Flutter Embedder, его роль в запуске приложения и привязке к системным event loop, а также рассмотрим сборку простого embedder для публикации Flutter приложения как VNC-сервера.

Читать далее
Всего голосов 21: ↑20 и ↓1+21
Комментарии1

Новости

Разработка Tizen-приложения для Samsung Smart Signage Platform(SSSP): гайд для js-разработчиков

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров1.5K

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

Читать далее
Всего голосов 7: ↑7 и ↓0+7
Комментарии2

Если ваш фронтендер перестал бояться IE6, покажите ему SmartTV

Время на прочтение7 мин
Количество просмотров22K

В декабре 2021 года под новогодние праздники в приложении Кинопоиска для SmartTV появился раздел с Яндекс Музыкой. Он позволил пользователям на телевизорах открывать новые для себя треки в Моей волне, включать популярные подборки и слушать собственную коллекцию на телевизорах.

При создании этого раздела я впервые столкнулась с миром SmartTV. Не каждый фронтендер встречает в своей практике подобные задачи, даже несмотря на то, что сейчас разработка под ТВ довольно популярна.

Меня зовут Лена и я фронтенд-разработчик Яндекс Музыки. В этой статье я расскажу про особенности работы SmartTV и разработки под них на примере свежей фичи, которую мы назвали Время клипов. Теперь в приложении вы можете посмотреть клипы любимых артистов и открывать для себя новых исполнителей, которые подходят вам по настроению.

Под катом обсудим ключевые отличия работы фронтенда над вебом и SmartTV, поговорим про оптимизацию и вёрстку и посмотрим на фотографии множества пультов (без пакетиков).

Читать далее
Всего голосов 64: ↑64 и ↓0+64
Комментарии85

Разработка на Angular под SmartTV: история одной фичи

Время на прочтение11 мин
Количество просмотров2.6K

Всем привет. Меня зовут Ярослав Карманников, я разработчик команды SmartTV/Web в онлайн-кинотеатре KION МТС Digital. Это четвертая часть сериала, посвященного фиче Autoplay в нашем кинотеатре. Сегодня обсудим нюансы реализации фичи на платформе SmartTV: я расскажу о том, как мы внедряли автоплей, с какими трудностями столкнулись и как их решали.

Добро пожаловать под кат!

Читать далее
Всего голосов 15: ↑15 и ↓0+15
Комментарии2

Как проверить сетевое подключение на Smart TV (WebOS и Tizen)

Время на прочтение3 мин
Количество просмотров14K

Сегодня я хочу рассказать вам о том, как я пробовал реализовать функционал «Нет подключения» на SmartTV для платформ webOS и Tizen. Это звучит довольно просто, и вы можете спросить меня, что ты можешь рассказать нам нового, но поверьте, я могу :)

Эта статья о том, как обнаружить сетевое подключение.

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

Читать далее
Всего голосов 16: ↑15 и ↓1+17
Комментарии10

Ускоряем запуск приложений с .NET 6, .NET на холодильнике и многое другое

Время на прочтение13 мин
Количество просмотров12K

Данная статья содержит небольшое введение в JIT-компиляцию и .NET Core (отныне .NET 5, .NET 6 и так далее), а также несколько практических примеров ускорения запуска приложений на .NET. Данные советы могут быть полезны как для приложений, запускаемых на больших многоядерных x64 серверах, так и для приложений, запускаемых на ARM чипах с малым числом ядер. Например, подобные оптимизации используются в операционной системе Tizen, об этом далее.

Читать далее
Всего голосов 18: ↑18 и ↓0+18
Комментарии2

Разработка Tizen-приложений для Samsung Smart TV: полный гайд для Javascript-разработчиков

Время на прочтение12 мин
Количество просмотров42K

Эта статья рассказывает про удивительные приключения JS-разработчиков в мире ОС Tizen. В ней будет и пошаговая настройка рабочего окружения, и подключение «умного» телевизора Samsung вместе с пультом, и, конечно, сам процесс разработки и публикации приложения для Tizen Store — с примерами и подводными камнями. 

Так что если вы разделяете наше мнение о том, что Javascript — лучший язык программирования, потому что он работает практически везде – от домашнего Smart TV до кораблей SpaceX, то добро пожаловать под кат.

Читать далее
Всего голосов 4: ↑4 и ↓0+4
Комментарии5

Что в Smart TV тебе моем? Или что можно запихнуть в телевизор?

Время на прочтение7 мин
Количество просмотров54K

Вместо предисловия


Добрый день, коллеги! Меня зовут Алексей и я занимаюсь телевизорами, а именно, разработкой Smart TV приложений («давайте похлопаем Алексею»).

Но что такое Smart TV? Какое оно, сферическое Smart TV приложение в вакууме?

Не буду томить вас ожиданием: в основном такого рода приложения предназначены для показа видео-контента. В любых вариациях. Записанное, живое вещание, телепередачи, фильмы, мультфильмы, рекламные ролики, и прочая, и прочая… Тысячи их!

Но разве Smart TV только для этого?


Читать дальше →
Всего голосов 18: ↑16 и ↓2+14
Комментарии40

Проблемы и нюансы при разработке под SmartTV с использованием React.js

Время на прочтение4 мин
Количество просмотров11K
Хочу поделиться опытом разработки приложения с просмотром видео контента для SmartTV (Tizen и WebOS) и с какими проблемами мы столкнулись.

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

Так как это браузер, то ничего нам не мешало использовать React.js для разработки, что повлияло на некоторые проблемы с производительностью.

Я не буду рассказывать о том, как именно нужно делать с примерами кода, я расскажу о нюансах и решениях, которые были приняты.
Читать дальше →
Всего голосов 16: ↑15 и ↓1+14
Комментарии19

Пишем первое приложение для Samsung Smart Watch и OS Tizen

Время на прочтение7 мин
Количество просмотров29K
Привет Хабр! В недавней публикации описывались первые впечатления от смарт-часов Samsung Galaxy Watch, работающих под ОС Tizen. Следующим шагом стало интересно выяснить, как разрабатывать под эту систему собственные приложения, как на эмуляторе, так и на реальных часах.


Процесс в целом, оказался несложный (особенно когда программируешь не один год), хотя в нем и есть свои тонкости. Кому интересно продолжение, подробности под катом.

Осторожно траффик, много скриншотов.
Читать дальше →
Всего голосов 19: ↑18 и ↓1+17
Комментарии2

Почему важно проверять, что вернула функция malloc

Время на прочтение13 мин
Количество просмотров36K
malloc

Предлагаем вашему вниманию цикл статей, посвященных рекомендациям по написанию качественного кода на примере ошибок, найденных в проекте Chromium. Это шестая часть, которая будет посвящена функции malloc. Вернее, тому, почему следует обязательно проверять указатель, возвращаемый этой функцией. Скорее всего, вы не догадываетесь, какой подвох связан с malloc, потому рекомендуем познакомиться с этой статьей.

Примечание. В статье под функцией malloc часто будет подразумеваться, что речь идёт не только именно об этой функции, но и о calloc, realloc, _aligned_malloc, _recalloc, strdup и так далее. Не хочется загромождать текст статьи, постоянно повторяя названия всех этих функций. Общее у них то, что они могут вернуть нулевой указатель.
Читать дальше →
Всего голосов 81: ↑74 и ↓7+67
Комментарии262

Школа разработчиков интерфейсов Яндекса снова открывает набор

Время на прочтение7 мин
Количество просмотров34K


До 31 января можно подать заявку в Школу разработчиков интерфейсов Яндекса. Обучение бесплатное, но входные требования довольно нетривиальные. Для приёма надо сдать тестовое задание. Чтобы его сделать, надо знать HTML, CSS и JavaScript и иметь хотя бы минимальный опыт разработки интерфейсов.

Кто такой разработчик интерфейсов? Это frontend developer, то есть тот, кто разрабатывает на HTML, CSS, JavaScript и вообще всём том, что отвечает за реализацию взаимодействия с пользователем. Обычно интерфейсы на этих технологиях мы делаем для десктопных и мобильных платформ. Но вообще проекты могут быть очень разные, например для телевизоров, как у одной из команд прошлого года.

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

Под катом чуть больше деталей про обучение и пример проекта студентов прошлого года.
Читать дальше →
Всего голосов 47: ↑46 и ↓1+45
Комментарии17

О PVS-Studio в преддверии открытой конференции ИСП РАН им. В.П. Иванникова

Время на прочтение11 мин
Количество просмотров5.1K
Научное сообщество практически незнакомо со статическим анализатором кода PVS-Studio. 30 ноября и 1 декабря состоится мероприятие «Технологии анализа, моделирования и трансформации программ» в рамках открытой конференции ИСП РАН им. В.П. Иванникова. Я уверен, что это одно из самых тематичных для нас мероприятий, где новая аудитория могла бы узнать о существовании и возможностях анализатора PVS-Studio. На мой взгляд, наиболее подходящим для этого мог стать доклад, касающийся поиска ошибок в операционной системе Tizen. К сожалению, доклад получил отрицательные отзывы рецензентов и не будет включен в программу конференции. Тем не менее, пользуясь случаем, подведу итоги наших исследований, касающихся кода Tizen.

Андрей Карпов и Евгений Рыжков
Читать дальше →
Всего голосов 35: ↑26 и ↓9+17
Комментарии12

Ближайшие события

Tizen: подводим итоги

Время на прочтение15 мин
Количество просмотров11K

PVS-Studio, Tizen, ИтогиНаша команда написала три заметки, связанные с анализом кода операционной системы Tizen. Операционная система содержит много кода и поэтому является благодатной почвой для написания различных статей. Думаю, что к Tizen мы ещё вернёмся в будущем, но сейчас нас ждут другие интересные проекты. Поэтому я подведу некоторые итоги проделанной работы и отвечу на ряд вопросов, возникших после опубликованных ранее статей.


Читать дальше →
Всего голосов 40: ↑35 и ↓5+30
Комментарии5

Продолжаем изучать Tizen: C# компоненты оказались высокого качества

Время на прочтение9 мин
Количество просмотров8.1K

Picture 1

Сегодня я вновь возвращаюсь к проекту Tizen. В своей недавней заметке «Эксперимент по поиску ошибок в коде C# компонентов Tizen» в нашем блоге я провел поверхностный анализ и пришел к выводу, что имеет смысл проверить весь код C# компонентов этого проекта на наличие ошибок при помощи анализатора PVS-Studio и написать про это статью. Не откладывая в долгий ящик, я проделал эту работу и хочу поделиться с вами её результатами. Сразу скажу, что на C# коде анализатор PVS-Studio показал себя слабо. Однако обо всём по порядку: давайте посмотрим, что смог найти анализатор, а затем займёмся статистикой и подведём итоги.
Читать дальше →
Всего голосов 24: ↑21 и ↓3+18
Комментарии4

Поговорим о микрооптимизациях на примере кода Tizen

Время на прочтение24 мин
Количество просмотров8.9K

Микрооптимизации в коде

Как правило, при обсуждении диагностических возможностей PVS-Studio за кадром остаются рекомендации, выдаваемые анализатором по поводу микрооптимизаций Си и Cи++ кода. Конечно, микрооптимизации не так важны, как диагностики, выявляющие ошибки, но про них тоже интересно поговорить.
Читать дальше →
Всего голосов 31: ↑26 и ↓5+21
Комментарии15

27000 ошибок в операционной системе Tizen

Время на прочтение67 мин
Количество просмотров33K
PVS-Studio and Tizen

Эта статья продемонстрирует, что при разработке крупных проектов статический анализ кода является не просто полезным, а совершенно необходимым элементом процесса разработки. Я начинаю цикл статей, посвященных возможности использования статического анализатора кода PVS-Studio для повышения качества и надежности операционной системы Tizen. Для начала я проверил небольшую часть операционной системы (3.3%) и выписал около 900 предупреждений, указывающих на настоящие ошибки. Если экстраполировать результаты, то получается, что наша команда способна выявить и устранить в Tizen около 27000 ошибок. По итогам проведённого исследования я подготовил презентацию, которая предназначалась для демонстрации представителям Samsung и была посвящена возможному сотрудничеству. Встреча перенесена на неопределённый срок, поэтому я решил не тратить время и трансформировать материал презентации в статью. Запасайтесь вкусняшками и напитками, нас ждёт длинный программистский триллер.
Читать дальше →
Всего голосов 85: ↑70 и ↓15+55
Комментарии108

Запуск Doom на часах Samsung Gear S2

Время на прочтение1 мин
Количество просмотров11K


Попалась мне в середине прошлой неделе статья о том, что игра Doom портирована на кучу разных платформ. В списке были и калькуляторы и осциллографы. Были там и наручные часы Apple Watch и Android Wear. Но почему-то не было часов Samsung Gear S2 и S3, которые работают на Tizen. Странно, часы мощные. А у меня как раз есть опыт разработки для них. Отлично, решил я, вызов принят.
Всего голосов 26: ↑26 и ↓0+26
Комментарии5

Создание нативного watchface для Gear S3/S2

Время на прочтение6 мин
Количество просмотров13K

Что такое tizen и с чем его едят лучше всего наверное сможет рассказать гугл или любой другой бинг. А мы рассмотрим как сделать native приложение написав как можно меньше нативного кода.


Читать дальше →
Всего голосов 13: ↑13 и ↓0+13
Комментарии0

Победители конкурса Tizen App Challenge

Время на прочтение1 мин
Количество просмотров11K
Добрый вечер, Хабр!

Индейка еще не успела остыть, а мы уже определили победителей Tizen App Challenge! Борьба за призы была очень ожесточенной. Большинство участников проявили себя отлично, но удача склонила свои весы к следующим разработчикам:


Читать дальше →
Всего голосов 15: ↑14 и ↓1+13
Комментарии22