Я искренне извиняюсь, если об этом уже спрашивали, однако я не смог найти подходящий ответ, который выглядел бы похожим на мою текущую ситуацию. Я разрабатываю приложение с MoSync с использованием MAUI из-за одинакового внешнего вида на всех платформах. У меня возникают проблемы с пониманием MAHandles, а также с тем, как отправлять информацию SQLite на веб-адрес. Затем команды SQLite будут преобразованы в команды MySQL с использованием сценария RedBean PHP, а затем отправлены в постоянную базу данных.
Мои самые большие проблемы — 2 пункта:
1.Объявление соединений, которые можно использовать через MAHandles (я уже получил команды SQLite, работающие без использования MAHandles, однако объявление адреса базы данных в resources.lstx все еще уклоняется от меня)
2. Декларирование MAHandles в целом.
Кроме того, я понимаю, что строки гораздо более эффективны, однако я игнорирую этот факт из-за возраста MAUI, и его возможности выглядят гораздо более плавными при использовании массивов символов.
Я могу предоставить дополнительные разъяснения, если это необходимо, чтобы я мог помочь ускорить этот процесс.
Заранее спасибо, и, надеюсь, это поможет другим попробовать свои силы в безупречном продукте MoSync.
У меня нет никакого опыта работы с SQLite, но я предполагаю, что обработка команд SQLite — это работа вашего серверного приложения. Чтобы было ясно, вы отправляете команды SQLite из своего мобильного приложения в серверное приложение через URL, правильно? Если вам нужна помощь в этом, вы должны искать «CGI». CGI — это, по сути, способ выполнения серверного приложения с аргументами через запрос http: //.
Это означает, что в вашем приложении должен быть менеджер, который создает URL с правильными командами SQLite на основе событий ввода, отправляемых в ваше мобильное приложение (кнопки, текстовые поля и т. Д.).
Что касается Mosync, MAHandles может использоваться для многих вещей, включая загрузку.
Взгляните на класс MAUtil :: DownloadListener на страницах doxygen от Mosync.
Вы увидите, что есть полные описания 5 чисто виртуальных функций, которые вам нужно будет реализовать.
Большая часть вашего кода, вероятно, будет в готовой загрузке (Downloader * dl, данные MAHandle). Именно здесь данные MAHandle будут указывать на начало загруженного вами сегмента данных.
Я читаю свои данные в символ *, так как я загружаю текст.
Вот фрагмент:
void MainScreen::finishedDownloading( Downloader* dl, MAHandle data )
{
char* mData = new char[ maGetDataSize( data ) + 1 ];
memset( mData, 0, maGetDataSize( data ) + 1 );
maReadData( data, mData, 0, maGetDataSize( data ) );
// Destroy the store
maDestroyObject( data );
// Do something with mData;}
Вот один пример установки шрифта текста NativeUI :: Widget с помощью MAHandle:
MAHandle font = maFontLoadDefault( FONT_TYPE_SERIF |
FONT_TYPE_MONOSPACE |
FONT_STYLE_NORMAL, 0, Dimensions::DIM_LIST_ELEM_FONT_SIZE );
ListViewItem* items = new ListViewItem();
items -> setFont( font );