Перейти к содержанию
Fire Monkey от А до Я

Andrey Efimov

Модераторы
  • Постов

    842
  • Зарегистрирован

  • Победитель дней

    123

Весь контент Andrey Efimov

  1. На Андроиде, главная форма всегда растягивается на весь экран (если точнее, то на размеры Активити), задать ей определённый размер нельзя.
  2. if Ord(KeyChar) = vkSpace then Memo1.Lines.Add('Пробел') или if KeyChar = ' ' then Memo1.Lines.Add('Пробел') Проверил на всякий случай, работает отлично.
  3. [Статья][Android] AlarmManager - Автозапуск приложения в назначенное время
  4. Правило: Обращение к любому визуальному компоненту в потоке только через TThread.Synchronize
  5. Например, можно использовать TNetHTTPClient и свойство Asynchronous.
  6. Спасибо, Ярослав уже знает о проблеме.
  7. Повторяю, пользуйтесь поиском и вообще смотрите соседние темы в разделе, перед тем как задать вопрос. Все начальные вопросы уже обсуждались. Поиск -> "не меняется высота" -> результат - ничего сложного... [TEdit] [Android] Можно ли изменить высоту TEdit?
  8. В меню Project -> Deployment -> Кликаем по иконке «Диск и стрелочка» (подписана как «Deploy»)
  9. Если грубо, то примерно вот так: uses Androidapi.JNI.App, Androidapi.Helpers, Androidapi.JNI.GraphicsContentViewText, Androidapi.JNI.JavaTypes, Androidapi.JNI.Os, Androidapi.JNIBridge; function IntArrayToJArray(const OrigArray: array of Integer): TJavaArray<Integer>; var I: Integer; begin Result := TJavaArray<Integer>.Create(Length(OrigArray)); for I := Low(OrigArray) to High(OrigArray) do Result.Items[I] := OrigArray[I]; end; procedure TForm3.Button1Click(Sender: TObject); var ActivityManager: JActivityManager; List: JList; Iterator: JIterator; Process: JActivityManager_RunningAppProcessInfo; ArrayMemoryInfo: TJavaObjectArray<JDebug_MemoryInfo>; begin ActivityManager := TJActivityManager.Wrap(TAndroidHelper.Context.getSystemService(TJContext.JavaClass.ACTIVITY_SERVICE)); List := ActivityManager.getRunningAppProcesses; Iterator := List.iterator; while Iterator.hasNext do begin Process := TJActivityManager_RunningAppProcessInfo.Wrap(Iterator.next); ArrayMemoryInfo := ActivityManager.getProcessMemoryInfo(IntArrayToJArray([Process.pid])); Memo1.Lines.Add(JStringToString(Process.processName) + ' ' + ArrayMemoryInfo[0].getTotalSharedDirty.ToString); end; end; Повторюсь, это грубый, но рабочий пример. Рекомендуется доработать его перед использованием в рабочем проекте!
  10. Да, не спорю. Пару версий назад, данный поиск у меня глючил и я окончательно вернулся на Total Commander (он меня ещё ни разу не подводил )
  11. GetActivityManager - что это? такого в АПИ нет... Может вы имели ввиду ActivityManager -> getRunningAppProcesses() ? Если так, то вам необходимо подключить файл Androidapi.JNI.App.pas. Чтобы быстро найти файл, в котором реализован интерфейс/класс/метод из АПИ, можно воспользоваться любой утилитой позволяющей искать текст в файлах. Это может быть FAR, Total Commander и др. (я использую Total Commander)
  12. Утилита написана на JAVA, т.к. у вас уже установлен JRE, то просто скачиваете и запускаете. Более подробно про утилиту можно почитать по ссылке из статьи Улучшенный 9-patch редактор
  13. android-** (** - версия АПИ, чем выше цифра, тем больше нового поддерживает обёртка. Обратная совместимость поддерживается.) Выбираете файл по АПИ под которое пишите. По вашему примеру: JList уже определён в файле "Androidapi.JNI.JavaTypes.pas", т.е. нет необходимости подключать стороннюю обёртку. Указываете в uses Androidapi.JNI.JavaTypes и работаете с JList. p.s. Обёртки, которые вы скачали, необходимо проверять, т.к. многие из них сгенерены с ошибками.
  14. Вот так подготовили Как добавить "резиновый" SplashScreen в XE7 ? p.s. Старайтесь прикладывать проекты к темам, так будет проще вам помочь.
  15. Ну, если не хотите попробовать мою демку и посмотреть класс, то давайте изменю ваш код: procedure Vibr; //Процедура вибрации var Vibrator: JVibrator; begin Vibrator := TJVibrator.Wrap(TAndroidHelper.Context.getSystemService(TJContext.JavaClass.VIBRATOR_SERVICE)); if Vibrator.hasVibrator() then Vibrator.vibrate(2000); end; доступ к сервису вибрации нужно получать у Context'a. Если всё равно падает, то смотрите логи, через monitor.bat (находится примерно тут: C:\Android\sdk\tools, у вас путь до sdk может быть другим).
  16. Права дали точно? Вот вам мой класс для работы с вибрацией, там есть код проверки прав - https://github.com/AndrewEfimov/Android-API/blob/master/Vibrator/class/Vibrator.Android.pas (https://github.com/AndrewEfimov/Android-API/tree/master/Vibrator, класс и тестовое приложение) либо посмотрите в настройках приложения, раздел с правами.
  17. Самостоятельно (не уверен, что сработает): Там вроде есть ещё логин, можно по нему ресетнуть. Запускаете студию, жмёте "Help->About", смотрите логин (вроде он) в "This product is licensed to:" Заходите https://members.embarcadero.com/, кнопка "Reset My Password" и далее... Или звонок, письмо в тех. поддержку.
  18. Уважаемые участники, в частности @des80! Призываю вас к соблюдению общепринятых норм общения. Вынесено 1 предупреждение. За дальнейшим нарушением незамедлительно последует наказание на усмотрение Администратора/Модератора.
  19. Уважаемые форумчане! Поздравляю Вас с Наступающим Новым Годом и Рождеством! Пусть 2017 год станет новым этапом на Вашем пути и принесет успех, самореализацию и, конечно же, счастье.
  20. Так не устраивает? procedure TFormMain.sbSelectFolderClick(Sender: TObject); var PathFolder: string; begin if SelectDirectory('Выбор папки...', '', PathFolder) then ePathFolder.Text := PathFolder; end; SelectDirectory
  21. Тема закрыта. (По вопросам связанным со Студией, на форуме уже есть отдельные темы) up. Тему почистил.
  22. Вовремя вы, только я решил проверить всё ещё раз p.s. Сейчас вынесу сообщения в отдельную тему, т.к. проблема была видимо не с LockBox-ом p.s.2. Готово!
  23. Проверил, всё нормально загрузилось. Где именно в консоли у вас такая надпись появилась? У меня такого нет... может у вас проблема с чем то другим?!
×
×
  • Создать...