Поиск сообщества
Показаны результаты для тегов 'android'.
Найдено: 263 результата
-
Добрый день. На форме разместил TWebBrowser (Android). Не реагирует на нажатие системной кнопки Назад. Подскажите, пожалуйста, как поймать и обработать нажатие системных кнопок в браузере.
-
[Android/Win] Клиент для fire-monkey.ru [разработка]
Равиль Зарипов (ZuBy) опубликовал вопрос в Прочие вопросы
Здравствуйте! Сегодня начал писать клиента для нашего форума, надеюсь Ярослав не будет против. Проект open-source и любой сможет дополнить проект, затем выложить его в эту тему. Для тех кому это будет интересно, некоторые правила Использовать только родные компоненты Комментировать код Переименовывать переменные и компоненты Сделал я пока немного парсинг последних сообщений парсинг последних тем авторизация через почту (т.к. я ей пользуюсь) работает на android и windows Проект -
Delphi XE8, Android. Не могу перехватить исключение при попытке активировать TTetheringManager, при отладке появляется EIdSocketError "Socket Error #101 Network is unreachable". Если игнорировать или запускать приложение отдельно - глухой висяк. Код простой: procedure TForm1.Button1Click(Sender: TObject); begin try TM.Enabled:=True; except on E : EIdSocketError do ShowMessage(E.Message) ; end; if TM.Enabled then TAP.Enabled:=True; end; Исключение не перехватывается. Возникает судя по всему уже в отдельном потоке и приводит к неработоспособности приложения при попытке запустить с выключенным wifi или интернетом. Конечно можно обвесить каждое телодвижение внешними проверками на наличие связи, но подозреваю есть путь проще. Буду благодарен за помощь
- 6 ответов
-
- Delphi XE8
- TTetheringManager
-
(и ещё 1 )
C тегом:
-
Здравствуйте. Помогите пожалуйста с одним вопросом. Есть приложение где форма с компонентом MapView вызывается через show. Так вот, если закрыть эту вызванную форму приложение падает. При этом, если на OnShow формы с компонентом выставлять MapView.Visible:= True, а на OnClose MapView.Visible:= False то всё работает нормально. Но, так как это не указано в документации, возникает вопрос, как правильно с этим бороться?
-
На виртуальной машине установил XE8 параллельно с XE7. Создал тестовое приложение с ошибкой. Запустил по F9 на телефоне. Отладчик не запускается, ошибку не отлавливает. На Win и iOS работает. Скажите мне, что у Вас работает отладка на андроиде и это не баг XE8, чтоб я вздохнул с облегчением.
-
Доброго времени суток. У меня есть переменная типа Pointer, как мне получить TJavaArray<SmallInt> из неё и наоборот, получить Pointer из TJavaArray<SmallInt>? Заранее спасибо.
-
Как получить Intent, по которому приложение стало активным, после того, как до этого было свернутым? Как известно это метод onNewIntent(), который FMX не поддерживает. Приложение запускается в режиме android:launchMode="singleTask". Пожалуйста, не предлагайте решить задачу через ключи файла манифеста android:launchMode="singleTop" или android:launchMode="standard", которые устанавливают новый intent корневым. Там отдельные вопросы вне текущей темы.
-
Добрый день. Есть необходимость создать из приложения под Андроид точку доступа на телефоне. После этого получить список IP-адресов подключенных устройств. Если кто-то знает каким образом можно это реализовать, пожалуйста помогите.
-
- Точка доступа
- hotpoint
-
(и ещё 2 )
C тегом:
-
[Android] Обработка приложением неявного намерения (Intent)
Belov.V. опубликовал вопрос в Намерения (Intent)
Приложение зарегистрировано для обработки файла по типу через файл манифеста (неявное намерение). <intent-filter> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <data android:mimeType="text/xml" /> </intent-filter> В списке выбора появляется. Как корректно в приложении получить содержание Intent (имя файла, путь)? Пробовал реализовать через подписку на получение сообщения на изменение статуса приложения: TMessageManager.DefaultManager.SubscribeToMessage(TApplicationEventMessage, DoApplicationEventChanged); При этом событие вызвавшее активацию определить можно, но вот как добраться до Intent не пойму: procedure TForm1.DoApplicationEventChanged(const Sender: TObject; const Message: TMessage); var Intent : JIntent; app_data : TApplicationEventData; begin if not(Message is TApplicationEventMessage) then exit; app_data := TApplicationEventMessage(Message).Value; case app_data.Event of FinishedLaunching, BecameActive : .... end; end; Что-то застрял я на этом. Как вообще добраться до открывшего приложение Intent? Если реализовывать через IFMXApplicationEventService вопрос в итоге такой же. Если есть описание реализации аналогичного функционала для iOS, буду благодарен.- 10 ответов
-
[Android] Как отключить программную кнопку Меню?
Евгений Корепов опубликовал вопрос в Приложение и формы
На HTC One M7 нет аппаратной кнопки Меню, вызов меню делается долгим нажатием на кнопку Home. Раньше в настройках телефона можно было выбрать показывать программную кнопку или нет. После обновления аппарата на Lollipop, эта настройка не работает, круглая кнопка с тремя точками болтается по экрану. Причем кнопка видна только в приложениях написанных на Delphi (перепробовал два десятка известных мне). Как кнопку можно отключить? Заранее благодарю за советы. Тупик какой то :-( Скачал стороннее приложение, сравнил манифесты (думал в нем собака порылась), ничего не нашел. Вот скриншот с этой кнопкой -
RAD Studio Mobile Tutorials - Free eBook Get all the information you need to know on developing mobile apps for Android and iOS with RAD Studio, Delphi and C++Builder XE7 in this free 300+ page ebook. Download the free RAD Studio Mobile Development Tutorials ebook Topics include: Setting up the tools and SDKs Creating your first mobile app Best practices for using components User interface design Connecting with data Push notifications And much more.
- 4 ответа
-
- IOS Android
- Android
-
(и ещё 1 )
C тегом:
-
Доброе время суток. Можно ли как-то узнать есть ли утечки памяти в приложении под Android? Или получить размер занятой памяти приложением?
-
Абракадабровцы утверждают, что под Android студия компилит только для ARM-процессоров. Однако Delphi-приложение запускается на аппарте с Intel-процессором, в котором установлен транслято байт-кода "Houdini". Но отладка не работает. Т.е. из-под студии программа запускается, работает, а студия сразу после старта приложения возвращается в обычный режим редактирования. Пробовал на Lenovo Yoga Tablet 2. У кого-нибудь получилось войти в отладчик в "режиме" Houdini? Или это тупиковая ветвь развития...
-
Доброго времени суток. Написал два приложения, которые работают через wi-fi. Одно выполняет роль сервера (управляющего), другое в количестве 4 штук посылает/получает информацию на/от сервера. Иногда отваливаются клиентские приложения. В чем может быть причина? На "сервере" создаю точку доступа и клиенты подключаются сначала по wi-fi, затем к приложению. Для связи использую компоненты TidTCPClient и TidTCPServer. Что нужно сделать чтобы клиентское приложение не закрывалось само по себе?
- 14 ответов
-
- Indy
- TIDTCPclient
-
(и ещё 2 )
C тегом:
-
[Android]Баги после программного скрытия клавиатуры.
Yarpda опубликовал вопрос в Виртуальная клавиатура
Заметил, что при использования программного скрытия клавиатуры методом: uses FMX.Platform, FMX.VirtualKeyboard; procedure TForm5.ButtonHideKeybordClick(Sender: TObject); var KeyboardService: IFMXVirtualKeyboardService; begin // Запрашиваем сервис виртуальной клавиатуры if TPlatformServices.Current.SupportsPlatformService(IFMXVirtualKeyboardService, IInterface(KeyboardService)) then KeyboardService.HideVirtualKeyboard; end; Наблюдаются устойчивые вылеты на разных устройствах. В пределах одноq формы все нормально, однако если скрыть клавиатуру таким способом и перейти на другую форму (особенно созданную динамически), и выделить какой либо контрол, вызывающий появление клавиатуры, начитаются вылеты программы по AV. Если не с первого раза, то со второй попытки результат близок к 100%. Мне кажется, что использование данного метода как-то перенастраивает стандартное поведение VK в приделах всего приложения. Если убирать клавиатуру обычным методом при помощи клавиши Назад, то такой эффект не наблюдается. Ярослав, подскажите, есть ли еще какой-нибудь способ убора и показа виртуальной клавиатуры под Андроид, отличный от приведенного? Либо может есть какие-то методы по обходу данного эффекта. Если необходимо приложу проект, где данное поведение VK наблюдается. Заранее спасибо. -
Вопрос по быстродействию TListBox
Yarpda опубликовал вопрос в Финальная (Release) сборка пакета приложения
(почему-то нет ветки в андроид по производительности, поэтому написал сюда) Пробую писать под FM на Андрод и столкнулся с жуткими тормозами при прокрутке в TListBox. Динамически создаю TListBoxitem'ы и закидываю в каждый итем 4 Tlabel'я разных цветов методом MyListBoxItem.AddObject(MyLabel); И так для каждого Итема. Если список из 5-10 итемов прокручивается еще куда ни шло. Но список из 25 итемов и более просто дико тормозит при прокрутке. Подскажите, может быть я что-то не так делаю. Какие параметры или настройки могут влиять на производительность листбокса в частности, и на производительность FM для Андроид в общем? Заранее спасибо. -
Здравствуйте. Подскажите пожалуйста как правильно создать новые вкладки у TTabControl и как потом удалить все вкладки кроме первой включая содержимое, которое тоже создавалось в run-time. Новые вкладки создаю через TabControl.Add(); А удалять пробовал и через Destroy и через Delete, но то не удаляет то сыпет ошибками, то виснет приложение. В частном случае, то бишь моем, у меня TabControl имеет одну вкладку созданную в DisignTime. Требуется создать новые. А потом удалить все вкладки с содержимым кроме первой.
- 2 ответа
-
- TTabControl
- Remove
-
(и ещё 2 )
C тегом:
-
Возможно ли запустить из приложения на Delphi сервис написанный на JAVA, в которм запускается поток, который запускает метод из кода Delphi? Как описать в Delphi-JNI метод Delphi, для вызова из JAVA кода если можно с примером... ?
-
Пытаюсь загрузить в проект изображение TBitmap. Правильно ли я делаю? Отобразить картинку не получается у меня. И обязательно ли указывать размеры для картинок или буфера при загрузке, может в этом ошибка? Либо, как мне кажется, ошибка в том, что картинку, которую я загружаю находится не в файле ресурсов, а просто в папке с проектом (наверное так нельзя). Просто с ресурсами никогда не работал ранее да и Fire Monkey в том числе. Проект делаю в RadStudio Xe6. var fon:TBitmap; procedure TForm1.FormCreate(Sender: TObject); var i:integer; begin Fon:=TBitmap.Create; Fon.LoadFromFile('\img\fon.bmp'); end; procedure TForm1.FormPaint(Sender: TObject; Canvas: TCanvas; const ARect: TRectF); begin if Canvas.BeginScene then try form1.Canvas.DrawBitmap(fon,RectF(0,0,320,240),RectF(30,30,320,240),1,true); finally Canvas.EndScene; end; end; Может еще таймер нужно задействовать? Заранее спасибо всем, кто отклинется помочь. К стати возможно я неправильный проект создаю для рисования 2д графики? Я делаю так: file --> fire monkey mobile application delphi --> blank application. Если надо другой вариант выбирать, то какой?
-
Здравствуйте! При создании кросплатформенного приложения в среде Delphi XE7 столкнулся с проблемой подключения к базе данных на устройстве с Android. Ситуация следующая: Подключение организовано через FireDAC и в Windows нормально происходит соединение с БД. При запуске приложения на Android-устройстве и попытке подключения к БД происходит ошибка: [FireDAC][Phys][sQlite] ERROR: unable to open database file. Анализ получившегося приложения показал, что сформированный apk не содержит базы данных, а FDConnection ищет базу по указанному при создании компонента пути (С:\database.db). Может быть что-то не правильно настроено, так как делаю подобное первый раз.
-
TMediaPlayer, воспроизведение списка видео файлов по порядку
FeLDMARShaL опубликовал вопрос в TMediaPlayer
Какаято странная получается история. Не могу стабильно заставить работать приложение для Android при использовании TMediaPlayer. Создаю простое приложени: на форму кидаю Tmediaplayer, TTimer, в само андроид устройство заливаю два небольших mp4 файлика (по отдельности проверил mediaplayer их нормально воспроизводит). Задача така поочереди их воспроизводить. В теле таймера простенький код: 1) Проверяем состоянеи плеера, если плер играет то выходим 2) Если плеер закончил играть, посылаем команду стоп, затем команду clear, изменяем filename на другое, пытаемся запустить 2 видео и ... бац ошибка. В xe6 такой код работал на ура, в хе7 ерунда какаято. П.С. еще бажина: создаем 3 медиаплеера, каждому задаем пути до разных файлов, и после компиляции сразу бабац ошибка. может у меня карма плохая, может ктонибуть написать приложение самое наипростешеей которое позволяло бы прокручивать хотябы 2 медиа файла поочереди. П.С. у когонибуть есть удачный опыт подключения нативного videoview (например из вот этих компонентов D.P.F Delphi Android Native Components). Потомучто цель программы прокручивать без остановки видео, программа пишется за 2 минуты но из за косяков я прям даже не заню что делать. Приму любые дельные советы по поводу проигрывания видео на android.- 8 ответов
-
- Delphi XE7
- TMediaPlayer
-
(и ещё 1 )
C тегом:
-
День добрый. Прошу совета. Необходимо реализовать получение push-сообщений на андроиде. Присутствует следующее: - проект в Google Console. Имеются project id и project number; - клиентское приложение на FM - работающий ruby-скрипт,который можно привязать к любому AppID, способный отправлять пуши через GCM(Google Cloud Messanging) на конкретный device_token и доказавший свою корректную работу. Про стандартные BAaS, вроде Kinvey и Parse, кот. раздают СВОИ token'ы слышал -> смотрел -> делал -> не понравилось. Мне не нужен чужой промежуточный не дешевый AppServer только для отправки push-уведомлений. И так, каким образом я могу реализовать регистрацию устройства напрямую в GCM, получить оттуда DeviceToken, и подписаться на push'и. P.S. Дай бог здоровья человеку, который знает решение данного вопроса и готов им поделится !
-
Подскажите куда копать. Пытаюсь нарисовать поле из прямоугольников, часть из которых символизирует фигуру и рисуется закрашенными. Под Windows все чудесно, под Android вижу только закрашенные. Думал не попадаю в пикселы, установил толщину в 3 и AlignToPixel - не помогло. Код: void __fastcall TForm1::imgFieldPaint(TObject *Sender, TCanvas *Canvas, const TRectF &ARect) { int min = Min(ARect.Width() / FieldRows, ARect.Height() / FieldCols); for (int y = 0; y < FieldRows; y++) { for (int x = 0; x < FieldCols; x++) { // ячейка для отрисовки TRectF R(Canvas->AlignToPixel(TPointF(x*min, y*min)), min, min); // если часть фигуры - рисуем квардрат if (iField[y][x]) { Canvas->Fill->Color = CellColors[iField[y][x]]; Canvas->FillRect(R, 0, 0, AllCorners, 1.0); } // рисуем ячейку Canvas->Stroke->Thickness = 3; Canvas->Stroke->Color = TAlphaColor(claRed); Canvas->DrawRect(R, 0, 0, AllCorners, 1.0); } } } Рузультат: