Buffer icon Проекты
30 заметок с тегом

ios

Pocket

Pocket logo

Pocket logo

Пользуюсь Pocket уже несколько лет. Это просто, это удобно, это стало необходимо. Потому что в текущем потоке информации, успеть прочитать всё нужное и интересное — невозможно. Pocket, как приложение для закладок и чтения — самое то.

Одно время, я что-то интересное скидывал в Избранное в Телеграмм. Но потом всё стал скидывать в Pocket. Если на андроиде или айос, можно поделиться с помощью стандартного механизма и ссылка окажется в Pocket. Если в браузере — тоже. Для мака есть официальное приложение. На любом девайсе можно читать в офлайн режиме. Крутота.

Свой CI/CD для Unity

Mopsicus CI/CD bash script

Mopsicus CI/CD bash script

Написал небольшую статью на Хабр про скрипт который получился в результате автоматизации сборки Unity проектов под Android и iOS. Раньше большинство операций делалось вручную, теперь всё сведено к минимуму.

Один запуск скрипта и:

  • скачиваются последние изменения с GIT
  • запускаются тесты
  • собирается APK для Android, в develop или release
  • собирается для iOS Xcode проект, в develop или release
  • компилируется
  • архивируется и экспортируется в IPA
  • генерируется манифест для него
  • генерируются HTML страницы для установки
  • всё это загружается на сервер с помощью sshpass
  • все логи записываются в отдельную папку
  • отсылается уведомление в Телеграмм, что всё готово

Вот такая интеграция и доставка :)

Исходники на Github

Уведомления в Unity

Юнитеки всё никак не могут сделать нормальный плагин для управления уведомлениями :( Вот и сейчас, вроде что-то новое и вроде даже удобное, но нет возможности принимать push сообщения с сервера. Почему? Это же фича которая используется почти во всех онлайн играх.

Так и придётся пока использовать нативные самописные плагины, печаль...

Исходники примера

 Нет комментариев    100   10 мес   android   ios   plugin   unity   с#   уроки

Xcode и место на диске

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

Мало того, что Xcode с симуляторами сам занимает неплохо так, он во время билдов, при создании архивов и прочих операций, сохраняет свои кеши, временные и не очень файлы, много файлов... Таких файлов со временем может накопиться на несколько десятков гигабайт. Но что хорошо, почти все из них, можно спокойно удалить и освободить место на диске. Находится всё тут:

~/Library/Developer/Xcode/

Список что удалять: https://stackoverflow.com/a/40327522/7500489

Удалил у себя около 100 Гб о_О

 Нет комментариев    128   11 мес   ios   mac

UnityMobileInput больше не нужен

Обновлено 16.05.2019
Свершилось. В новой версии Unity 2019.1 допилили поле ввода (InputField) в TextMeshPro.

Раньше эта галочка не работала и поле ввода всё равно появлялось.

Теперь дополнительное поле ввода не появляется на iOS и Android! Мой UnityMobileInput не особо-то и нужен, всё можно сделать «штатными» компонентами и оно будет работать как надо, вроде :) Там же есть и поддержка эмоджи.

UPD

Рано радовался, определять высоту экранной клавиатуры юнитеки так и не научились... Всё равно придётся использовать костыль, хоть и меньшего размера :)

SslStream не работает в Unity с .NET 4.x

Обновлено 29.07.2019

Случайно обнаружил баг с SSL: на Android и iOS (на других не проверял) некорректно срабатывает конструктор SslStream. Появляется ошибка:

Unable to find libc

Актуально для всех последних версий Unity, где есть .NET 4.x. Если переключиться на .NET 3.5 (который deprecated) — всё работает, как должно.

Надеюсь скоро починят :(

UPD

В 2019.3 будет пофиксено! Ура. Также выпустят фикс и для 2019.2, которая вот-вот должна пойти в релиз.


В тему про SSL: этот генератор SSL самоподписных сертификатов, я уже упоминал в заметке про SSL в Unity, недавно автор по моей просьбе немного обновил его — теперь можно генерить сертификаты с дополнительными параметрами, например, subjectAltName и добавлять туда IP адреса :)

Обновление UnityMobileInput

Теперь высота клавиатуры считается правильно везде и экран не сдвигается вверх при появлении клавиатуры. Это на Android такая история была.

Зарефакторил много старого кода, убрал не нужное, добавил кастомный инспектор, все настройки поля теперь берутся из Unity UI компонента InputField, клавиатура не пропадает если переключаться между полями и другие мелочи.

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

Было

Стало

Вроде работает :)
UnityMobileInput

Обновил Infinite Scroll

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

Теперь все ячейки могут быть любой высоты! Работает также быстро и с помощью одного скрипта.

Ссылка на Github

Unity Mobile Input

Выложил на Github плагин нативного ввода для мобильных устройств. Это небольшая надстройка над стандартным Unity InputField UI. Работает на iOS и Android.

Зачем он нужен:

  1. Нативное поле ввода и клавиатура
  2. Отсутствует раздражающее дополнительное поле над клавиатурой в Android
  3. Для iOS можно добавить кнопку «Готово»
  4. Настройка кнопки Return для клавиатуры: стандартная, далее, готово, поиск
  5. Для работы нужно просто повестить скрипт MobileInput на родной InputField UI

До этого, было временное решение, которое не обладало необходимыми опциями, да и ошибки были. Собственно, на то оно и временное :) Но в Unity до сих пор нет таких возможностей для ввода, поэтому пришлось сделать такой плагин.

В моей версии исправлены ошибки и отрефакторен почти весь код от старого и неподдерживаемого плагина UnityNativeEdit.

Исходники на Github

Как добавить фреймворк в секцию Embedded в XCode

Этой возможности не было до Unity 2017. Надо было вручную или сторонними средствами после билда проекта добавлять нужные фреймворки. ORLY?
Теперь же, с помощью AddCopyFilesBuildPhase это сделать можно. Последний параметр говорит об этом:

The «subfolder spec». The following usages are known: «10» for embedding frameworks; «13» for embedding app extension content; «16» for embedding watch content.

Готовый пример

А ещё можно подключить UnityEditor.iOS.Xcode.Extensions и использовать AddFileToEmbedFrameworks.

Но, они до сих пор так и сделали возможность добавлять нужные локализации в XCode проект... :(

 Нет комментариев    47   2018   ios   iphone   unity
Ранее Ctrl + ↓