Избранное Все заметки GitHub icon Мой Github Обо мне
13 заметок с тегом

android

Обновил Infinite Scroll

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

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

Ссылка на Github

7 сентября   android   ios   unity   интерфейс   проекты   разработка   с#

Unity Mobile Input

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

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

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

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

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

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

2018   android   git   ios   plugin   unity   интерфейс   проекты

Unity android plugin + onActivityResult

Автор приводит пример, как он решил вопрос с обработкой onActivityResult в андроидах плагинах для Unity. Создаёт отдельный активити, там перехватывает и завершает. Норм решение.

Ещё можно сделать специальный плагин который будет наследоваться от UnityPlayerActivity и прописать его в манифесте, чтобы он запускался первым. Там тоже можно переопределить onActivityResult.

Ну и ещё как вариант, запускать во фрагменте (fragment) и обрабатывать там.

2018   android   plugin   unity   ссылки

Отправка письма из Unity

Ничего особенного конечно, ничем не отличается от самого обычного плагина для iOS или Android, но кто-то у меня спрашивал про это.
Весь код умещается на одном экране, дольше демку делал :)

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

Вообще, надо бы собрать все плагины, мелочуху и выложить на гитхаб: синхронизация с iCloud, in-app покупки (не доверяю я Unity IAP :), буфер обмена, получение изображения с камеры и галереи, сохранение в галерею, push уведомления, запись в keychain, авторизация через Google Sign-in, встроенный браузер и прочее.
Если что-то заинтересовало — пишите в комменты или mail@mopsicus.ru.

2017   android   git   ios   plugin   unity

10+ ссылок для самостоятельного продвижения игры

ASO: как увеличить установки игры на 53% в день за счет оптимизации названия и описания в Google Play

https://blog.appfollow.ru/aso-как-увеличить-установки-игры-на-53-в-день-за-счет-оптимизации-названия-и-описания-в-google-9fc3d38e18c

Пошаговый алгоритм работы с ASO

https://habrahabr.ru/company/miip/blog/313804/

Итак, вы создали игру. Что дальше?

https://habrahabr.ru/post/324702/

Сколько заработает ваша мобильная игра?

https://habrahabr.ru/company/miip/blog/322552/

Продвижение вашей инди-игры: самые важные нюансы, о которых никто не знает

https://habrahabr.ru/post/257379/

100 и 1 инструмент для маркетинга и монетизации

http://apptractor.ru/marketing

Как бесплатно исследовать целевую аудиторию вашей новой игры

http://apptractor.ru/measure/user-analytics/kak-besplatno-issledovat-tselevuyu-auditoriyu-vashey-novoy-igryi.html

Как провести маркетинговый анализ? Руководство от Ильи Еремеева из Game Insight

http://app2top.ru/marketing/kak-provesti-marketingovy-j-analiz-rukovodstvo-ot-il-i-eremeeva-iz-game-insight-95389.html

Продвижение мобильных приложений: выученные уроки

https://habrahabr.ru/company/enterra/blog/295774/

Подкасты Галенкина

http://galyonkin.com

Подборка англоязычных ресурсов, нужных для продвижения игры

http://app2top.ru/marketing/poleznoe-podborka-ssy-lok-po-marketingu-dlya-mobil-ny-h-razrabotchikov-82746.html

Система плагинов для iOS и Android

Простая система плагинов для мобилок. Контроллер инициализирует все плагины и обрабатывает приходящие сообщения. Обмен данными в формате JSON.

Вообще, печаль конечно, что Unity не реализует даже самые простые варианты работы с мобильными платформами, тот же браузер или камера. Может когда-нибудь...

Ссылка на Github

2017   android   ios   plugin   unity   разработка   с#

Emoji в Unity

Обновлено 1.03.2017
TextMeshPro теперь входит в состав Unity и стал бесплатным!

Как добавить поддержку эмоджи в Unity? К сожалению, решения из коробки нет. Но есть самый лучший ассет для работы с текстом Text Mesh Pro. Да, он не дешевый, но он этого стоит. Может когда-нибудь Unity его купит, и это будет стандартным решением, как они сделали с Anima2D.

В версии TMP, которая скоро должна пойти в релиз, разработчик добавил поддержку Emoji. Точнее, можно делать свои атласы, юникод эмоджи будет автоматически заменяться на картинку. Чтобы были доступны все эмоджи, нужен большой атлас. Я использовал EmojiOne. Также понадобится одна отличная программа — TexturePacker и расширение для Unity TexturePacker Importer.

  1. Загружаем все эмоджи в программу и экспортируем в формат Unity — Texture2D sprite sheet.
  2. После этого меняем Data format на JSON (Array) и делаем экспорт еще раз.
  3. Теперь полученные три файла: Emoji.png, Emoji.json и Emoji.tpsheet загружаем в Unity.

Осталось с помощью TMP Sprite Importer сгенерировать атлас для Text Mesh Pro. В результате, на iOS и Android можно использовать эмоджи.

2017   android   ios   unity   интерфейс

Добавление Google Play Services в Unity проект

Прошло время ручного копирования JAR файлов и ресурсов в папку с проектом. Все плагины для Android теперь надо компилить в AAR модули. Кроме того, если в плагине реализуются какие-то функции для работы с Google сервисами, например, пуш-уведомления, сохранение в облако, или авторизация, то нужно подключать к модулю зависимости.

Раньше (до 5 версии Unity, по-моему), в папку с проектом добавляли JAR файл со всеми Google сервисами, размером 5-6 мб, что конечно «не очень» оптимально. Теперь все сервисы разделены на отдельные AAR модули, которые хранятся в папке с SDK.

Google сделал специальное расширение для Unity, которое само подгружает нужные модули и зависимости в проект. Достаточно указать, что вы собираетесь использовать. Это очень удобно.

Google.VersionHandler.InvokeInstanceMethod(
      svcSupport, "DependOn",
      new object[] {
      "com.google.android.gms",
      "play-services-games",
      "10.0.1" },
      namedArgs: new Dictionary<string, object>() {
          {"packageIds", new string[] { "extra-google-m2repository" } }
      });

https://github.com/googlesamples/unity-jar-resolver

2017   android   git   unity   расширение   ссылки

Как убрать InputBox в Android над клавиатурой

Обновлено 04.10.2018
Моя версия «unity mobile input» для iOS и Android.

Если вы не знаете, о чем речь, то эта заметка не для вас :)

Другие же, наверняка гуглили «unity hide mobile input». И не находили стандартного решения — потому что его нет. Все написано в документации:

Note: Android: only TouchScreenKeyboard.visible input field is supported, hence this value is always false.

Конечно, пользовательский ввод в играх нужно сводить к нулю, но бывают исключения. Ради такого исключения, чтобы избавиться от панели над клавиатурой, я сделал этот плагин.

Идея в том, что на экран добавляется нативное невидимое поле ввода откуда потом забирается текст. Все просто. Да, это не изящное решение, а грязный хак, но он работает — верхнего поля ввода нет и появляется стандартная клавиатура Android или iOS. Если к этому добавить ассет Text Mesh Pro, то будут еще и эмоджи. Да, еще не видно курсора. Я думаю над этим... :)

Если есть более красивое решение — киньте ссылку :)

Ссылка на Github

2016   android   ios   plugin   unity   интерфейс   разработка

Unity share плагин для iOS и Android

Каждый разработчик пытается автоматизировать процесс. В результате, создаются собственные движки, врапперы, надстройки, «велосипеды» и т. д... Так и получилось, нужно было сделать более-менее универсальный способ шаринга в Unity проекте для андроидов и айфонов, в результате написал эти два плагина. Теперь запросы типа: «как расшарить из Unity», «unity share plugin», «как отправить вконтакте из unity» должны вести сюда :)

Использовать очень просто. Есть небольшие заморочки с настройкой проекта под iOS, но это делается один раз и автоматически, с помощью обработки проекта после билда. Можно добавлять, изменять и использовать как угодно, все исходники и пример на Github.

В данный момент можно шарить в:

  • ВКонтакте
  • Facebook
  • Twitter
  • Одноклассники
  • WhatsApp
  • Viber
  • Telegram

Интерфейс в Unity выглядит так:

// vk, fb, ok, tw, wa, vb, tg
using UnityEngine;
using System.Collections;
using System.Runtime.InteropServices;

public class Sharing : MonoBehaviour {

	#if UNITY_IOS
		[DllImport ("__Internal")]
		private static extern void shareVia (string app, string message, string url, string param);
	#endif

	// Поделиться 
	public static void ShareVia (string app, string message, string param = "") {
		#if UNITY_ANDROID
			message = string.Format ("{0} {1}", message, "http://my.url.com"); // добавление ссылки
			using (var plugin = new AndroidJavaClass("com.mycompany.sharing.Plugin")) {
				plugin.CallStatic("shareVia", app, message);
			}
		#elif UNITY_IOS
			shareVia (app, message, "http://my.url.com", param);
		#endif
	}
		
	// Не удалось расшарить
	void OnShareError (string result) {
		switch (result) {
			case "NotInstall":
				// приложение не установлено
				break;
			case "NotAvailable":
				// шаринг не доступен
				break;
			case "AccessDenied":
				// нет доступа
				break;
			default:
				// не удалось расшарить текст
				break;
		}
	}
}

Например, чтобы расшарить в Facebook, достаточно вызвать:

Sharing.ShareVia ("fb", "Hi from Unity");

Для работы некоторых API, нужны ID приложений. Чтобы их получить, необходимо создать приложения для этих соц. сетей, как это сделать обычно написано в специальном разделе для разработчиков на сайте. Например, как для ВКонтакте.

Внутренности каждого плагина тут расписывать не буду, исходники все доступны, если будут вопросы пишите — почта внизу страницы.

Исходник на Github

2016   android   ios   plugin   unity
Ранее Ctrl + ↓