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

Вызов приложения из нофитикейшена


Kitty

Вопрос

Судя по всему на C++ Builder решения нет. Расскажите как это решить на Дельфи? Берем компонет TBecon  в его событии входа в зону вызываем  push нотификаешен. Как это организовать как фоновую службу?

Пользователь идет мимо магазина и получает push на спящий телефон... Жмет  на push и запускает наше приложение... Главное это push из фона...

Изменено пользователем Kitty
Ссылка на комментарий
  • Ответы 73
  • Создана
  • Последний ответ

Лучшие авторы в вопросе

Рекомендуемые сообщения

  • 0
38 минут назад, Andrey Efimov сказал:

Видимо, вам остаётся только ждать, когда добавят сервисы в C++, либо попробовать переписать всё на Delphi.

Я думал, здесь шутят по поводу отсутствия Android сервисов в C++. Оказывается, действительно нет =(

Но это не повод переходить на Delphi — всегда можно переписать шаблон service.template.java под себя, и в манифесте включить этот сервис =)

 

Ссылка на комментарий
  • 0
19 часов назад, krapotkin сказал:

и какие еще варианты архитектуры? ) 

да например, нужно не спамить пользователя при входе в ТЦ, нужно задействовать службы геопозиции на уровне операционки и при нахождении в данной, заранее определенной геопозиции слать напоминание о том что пришел в ТЦ.

у меня так сделано при посадке в машину и при выходе из нее на событие подключение к bluetooth магнитоле! все работает на ура! тобишь я сажусь в авто, приходит нотификейшин о том что до дома n-е количество минут ехать. 

просто в ios нет сервисов, архитектура более продуманная нежели в ведре!

Ссылка на комментарий
  • 0
Цитата

В общем, копался тут в исходниках (по другому вопросу), а потом забрёл в семплы и ... iBeacon в сервисе возможен

Большое спасибо за информацию!

Цитата

да например, нужно не спамить пользователя при входе в ТЦ, нужно задействовать службы геопозиции на уровне операционки

Речь не идет о том, чтобы спамить пользователя. Пользователь установил мобильное приложение торгового центра (кофейни) сознательно, чтобы иметь выгоды (скидки, купоны, распродажи). На уровне кода можно сделать, чтобы сообщение от конкретного маячка приходило однократно в сутки. Торговый цент может быть нашпигован маячками (у каждого магазина свой). Определять границы зон магазинов через службы позиционирования, наверное, сложная задача. Или, например музей, гуляя от картины к картине, на телефоне срабатывает аудиогид (видела такое в живую).
P.S.
Раз на вооружение iBeacon уже берут и используют McDonald’s, Tesco, Macy’s и другие, то это, наверное, все же перспективно.  :)

Ссылка на комментарий
  • 0
5 минут назад, haword сказал:

без сервиса никак. но проблема в том что не все включают блютуз что бы батарею не жрал. у меня он вообще всегда выключен. 

Это предрассудки для новых моделей Android, да и iOS. Сетевые карты спать ложатся, когда не используются.

Ну и, если очень нужно, можно время от времени включать и выключать программно.

 

Ссылка на комментарий
  • 0

Изучила пример: C:\Users\Public\Documents\Embarcadero\Studio\18.0\Samples\Object Pascal\Multi-Device Samples\Device Sensors and Services\AndroidBeaconServiceDemo.

Там есть readme.html и там написано:
 

Цитата

 

To open the projects:

    Navigate to the location given above.
    Open the sample application group project file: BeaconServiceDemo.groupproj.

To create the Android Service:

    Select libBeaconService.so on the Project Manager.
    Right-click to select Compile.

        Note: Compiling the project generates the files that you need to add to the main application.

To add the Android Service to the main application:

    Select BeaconServiceApp on the Project Manager.
    Expand the Target Platforms node.
    Select the Android device.
    Right-click on the Android device, and select Add Android Service.
    Select the location to C:\Users\Public\Documents\Embarcadero\Studio\18.0\Samples\Object Pascal\Multi-Device Samples\Device Sensors and Services\AndroidBeaconServiceDemo\BeaconService.
    Click Next.

        Note: Check that the location to these files is added: libBeaconService.so, BeaconService.jar, and BeaconServiceUnit.pas.

    Click Finish.
    Press F9 or choose Run > Run to deploy the application to an Android device.

 

Ну просто красота - в готовое приложение можно добавить сервис: Right-click on the Android device, and select Add Android Service.

Размечталась я об кренделях небесных - ну думаю в мой проект на С++ можно добавить службу на Дельфи и наступит счастье. :)

Делаю в своем проекте Right-click on the Android device, and select Add Android Service и... ничего не происходит, просто тишина.

Значит чтобы добавить службу на дельфи и само приложение должно быть на дельфи... печалька...

Ссылка на комментарий
  • 0

как-то кисло выходит вчера просидел пол дня не заработал biacon  в сервисе пробовал и демку собирать и сам сервис делал ни в какую

может у кого есть возможность проверить демку сервиса там нужно одно устройство которое будет  маячком можно  скачать с аппсторе или плеймаркета а на второе установить сервис с примеров.

я пока буду дальше ковырять может что упустил

Ссылка на комментарий
  • 0
47 минут назад, Kitty сказал:

Делаю в своем проекте Right-click on the Android device, and select Add Android Service и... ничего не происходит, просто тишина.

Да, у меня такая же ситуация. Не доделали в С++.

 

Ссылка на комментарий
  • 0
3 часа назад, Kitty сказал:

Пользователь установил мобильное приложение торгового центра (кофейни) сознательно, чтобы иметь выгоды (скидки, купоны, распродажи). 

вот ключевые слова.... если пользователь заинтересован и у него есть потребность он запустит Ваше приложение и воспользуется всеми благами маячков, но если я пришел в кафе кофейку попить, не надо мне без моей потребности слать разную инфу!

меняйте архитектуру, подход к решению...

Ссылка на комментарий
  • 0
4 часа назад, Kitty сказал:

гуляя от картины к картине, на телефоне срабатывает аудиогид (видела такое в живую).

А где такое реализовано, подскажите плиз, хочу с ними встретиться?

Ссылка на комментарий
  • 0
17 минут назад, haword сказал:

не включается это программно из-за безопасности. 

как бы да, но вендор говорит, что будет вежливым у пользователя спросить разрешение.
 

Цитата

Bluetooth should never be enabled without direct user consent. If you want to turn on Bluetooth in order to create a wireless connection, you should use the ACTION_REQUEST_ENABLE Intent, which will raise a dialog that requests user permission to turn on Bluetooth. The enable() method is provided only for applications that include a user interface for changing system settings, such as a "power manager" app.

 

Ссылка на комментарий
  • 0
Цитата

может у кого есть возможность проверить демку сервиса

Так давайте я проверю работу готового сервиса. У меня есть реальный маячок.

Цитата

меняйте архитектуру, подход к решению...

Мне трудно самой придумать архитектуру. Например, так реализовано у сети кофейн Starbucks.
Пользователь приходит, телефон его приветствует, считает частоту его приходов и т.п. делает выводы и предлагает разного рода плюшки. :)

 

Цитата

А где такое реализовано, подскажите плиз, хочу с ними встретиться?

Это наблюдала несколько месяцев назад в гостях на одной из выставок тут: http://художественныесокровища.рф/

Была выставка с этой технологией. Народ ходил от картины к картине и слушал инфо из телефона. Были мною замечены маячки...

Изменено пользователем Kitty
Ссылка на комментарий
  • 0
2 часа назад, Kitty сказал:

Так давайте я проверю работу готового сервиса. У меня есть реальный маячок.

вся проблема не в маячке а в самой работоспособности демки она не работает

в виде маячка я использую iphon 4s а сканер и сервис проверяю на samsung tab pro  так вот сканер отлично работает а сервис не отрабатывает сам компонент не работает вот и хотел узнать может  кто собрать демку и проверить у себя может я что не так делаю хотя там правок никаких нет  кроме  как ( сделать build и добавить сервис в приложение)

Ссылка на комментарий
  • 0
1 час назад, master webs сказал:

вся проблема не в маячке а в самой работоспособности демки она не работает

в виде маячка я использую iphon 4s а сканер и сервис проверяю на samsung tab pro  так вот сканер отлично работает а сервис не отрабатывает сам компонент не работает вот и хотел узнать может  кто собрать демку и проверить у себя может я что не так делаю хотя там правок никаких нет  кроме  как ( сделать build и добавить сервис в приложение)

Ну вот, запустил я демку и сервис крутится в памяти.

А как из iPhone сделать маячок?

Ссылка на комментарий
  • 0
5 минут назад, Pax Beach сказал:

Ну вот, запустил я демку и сервис крутится в памяти.

А как из iPhone сделать маячок?

там же в демках можно найти проект для симуляции маячка ил  можно скачать с appstore или плеймаркета

прикреплю свой проект посмотрите там все просто

смотрите там если будете использовать мой пример в настройках нужно будет указать правильный UUID

ibeacon.zip

p/s а сервис и уменя крутится даже пробовал на ваш сервер логировать кроме запуска так ничего и не попало

http://kayfolom.ru/?cmd=read&api_key=biacontestmasterwebs&output_format=json

"datetime": "2016-06-24 12:23:19" ето уже работа сканера а не сервиса

Изменено пользователем master webs
Ссылка на комментарий
  • 0
6 минут назад, master webs сказал:

там же в демках можно найти проект для симуляции маячка ил  можно скачать с appstore или плеймаркета

прикреплю свой проект посмотрите там все просто

смотрите там если будете использовать мой пример в настройках нужно будет указать правильный UUID

ibeacon.zip

Так как приложение называется в AppStore? Просто утонул в выдаче по запросу iBeacon.

UPD:
нашел Locate Beacon.

 

Изменено пользователем Pax Beach
Ссылка на комментарий
  • 0

У меня почему-то умирает приложение, я так подозреваю, что в момент, когда приходит сигнал от устройства.

Последнее сообщение в monitor, что сервис запущен. А потом:

06-24 20:15:22.894: I/art(5078): Thread[2,tid=5083,WaitingInMainSignalCatcherLoop,Thread*=0xb9c54f00,peer=0x12d200a0,"Signal Catcher"]: reacting to signal 3
06-24 20:15:23.036: I/art(5078): Wrote stack traces to '/data/anr/traces.txt'

 

UPD:

А... пардон. Доблестные документаторы забыли дописать, что для приложения нужно установить разрешения на работу с BlueTooth

    <uses-permission android:name="android.permission.BLUETOOTH" />
    <uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />

 

UP-UPD:

Все приходит, монитор сообщает о событии в сервисе каждые несколько секунд:

06-24 20:27:29.121: I/info(14450): Beacon1BeaconProximity: {B9407F30-F5F8-466E-AFF9-25556B57FE6D}

06-24 20:27:29.121: I/info(14450): Beacon1BeaconProximity: {B9407F30-F5F8-466E-AFF9-25556B57FE6D}

Правда Notification вылетает в StatusBar только по первому событию, а потом, молчит. Думаю, что Bluetooth здесь уже не причем.

 

Изменено пользователем Pax Beach
Ссылка на комментарий
  • 0
53 минуты назад, Pax Beach сказал:

У меня почему-то умирает приложение, я так подозреваю, что в момент, когда приходит сигнал от устройства.

Последнее сообщение в monitor, что сервис запущен. А потом:


06-24 20:15:22.894: I/art(5078): Thread[2,tid=5083,WaitingInMainSignalCatcherLoop,Thread*=0xb9c54f00,peer=0x12d200a0,"Signal Catcher"]: reacting to signal 3
06-24 20:15:23.036: I/art(5078): Wrote stack traces to '/data/anr/traces.txt'

 

UPD:

А... пардон. Доблестные документаторы забыли дописать, что для приложения нужно установить разрешения на работу с BlueTooth


    <uses-permission android:name="android.permission.BLUETOOTH" />
    <uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />

 

UP-UPD:

Все приходит, монитор сообщает о событии в сервисе каждые несколько секунд:

06-24 20:27:29.121: I/info(14450): Beacon1BeaconProximity: {B9407F30-F5F8-466E-AFF9-25556B57FE6D}


06-24 20:27:29.121: I/info(14450): Beacon1BeaconProximity: {B9407F30-F5F8-466E-AFF9-25556B57FE6D}

Правда Notification вылетает в StatusBar только по первому событию, а потом, молчит. Думаю, что Bluetooth здесь уже не причем.

 

изминений не вносили ? можно посмотреть проект ?

Ссылка на комментарий
  • 0

разобрался работает без проблем проблема была в прошивке стоял андроид 4,4 стоковый обновил до 6 все работает прекрасно

Изменено пользователем master webs
Ссылка на комментарий
  • 0

У многих андроид 4.3 - 4.4. Получается что этот пример работает только в последних версиях андроида...

А можно ли, и как правильно прикрутить TBeacon к этой статье: http://yaroslavbrovin.ru/using-alarmmanager-in-firemonkey-on-android-ru/

Как заменить установку времени в этой статье, входом в зону маячка?

Как правильно скрестить TBeacon и AlarmManager?

Ссылка на комментарий

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...