This project has been on hold since 2016.
All the data on this site is still available (and will stay available) but not actual anymore.
You might be interested in checking out Dmitry Moskalchuk's portfolio website to learn about his other projects.

GCC 6 - теперь и для разработки под Android
26.02.2016 12:24

Как известно, скоро выйдет GCC 6. В нем содержится множество улучшений, включая экспериментальную поддержку новых возможностей C++17 (концепты, std::invoke, std::shared_mutex и т.д.) и значительно более "умные" предупреждения, помогающие разработчикам писать безопасный и надежный код. Фактически GCC 6 со всеми включенными предупреждениями делает некоторые статические анализаторы кода неактуальными.

Бессмысленно описывать все новые возможности GCC 6 в этой статье, поэтому я не буду. Те, кому это интересно, могут прочитать об этом на других сайтах, распространяющих информацию о грядущем релизе GCC 6 (к примеру, здесь или здесь). Однако я хотел бы рассказать об использовании GCC 6 для разработки под Android и, в частности, о будущем GCC в составе CrystaX NDK.

Далее

Android Studio с экспериментальным Gradle плагином и CrystaX NDK
14.12.2015 06:20

Ранее мы описали как использовать CrystaX NDK в Android Studio. С того времени Google анонсировал новый (экпериментальный) Gradle плагин с улучшенной поддержкой NDK в Android Studio. Давайте посмотрим, как использовать CrystaX NDK с этим новым плагином.

Будучи последовательными, мы обновим предыдущую статью, добавив в нее новые условия - т.е. это будет все то же простое UI приложение, использующее Boost.Serialization. Использование Boost необязательно для понимания новой схемы работы с экспериментальным Gradle плагином; тем не менее, мы включили пример работы с Boost для большей полноты примера.

Далее

Выпущен CrystaX NDK 10.3.0
14.12.2015 06:18

Мы рады сообщить, что новый выпуск CrystaX NDK 10.3.0 готов к использованию!

Наиболее важные изменения в этом выпуске:

  • Новые GCC и LLVM/clang.
  • Сильно улучшена поддержка Objective-C v2.
  • Добавлена поддержка Python (2.7 и 3.5) для Android.

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

Далее

Выпущен новый CrystaX NDK 10.2.0!
24.06.2015 07:01

Мы рады сообщить, что новый выпуск CrystaX NDK 10.2.0 готов к использованию!

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

Далее

Запущена кампания по сбору средств
24.03.2015 11:12

Меня зовут Дмитрий Москальчук и я автор CrystaX NDK - Native Development Kit для Android.

Я начал этот проект в 2009 году, добавив поддержку C++ в Android NDK от Google (первые версии Android NDK от Google не поддерживали C++) - как языковое ядро, так и стандартную библиотеку C++. Первая версия CrystaX NDK очень быстро стала популярной, т.к. очень многим людям требовалась поддержка C++ чтобы иметь возможность запускать их приложения/библиотеки на Android без переписывания их на Java. Google добавил поддержку C++ такого уровня в свой NDK почти два года спустя. К этому моменту мне стало ясно, что не хватает еще очень многого для нормальной разработки под Android, поэтому я переформулировал цель проекта с "Android NDK с поддержкой C++" на "Улучшенный Android NDK" и продолжил работать над ним.

Я работаю над этим проектом уже пять лет, постоянно добавляя новые возможности и делая нативную разработку под Android более удобной. Два года назад ко мне присоединился Александр Жуков и с тех пор мы работаем над проектом совместно. Все это время мы вели проект на собственные средства, зарабатывая деньги другими способами (выполняя заказную разработку для других коммерческих проектов) и тратили их на CrystaX NDK. В силу вышесказанного, работа над CrystaX NDK велась в свободное время, и поэтому проект не достиг тех высот, каких мог бы. Восемь месяцев назад мы отказались от всех сторонних контрактов и начали работу над CrystaX NDK в режиме full time. За это время мы достигли значительных результатов. Вы можете ознакомиться с ними на страничке NDK.

Мы планируем превратить CrystaX NDK в полноценный всеобъемлющий набор инструментов для разработки под Android, позволяющий разработчикам использовать их любимые языки программирования, фреймворки и библиотеки - иными словами, сделать Android дружелюбным к разработчикам без разделения их на первосортных (Java) и остальных.

Далее

Использование Android Studio для сборки приложений с NDK и Boost
29.01.2015 11:40

В предыдущей статье мы рассмотрели как собирать простые исполняемые файлы под Android с использованием библиотек Boost. Это хороший пример для понимания того, как все работает "изнутри"; однако для практических целей хорошо было бы уметь собирать готовые к использованию приложения, которые можно залить в магазин приложений Google Play, к примеру.

Далее

Boost + Android? CrystaX NDK!
20.01.2015 14:40

У вас есть код, который использует библиотеки Boost C++? Вы хотите максимально простым способом портировать этот код под Android? Или, может быть, вы просто начинаете новый проект под Android и хотите использовать Boost с самого начала? С CrystaX NDK 10.1.0 вы получаете возможность разрабатывать под Android на C++ с использованием Boost прямо "из коробки".

Давайте посмотрим, как это можно сделать.

Далее

Локализация под Android на C/C++? Да, с помощью CrystaX NDK!
20.01.2015 14:40

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

Способы работы с локализованными вводом и выводом описаны в международных стандартах языков программирования ISO C и ISO C++, поэтому обычно достаточно просто следовать стандарту, чтобы должным образом локализовать ваше приложение. К сожалению, этот простой метод не работает на Android для приложений, написанных на C/C++. Библиотека libc на Android (Bionic) не поддерживает локали, поэтому единственный способ использовать локализованный ввод/вывод в коде на C/C++ -- это реализовать локализацию на языке Java и потом использовать ее в коде на C/C++ через JNI. Очевидно, подобный подход вносит существенные накладные расходы во время исполнения программы, но это единственный вариант, если вы используете Google NDK.

Далее

Back
Home
Map
Back
Home
Map

Наши авторы: