C++Builder
  Начало   Форум   Помощь Войти Регистрация  
Страниц: [1]   Вниз
  Печать  
Автор Тема: Первый опыт знакомства с FMX  (Прочитано 1962 раз)
SilverFish
Участник


Сказали спасибо: +14/-6
Offline

Сообщений: 786


Первый опыт знакомства с FMX
« : 30 Апрель 2014, 23:07:26 »

Мой первый опыт и мое первое приложения для ОС Андроид на С++ Builder XE6 показал, что FMX можно использовать для внутренних корпоративных целей.
Приложение создается на привычном С++ языке. Приятно удивило, что поддерживается STL библиотека.
Самым трудным было поиск примеров, как реализовать код, который конкретно зависит от Андроид платформы.
Вот пример как запустить видео на Андроид устройстве:
Код
#include 
#include
#include
#include
 
void PlayVideo(const String AFileName)
{
String EXE = System::Ioutils::TPath::GetExtension(AFileName);
_di_JIntent Intent = TJIntent::JavaClass->init(TJIntent::JavaClass->ACTION_VIEW);
_di_Jnet_Uri Data = StrToJURI(AFileName);
Intent->setDataAndType(Data, StringToJString(L"video/" + EXE));
SharedActivity()->startActivity(Intent);
 
}
Вот пример нажатия на текстовую метку и переход по ссылке:
Код
void __fastcall TForm1::Label1Click(TObject *Sender)
{
  _di_JIntent Intent;
 Intent = TJIntent::JavaClass->init(TJIntent::JavaClass->ACTION_VIEW);
 Intent->setDataAndType(StrToJURI(L" https://cbuilder.ru"), StringToJString(L"text/html"));
 SharedActivity()->startActivity(Intent);
 
}

Весь остальной код программы написан на привычном С++ Builder языке.

Из замеченных багов:
Конкретно на моем планшете PIPO M7 Pro Андроид 4.4.2 после поворота планшета на 90 градусов и затем поворота обратно, главная форма переставала отвечать на нажатие кнопок. Для моего планшета пришлось добавить код, который исправил эту ситуацию:
Код
void __fastcall TForm1::FormResize(TObject *Sender)
{
 Application->ProcessMessages();
 Sleep(5);
}
 
В остальном все нормально, приложение работает и выполняет свою задачу - запуск файлов по расписанию из INI файла.
Размер приложения 6.5 Мг.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  




....

Powered by SMF 1.1.21 | SMF © 2025, Simple Machines
Страница сгенерирована за 0.072 секунд. Запросов: 21.