Обновление приложения «Первый канал» для Smart TV

С прошлого года наша команда, помимо работы над онлайн-кинотеатром «Первого канала», занимается в том числе разработкой и сопровождением официального приложения «Первый канал» для Smart TV. На данный момент мы обновили приложение для наиболее популярных производителей «умных» телевизоров в России – Samsung и LG. Позже планируется охват и других производителей (в частности, Philips и Sony).

До того, как нам поручили данную работу, существующая версия приложения для Smart TV выглядела так:

1tv_smarttv_old

21 мая 2015 года мы выпустили версию, которая под «капотом» все еще ничем не отличалась от предыдущей, однако внешне смотрелась уже лучше. Раздел «Фильмы» был переименован в «Кино», и теперь он стал включать в себя в том числе фильмы и сериалы сервиса kino.1tv.ru.

Читать далее «Обновление приложения «Первый канал» для Smart TV»

[Xcode] Missing iOS Distribution signing identity

При попытке на днях отправить очередную сборку приложения в iTunes Connect, выдавалась ошибка «Missing iOS Distribution signing identity for…».

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

Как оказалось, проблема возникала из-за наличия сертификата WWDR в Keychain Access, срок которого завершился 14 февреаля 2016 года. Решением является установка нового сертификата, и удаление старого.

[Git] Создание удаленной ветки при пуше

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

git push <remote-name> <local-branch-name>:<remote-branch-name>

Пример:

git push origin dev:new-feature

Установка htop 2 на Debian

10 февраля в свет вышел крупный релиз популярной утилиты мониторинга процессов для *nix – htop 2.0.

Чтобы установить вторую версию утилиты на Debian, необходимо скачать и собрать исходники:

apt-get remove --purge htop
apt-get aptitude update
apt-get install build-essential libncursesw5-dev
cd ~
wget -c http://hisham.hm/htop/releases/2.0.0/htop-2.0.0.tar.gz
tar -xzvf htop-2.0.0.tar.gz
cd htop-2.0.0
./configure
make
make install

Теперь скопируем скомпилированный бинарник в директорию /bin, чтобы можно было запускать утилиту лишь одной командой в терминале:

cp htop-2.0.0/htop /usr/bin/

[Chrome] Изменение политики отображения mixed content

Начиная с версии Google Chrome 46 изменилась концепция информирования о защищенном соединении (HTTPS) в адресной строке браузера.

Теперь, для страниц со смешанным содержанием (mixed content), часть которого использует HTTPS, а другая часть HTTP, не будет показываться желтый предупреждающий значок. Вместого этого будет отображаться значок «лист бумаги», тот, который используется для индикации работы по протоколу HTTP.

На данный момент многие сайты не переведены полностью на HTTPS в связи с тем, что по тем или иным причинам все еще приходится использовать смешанное содеражение (к примеру, отображать изображения со сторонних ресурсов, которые не поддерживают HTTPS). И процесс перехода на полное использование HTTPS может затянутся. По этой причине Google решила отнести сайты, использующие частичное защищенное соединение к обычным ресурсам, которые его не используют, потому что от частичной защищенности все равно никакого толку.

Chrome Изменение политики mixed content

[macOS] Ручной вызов Microsoft AutoUpdate

Утилита Microsoft AutoUpdate используется для проверки и установки обновлений пакета Office. Так, при запуске одного из приложений Office по умолчанию запускается в том числе AutoUpdate для проверки обновлений. Запуск данной утилиты происходит согласно расписанию проверки обновлений, заданных в настройках.

Чтобы вручную запустить Microsoft AutoUpdate, достаточно при запущенном приложении Office в меню Help выбрать пункт Check for Updates.

Даный способ работает в том числе и для Windows.

Ручной вызов Microsoft AutoUpdate

[Windows] Удаление ассоциации файла с программой

Если по ошибке для какого-то файла была задана ассоциация с программой, и теперь необходимо удалить эту ассоциацию (не переназначить, а именно удалить), то можно поступить следующим образом:

В реестре находим ветку HKEY_CURRENT_USER\Software\Classes\, а в ней удаляем разделы .расширение_файла и расширение_файла_auto_file, после чего перезапускаем процесс explorer.exe.

Пример: был файл с расширением *.ipk. Решили открыть его через WinRAR и файл автоматически проассоциировался в этим архиватором. Поняв, что WinRAR такие файлы не открывает, хотим сбросить ассоциацию. В реестре удаляем разделы .ipk и .ipk_auto_file.

Про Tizen и важность создаваемого сертификата

При сборке приложений, которые создаются в Tizen SDK, происходит автоматическое подписание их созданным сертификатом разработчика.

Данный сертификат создается в самом начале, и про него в дальнейшем многие забывают. Однако он в данном случае играют очень важную роль – если вы загрузили в магазин приложений первую сборку, подписанную вашим сертификатом, то в будущем вы не сможете загружать билды, подписанные уже другим сертификатом (что, несомненно, логично).

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

Выводы:

  1. Создаем сертификат осмысленно, запоминаем (а лучше куда-то записать) пароль от него.
  2. Храним сертификат в надежном месте, ибо если потеряется, то пиши пропало.

[Xcode] Could not find Developer Disk Image

Решил сегодня собрать проект для iOS. Открыл Xcode, обновленный до 7.1.1, начинаю собирать для подключенного iPad (с iOS 9.2 Beta 4), и тут вылезает ошибка: «Could not find Developer Disk Image».

Иду в директорию, где располагаются образы:

/Applications/Xcode.app/Contents/Developer/Platforms/ iPhoneOS.platform/DeviceSupport

Вижу, что папки 9.2 действительно и нет 🙁 Сейчас сижу, скачиваю Xcode 7.2 Beta с поддержкой iOS 9.2 Beta…

Список приложений, используемых в работе

Джентельменский набор, используемый в моей повседневной работе, выглядит следующим образом:

  1. Notepad++ (для Windows) / Sublime Text (для Mac OS) – просмотр и редактирование файлов
  2. Skype / Slack – для коммуникаций
  3. Chrome / Firefox – просмотр веб-сайтов, отладка кода и пр.
  4. WinSCP / ForkLift – файловый менеджер, работа с удаленными серверами
  5. Терминал (для Windows) / iTerm (для Mac OS) – работа с командной строкой
  6. git – работа с версионностью
  7. VirtualBox / VMware Workstation – работа с виртуальными машинами
  8. Robomongo / MongoVUE – работа с базами MongoDB
  9. XAMPP – локальный веб-сервер
  10. MySQL Workbench 6.1 CE – работа с базами MySQL
  11. pgAdmin – работа с базами PostgreSQL
  12. IntelliJ IDEA – работа с кодом проектов
  13. Genymotion – эмулятор Android
  14. adb – утилита из Android SDK
  15. Fiddler (для Windows) / Charles / BurpSuite – анализаторы сетевого трафика
  16. Process Explorer / Process Monitor (для Windows) – утилит мониторинга процессов в системе
  17. Balsamiq mockup / Draw.io / Xmind – создание макетов, схем и интеллект-карт
  18. FastStone Image Viewer – просмотрщик изображений и их простейшее редактирование
  19. FastStone Capture – снятие скриншотов, цветовая пипетка, экранная линейка и пр.
  20. Adobe Photoshop – графический редактор
  21. Dropbox – хранение данных в «облаке»
  22. TeamViewer – работа с удаленными рабочими столами
  23. Evernote – онлайн-блокнот
  24. 1Password – менеджер паролей