Dozent
Пользователи-
Постов
115 -
Зарегистрирован
-
Посещение
-
Победитель дней
2
Весь контент Dozent
-
Да мне не компоненты нужны. Я вот раньше мог в датасете хранить данные полученые из базы через FireDac или ADO не важно. ХОчу положить отпарсеный результат в какуюто структуру типо датасета... Подойдёт ли сам датасет или же под FMX более удобная структура
-
Добрый день! Прошу помощи. Работая с VCL для набора данных использую TDataSet, какой аналог есть в FMX. Поясню подробнее: У меня есть сервер на PHP обращаясь к которому я получаю ответ в JSON {"field_names":["ID","VNAME","VPASSWORD","RROLE","VDESCRIPTION","VNAMEE","USERROLE"],"data":[[1,"\u0418\u0432\u0430\u043d\u043e\u0432 \u0418.\u0418.","123",1,"\u041f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u0442\u0435\u043b\u044c \u0443\u0447\u0435\u0431\u043d\u043e\u0433\u043e \u0437\u0430\u0432\u0435\u0434\u0435\u043d\u0438\u044f.","\u0418\u0432\u0430\u043d\u043e\u0432 \u0418.\u0418.","\u041f\u0440\u0435\u043f\u043e\u0434\u0430\u0432\u0430\u0442\u0435\u043b\u044c"]]} Это только по первому пользователю. Их как понимаете мб больше! Хочу результат ответа PHP скрипта засунуть в структуру! В VCL эту роль хорошо выполняет TDataSet, какой аналог в FMX?
-
Прошу прощения) Что значит воспользуйтесь гуглом? В гугле искать код который определит имя или искать сразу имя пакета галереи? ДА и как вы узнали что у вас имено так называется?
-
Ну это понятно) Как получить имя Пакета-Галереи?)
-
Я плохо раскрыл вопрос? Или ни кто ни чего подсказать не может?
-
Добрый день! Разрабатываю некоторое подобие плеера, в котором воспроизводится как картинка так и видео. Запускаю видео в нужном мене порядке через MX плеер. ЗАпускается, потом доходит до запуска картинки тоже запускаю, но потом всё ломается) ПОтому что галерея через которую воспроизводилась картинка висит на заднем плане и больше не показывается. Т.е. получается что всё нормально работает до первого показа картинки а потом ппц! Подскажите плз как убить работающую галерею с картинкой?!
-
[Android] Узнать продолжительность медиа файла?
Dozent опубликовал вопрос в Работа с медиа файлами (аудио, видео)
Подскажите как правильно вытащить из атрибутов видео файла его продолжительность. Заранее спасибо... -
Как определить продолжительность видео файла через Актив Менеджер или как-нить по другому? Update: Тут нашёл: https://sites.google.com/site/mxvpen/api пробую вот так procedure VideoDuration; begin // Intent := TJIntent.JavaClass.init(StringToJString('com.mxtech.videoplayer.ad')); // Intent.setPackage(StringToJString('com.mxtech.intent.result.VIEW')); Intent.setPackage(StringToJString('com.mxtech.videoplayer.ad.ActivityScreen')); iDuration := -1; // iDuration := integer(Intent.putExtra(StringToJString('duration'), 0)); Intent.putExtra(StringToJString('duration'), iDuration); // Button2Click(Self); Label2.Text := IntToStr(iDuration); // extras.getString("paramName"); end; и пока чото ни чо не получается) Мб кто может что подсказать?
-
Здравствуйте! Прошу помочь с небольшим затруднением. Есть: Список воспроизведения файлов, видео файлы запускаются на андройд устройстве, через MX Плеер. Логика воспроизведения файлов... (не подряд, например 1, 3, 4, 3, 1) Я вижу тут два варианта, как-то узнавать продолжительность текущего видео файла и по истечении этого времени запускать следующий в соответствие с алгоритмом, но тут я вижу несколько затыков: Возможно ли определить продолжительность видео файла? Не уверен что Таймер в делфи ровно отсчитает время до следующего запуска, а если неверно, то несколько секунд видео может быть потеряно, а этого допускать никак нельзя! Либо если это кончено возможно отслеживать закрытие МХ плеера, что будет свидетельствовать о завершении видео, но тут придётся в милисекундах спамить таймером на проверку рабочего процесса плеера, что тоже не айс и вообще можно ли это? Либо как-то передать МХ плееру плейлист) Но как?) Возможно ли это? Прошу выскажите свои мнения...
-
Андрей, не это я не вам Абсолютно, а девушке у которой всё работает) А Вам вообще отдельное спасибо за ваш блог!!! Много там нужного и полезно, а с проблемой я справился!!! Я по своей невнимательности забыл что вертикальная палка это операция или и почему-то влупил AND Всё работает, простите меня за не внимательность.... procedure TForm1.Play(const sFileName: string); var PackageName: Jstring; ActiveManager: JActivityManager; sFile, exe: string; Intent: JIntent; Data: Jnet_Uri; begin try sFile := sFileName; // MX player: https://sites.google.com/site/mxvpen/api PackageName := StringToJString('com.mxtech.videoplayer.ad'); ActiveManager := GetActivityManager(); ActiveManager.killBackgroundProcesses(PackageName); // exe := System.IOUtils.TPath.GetExtension(sFile); Intent := TJIntent.JavaClass.init(TJIntent.JavaClass.ACTION_VIEW); Data := StrToJURI(sFile); Intent.setDataAndType(Data, StringToJString(PWideChar('video/') + exe)); Intent.setPackage(PackageName); { Intent.putExtra(StringToJString('end_by'), StringToJString('user')); https://github.com/NineWorlds/serenity-android/issues/134 http://stackoverflow.com/questions/22408413/how-to-stop-android-mx-player-on-back-pressed } Intent.addFlags(TJIntent.JavaClass.FLAG_ACTIVITY_CLEAR_TOP or TJIntent.JavaClass.FLAG_ACTIVITY_NEW_TASK or TJIntent.JavaClass.FLAG_ACTIVITY_NO_HISTORY); SharedActivity().startActivity(Intent); finally end; end;
-
У вас есть решение такой же проблемы как и у меня, но почему то вы не хотите поделится
-
разрешение стоит, я тут на форуме нашёл одну из ваших тем, где вы добавляете в ActivityManager код какото китайца, мб в этом проблема? Попробую сегодня, ещё раз попрошу, если вас не затруднит соберите тестовый проект запустите видео и убейте его гденить на половине по таймеру...
-
Я внимательно читаю ваши сообщения и перевёл приведёный вами код на делфи, отличия в нём ни какого только синтаксис другой и уменя не закрывается предидущий воспроизводимый ролик, значит что то не так, что пока понять не могу, поэтмоу прошу Вас провести такой тест. Разве вам не интересно?
-
Я не силён в C++ Buildere, но на мой взгляд чото вы делаете не так) void Form2Execute(TEdit *Edit) { Form2 = new TForm2(Application); Form2->ShowModal(); Edit->Text = Form2->Edit1->Text; delete Form2; } Зачем? Разве нельзя написать в первой форме Form2->Show или ShowModal ? Да и потом зачем тут delete Form2? void __fastcall TForm1::Edit1Click(TObject *Sender) { Form2Execute(Edit1); // Этот код не вызывается при щелчке на Edit1!!! } //--------------------------------------------------------------------------- void __fastcall TForm1::Edit1Enter(TObject *Sender) { Form2Execute(Edit1); } Вызов одинаковый, трасирутей, поставте брек поинты в этих процедурах, каков буде трезультат?
-
Вы уверены что он закрывается? Можно вас попросить собрать тестовый проект. Запустить видео какоенить больше минуты, и чтобы по таймеру после запуска видео секунд через 20 сработало сработал ActiveManager.killBackgroundProcesses(PackageName); и ни чего больше. Закроется ли видео? У меня не закрываеться, не отрабатывает эта строчка. Буду очень благодарен за тест...
-
я проект даже смотреть не буду, вы прежде чем такие панические сообщения писать потрасируйте своё приложение. Из вашего сообщения и так ясно в чём ошибка После закрытия вторйо формы в эдите опять срабатыает onEnter потому как он опять получает фокус. Да и советую уйти от реализации приложения в кучу форм делайте всё на одной форме... Вызывайте лайаут или ещё какойнить компонент...
-
Большая проблема в том что ActiveManager.killBackgroundProcesses(PackageName); не убивает процес!!! Как обойти? Мб есть у кого мысли?
-
Я заметил немного неожиданно поведение. Запускаю 3 видео с интервалом 10 секунд, соответственно видео не успевает закончится, начинает играться следующее. Прикол в том что по окончанию проигрывания 3 начинает проигрываться 2 а затем 1 видео и только потом закрывается плеер. Можете проверить у вас такая же ситуация? Спасибо...
-
за описание лагоритма спасибо, а как с форматами файлов? у вас все видео файлы одного типа?
-
ну хоть и косвено но это относится к воспроизведению видео. Т.е. вы знаете в какое время нужно запустить файл? Или же вы запоминаете длительность текущего ролика относительно настроект в ini файле? И по истечении длительности текущего видео запускаете новое?
-
в вашей задачи один большой видео файл? или несколько небольших? Если несколько небольших откуда вы узнаёте что нужно запустить следующий файл?
-
Пожалуйста. Экранная клавиатура osk.exe Сенсорная клавиатура tabtip.exe