Эдакий Proof-of-Concept. Того, что можно сделать что-то уже хоть немного полезное уже на текущей Qt 5.1.1 для Android своими руками.
Написал приложение на QML/C++/Java. Функции - фильтрация входящих СМС. Приложение выбирает СМС от указанного в настройках номера и по указанному кодовому слову собирает из содержимого СМС список покупок и их количество.
Изначально программа пилилась для себя, мне просто подумалось, что мой опыт может быть кому-то полезен.
Итак. Составные части программы:
1) Ресивер IncomingSMSReceiver и сервис SMSService - писались на Java, т.к. в текущем релизе ещё нет никакой поддержки Intent'ов и ресиверов.
2) Интерфейс - QML файлы (список, настройки, ручной ввод)
3) Логика - C++ - связанный через JNI с сервисами и через QML-биндинги с интерфейсом код парсера сообщений и враппера настроек Андроида.
Впечатления: К моему счастью на тот момент уже имелась базовая поддержка Android Clipboard и были исправлены (к 5.1.1) большинство ошибок развертывания на устройствах. В Qt Creator 2.8 даже добавили симпатичный графический редактор манифестов.
К сожалению, многие основополагающие для андроида и для взаимодействия с остальной сервисной архитектурой вещи не были реализованы. Например, пришлось писать JNI враппер для получения адекватного определения локали (некоторые обещают в 5.2, в том числа локаль).
Также к сожалению, жрёт оно хоть и полтора МБ на .apk, но библиотеки Ministro тянут около 10 МБ библиотек в сжатом виде (и вангую, около 30 в распакованном).
Код
Скриншоты:1,2 (Lorem ipsum),3,4
(пусть вас не пугает английский язык в интерфейсе - с переводом к последним коммитам я разобрался)
Буду рад если есть предложения по улучшению/доделке, чтобы не стыдно было опубликовать в Google Play. Если для кого-то оно тоже будет полезным, могу выдать и готовый .apk.
P.S. inb4 ненужно; неосилятор; tldr