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

Andrey Efimov

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

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

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

    123

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

  1. В пустом проекте тоже самое происходит? В общем, создайте пустой проект, накидайте контролов и посмотрите, что происходит. Если есть зависание, то его и скидывайте сюда, а если нет, то продолжайте добавлять функционал и проверяйте. Логи можно через Студию посмотреть в дебаг режиме, а можно через monitor.bat.
  2. Чего гадать?! Выкладывайте исходники (минимальные) для воспроизведения проблемы + интересно, что пишется в логах в момент зависания. А то так долго гадать будем...
  3. Axbor Всё нормально скачивается, на всякий случай сделал 30 дневное зеркало: http://rghost.ru/7KvGrv9K6
  4. Ссылка: http://delphifmandroid.blogspot.ru/2016/01/ansroidservicebroadcastreceiver.html Автор: Ефимов Андрей Описание: [AndroidService+BroadcastReceiver] Автозапуск службы после рестарта ОС p.s. Тему почистил
  5. Что-то мне подсказывает, что данная функция не запилена под Аднроид, iOS и MAC, поиск по исходникам желательного результата не дал... И вообще по классу TGpsStatus в справке ясно написано
  6. Тему создал специально, чтобы не засоряли другую. Все сообщения перенёс. Исходная тема: Как решить проблему с кодировкой на Android
  7. Да, я видел, но мне кажется он не один писал код. Это ппц, сколько времени ему понадобилось бы, чтобы всё это добро написать, в одиночку.
  8. Интересно, сколько программистов трудилось над кодом... Всегда поражали такие масштабные проекты.
  9. Я использую SQLiteStudio, может кому пригодится. Ещё не подводила.
  10. Спасибо. Ну да, думаю проблема была в этом: StringFormat: ANSI, а теперь Unicode. p.s. Подрабатываю КЭП'ом)))
  11. А вы не могли бы теперь приложить скрин из FireDAC Connection Editor - Info, только с рабочей базой? (просто стало интересно, увидеть отличия)
  12. Через Uses Permission вы доступ к правам супер пользователя не получите. Запрашивать права через код нужно точно. К сожалению, у меня нет под рукой устройства с Root-правами, поэтому потестить эту возможность просто не могу. Возможно у кого на форуме найдётся рутовонное устройство... К тому же, стандартные функции Delphi и без root-прав ведут себя странно, я как-то пытался прочитать системный файл (открытый для чтения), который легко читался с помощью java, но наотрез отказывался читаться с помощью стандартных функций в RAD Studio. Тут надо экспериментировать...
  13. Вы точно смотрели форум? Вот эту тему Скопировать файл из root директории видели? не помогло?
  14. Ссылка: http://delphifmandroid.blogspot.ru/2016/01/broadcastreceiver.html Автор: Андрей Ефимов Описание: [broadcastReceiver] Автозапуск приложения после перезагрузки ОС
  15. Java класс: Вы же хотите запустить сервис, а запускаете Активити приложения... Правильная строка: launchintent.setClassName(context, "com.embarcadero.services.MyService"); Также некоторые модули совсем необязательны там. И вообще, вы хотите запустить службу, но весь код, запускает у вас активити... т.е. для службы надо так: public class BootCompletedReceiver extends BroadcastReceiver { public void onReceive(Context context, Intent intent) { if (intent.getAction().equals(Intent.ACTION_BOOT_COMPLETED)) { Intent TestLauncher = new Intent(); TestLauncher.setClassName(context, "com.embarcadero.services.TestService"); context.startService(TestLauncher); } } } Манифест: Строка: <receiver android:name="com.mycompany.myproject" имя указано неверно, у вас же Ресейвер имеет имя "com.mycompany.BootReceiver", откуда взялось "com.mycompany.myproject"?! Правильно писать: <receiver android:name="com.mycompany.BootReceiver" и т.д. Это батник из статьи? у меня другой , в своей статье выложу Ну вот, всё работает как часы Держите исправленный проект: ASARservRepair.zip p.s. Забыл вычистить проект от classes.dex, поэтому весит 900 кб. p.s.2 Постараюсь, поскорее написать статью, чтобы все подобные ошибки не возникали у людей
  16. Сейчас исправлю проект и проверю, заработает или нет, потом сюда выложу.
  17. Я сходу уже вижу ошибки... в Манифесте, в java классе. Похоже, всё-таки нужна статья на русском языке... Вот эта ошибка из логов, как раз подтвердила мои догадки: E/AndroidRuntime(1132): java.lang.RuntimeException: Unable to instantiate receiver com.mycompany.myproject
  18. Вот ещё особенность Андроида, из-за неё может вываливаться ошибка: Необходимо запустить приложение/сервис один раз вручную или через код. Т.е. устанавливаете приложение, запускаете его или сервис из него. Перезагружаетесь и должен сработать автозапуск.
  19. Итак, я добился автозапуска сервиса! Всё оказалось очень даже банально... Как сделать (вкратце): 1) Создаём сервис, собираем его 2) Создаём приложение, добавляем туда сервис, собираем приложение 3) Далее генерим "classes.dex" НЕ на основе файла по умолчанию, а на основе файла "classes.dex" из приложения (второй пункт) 4) Полученный файл будет меньше по размеру (пока не понял почему так происходит), его добавляем в приложение, через Deployment Manager и снимаем галочку с файла "classes.dex", который установлен по умолчанию Т.е. мы склеим наш BroadcastReceiver с файлом, в котором уже упомянут Сервис. До этого, как я понимаю, склеивание происходило с файлом, в котором не был упомянут сервис или как-то так. 5) Профит. (Проверено!) В ближайшие дни (постараюсь), я опубликую две новые статьи про автозапуск приложения и сервиса. По поводу вопросов: 1) Правила про отдельную папку и имя сервиса указаны в документации 1.1) Про папку, да все файлы перемешаются и ошибок не избежать, да и не правильно это (в общем случае, плохой тон), городить всё в одну папку, потом сами запутаетесь 1.2) Имя, не знаю, что будет, но не зря это имя зарезервировано. Проверять не хочу)) 2) Про monitor.bat полно информации в интернете, воспользуйтесь поиском. По поводу расширения статьи. Я не буду её расширять, специально опустил все эти моменты, чтобы просто показать, как создать самый простой сервис в Студии. В след. статьях обязательно рассмотрю все эти вопросы. АП (13:40). Только сейчас заметил, что вы идёте по такому же пути Но у меня служба стартанула вообще без проблем
  20. Ну обычный автозапуск приложения у меня (тьфу-тьфу-тьфу) работает пока, а вот сделать такой автозапуск для сервиса мне пока не удалось, где-то косячу видимо, сегодня собирался ещё посмотреть эту тему, если время будет... Пока с автозапуском сервиса у меня такие дела (это просто эксперименты): Попытка №1: Сервис - подсовываем Манифест + клеим classes Приложение - стандартный Манивест + стандартный classes Результат: Не ловит событие перезагрузки устройства, само приложение работает как надо. Попытка №2: Сервис - стандартный Манивест + клеим classes Приложение - подсовываем Манифест + стандартный classes Результат: Ошибка "Приложение завершилось", т.е. событие ловит, но сервис/приложение завершается ошибкой Попытка №3: Сервис - стандартный Манивест + стандартный classes Приложение - подсовываем Манифест + клеим classes Результат: Сервис вообще не запускается, даже просто из приложения, валится ошибкой. p.s. баги или ещё что... только опубликовал статью про создание простейшего сервиса, как объявился первый человек, у которого сервис не запускается...
  21. Ссылка: http://delphifmandroid.blogspot.ru/2016/01/android-service.html Автор: Андрей Ефимов Описание: [Android Service] Создание простейшего Сервиса (службы)
  22. Это крендец... В общем, мучил среду и телефон весь вечер. Итог: сначала удалось запустить свой код, потом пересобрал весь проект из статьи и он тоже заработал. Т.е. я по сути не внёс никаких изменений. В проекте из статьи: 1) сбросил Deployment на дефолтные настройки, там было много лишнего... после чего добавил пересобранный classes.dex. 2) в Project Manager удалил файл AndroidManifest.template.xml, не знаю, за чем его туда добавил автор... всё, компилим проект на устройстве и всё работает как надо... Мой проект: Не содержал в себе кучи мусора + код я перепроверял раз 100 + пересобирал classes.dex раз 20 точно. В своём проекте ничего не изменял, просто в очередной раз всё пересобрал и попробовал запустить... Ярослав, не знаю в чём проблема... только вы там сможете разобраться... Сейчас, ещё раз соберу проект из статьи, вообще ничего не трогая и посмотрю, запустится или нет... И заодно проверю автозапуск для сервиса АПДЕЙТ - 24.01.16 1:20 МСК Собрал проект из статьи, не внося изменений вообще, затронут только bat файл, в нем обновлены пути. Итог: проект не работает и падает с той же ошибкой... Сейчас попробую выяснить, что на него так влияет... 1:24 - Обнаружил, что среда подключила второй classes.dex, ок сейчас проверим... 1:30 - Проект отлично заработал... В общем, моего ума не хватает, чтобы понять, в чём было дело... Могу только сказать, что все особенности, типа второго classes.dex я перепроверял раз 100. Более того, я свой проект писал вообще не по статье и он ведь тоже почему-то не работал... Какие-то чудеса... С сервисом не прокатывает автозапуск, также вываливается с ошибкой... ап.24.01.16 15:25 - Сервис пока так и не удаётся запустить
  23. Пока пытался отловить через monitor.bat, но он у меня не успевает найти устройство после перезагрузки. Где ещё лучше посмотреть? Сегодня уже точно не смогу, а завтра попытаюсь хоть какие-то логи выудить. ап. 23.01.16. Подключение по USB происходит только после отрабатывания ресейвера... ап.2. Попробовал с автозапуском сервиса, тоже самое, ошибка и всё... Не пойму, то ли я где-то в склейках что-то упускаю, то ли это ошибка в FMX.
  24. Ярослав, я вообще не по статье писал ресейвер))) Но про эти особенности знаю и конечно же перепроверил их. Единственное, попробовал сейчас задать явное имя проекта, но и это не помогло... Сейчас, ради интереса попробую запустить проект из статьи... АП. Проверил, такая же фигня.
×
×
  • Создать...