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

Равиль Зарипов (ZuBy)

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

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

  • Посещение

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

    265

Весь контент Равиль Зарипов (ZuBy)

  1. Павел мы эту тему вроде уже разжевали и в чате и на форуме)
  2. а почему бы просто не останавливать таймер при событии Entered Background? и если нужно запускать при Will Become Foreground
  3. Для ознакомления следует прочитать статью про жизненный цикл андроид приложения При нажатии кнопки назад на главной форме, приложение итак делает выход (не сворачивается) При нажатии кнопки Home приложение сворачивается, смотрим события в статье Но то что вы хотите сделать, это не правильно. Опишите задачу которая у вас стоит, возможно поможем её решить более гуманным способом
  4. Ссылка: http://blog.rzaripov.kz/2016/12/3-modernlistview.html Автор: Зарипов Равиль @ZuBy Описание: Реализация динамической подгрузки контента: Бесконечный скроллинг (например как лента в ВК) Паджинация/Пагинация (постраничная загрузка)
  5. вот еще, получить время с последней перезагрузки системы. знаю андроид и windows могут дать такие данные
  6. прочитайте про скейлы
  7. ну например воспользоваться сервисом https://time.is/ и от туда получить время. но опять же требуется интернет, другого варианта я не вижу
  8. строить логику так, чтобы все обновлялось самостоятельно
  9. например вот так function getDeviceId: string; // uses // Androidapi.Jni.GraphicsContentViewText, Androidapi.JNIBridge, // Androidapi.Helpers, Androidapi.Jni.JavaTypes, // Androidapi.Jni.Provider, Androidapi.Jni.Telephony, // System.Hash; var androidID: string; deviceID: string; TelephoneServiceNative: JObject; TelMan: JTelephonyManager; begin androidID := JStringToString(TJSettings_Secure.JavaClass.getString(TAndroidHelper.Context.getContentResolver, TJSettings_Secure.JavaClass.ANDROID_ID)); TelephoneServiceNative := TAndroidHelper.Context.getSystemService(TJContext.JavaClass.TELEPHONY_SERVICE); if TelephoneServiceNative <> nil then begin TelMan := TJTelephonyManager.Wrap((TelephoneServiceNative as ILocalObject).GetObjectID); deviceID := JStringToString(TelMan.getDeviceId); end else deviceID := ''; Result := THashMD5.GetHashString(androidID + deviceID); end; UPDATE: не забываем про разрешение READ_PHONE_STATE
  10. тогда можно комбинировать с еще какими нибудь данными девайса и в md5 зашивать
  11. //uses // AndroidApi.Helpers, AndroidApi.JNI.JavaTypes, AndroidApi.JNI.Provider; var deviceID: JString; begin deviceID := TJSettings_Secure.JavaClass.getString(TAndroidHelper.Context.getContentResolver, TJSettings_Secure.JavaClass.ANDROID_ID); ShowMessage(JStringToString(deviceID)); end;
  12. Ярослав упомянул В следующей версии студии будет один поток
  13. можно сделать сервачок локальный. Переносной роутер к которому подключаются туристы и качают заранее аудио файлы. Разместить можно при желании даже в автобусе или в каком нить здании до начала экскурсии
  14. Эх, сам предложил а попасть не смогу. Ладно не в этот раз)
  15. приходит кодировка которую не ждут
  16. Для Windows не работает TAniCalculations, можете проверить в ModernListView Я там наружу вывел <TListView>.getAniCalc if ListView1.getAniCalc <> nil then ListView1.getAniCalc.BoundsAnimation := false;
  17. ну не положено отправлять на сервер пробел, для этого все параметры проходят через UrlEncode
  18. %20 это и есть пробел, веб серверы его примут правильно. Но если это мешает, то можно через Replace заменить %20 на пробел
  19. скорей всего в картинке написал текст, но это бред)
  20. Если писать в папку приложения TPath.GetDocumentsPath, то файлы автоматически удаляются при деинсталяции приложения
  21. SSL библиотеки не может найти, скачайте их и поставьте в систему или положите рядом с exe файлом
  22. так у меня все кросс-платформенно) просто лень запускать виртуальную машину для скрина
  23. ну так и вы не дали код, что у вас там происходит я незнаю. а там представлен шаблон с комментариями
×
×
  • Создать...