자유롭게 질의 및 응답을 할 수 있는 게시판입니다. 개발자 여러분의 답변이 큰 도움이 됩니다. 
  • 제품설치/등록 오류 문의: 설치/등록 Q&A 이용 (제품 구매 고객 한정)

델파이 시애틀로 안드로이드 서비스를 가동하여 TBeacon컴포넌트로 비콘에 근접시 TNotificationCenter로 알림을 넣는 예제를 만들고 있습니다.

그런데 처음 근접시 TNotificationCenter로 알림이 잘 갑니다. 하지만 신호 감지거리(약 10m)를 벗어난후 다시 근접하면 서비스가 응답없는지 메인 엑티비티및 서비스가 강제 종료됩니다. 강제 종료후 서비스가 다시 시작되기는 하지만 사용상 강제 종료는 피하고 싶습니다. 비콘감지가 서비스로 작동시 응답없음 상태로 들어가는 원인을 모르겠습니다. 서비스로 작동하지 않고 폼에 TBeacon을 올린후 타이머로 주기적으로 거리값을 감지했을때는 문제 없이 잘 작동하는데 이상합니다.

 

아래는 안드로이드 서비스에서 사용한 소스와 비콘 설정값입니다.

TBeacon설정

  BeaconDeathTime: 10

  CalcMode : Stabilized

  Enable : False //서비스 시작시 소스에서 True로 변경함

  LiveBindings Designer: +를 눌러 확장하면 Access violation...'dclbindcomp230.bpl'에러(정품사용자인데 에러납니다.)

  Mode: Standard

  Name: Beacon1

  ScanningSleepingTime: 2000

  ScanningTime : 500

  SPC: 0.5

  Tag: 0

 

 

//TNotificationCenter로 알림을 넣는 함수
procedure TAndroidServiceDM.SetNoti(Name, Title, MSG: String);
var
  MyNotification: TNotification;
begin
  MyNotification := NotificationCenter1.CreateNotification;
  try
    MyNotification.Name := Name;
    MyNotification.Title := Title;
    MyNotification.AlertBody := MSG;
//    MyNotification.FireDate := IncSecond(Now, 8);
    NotificationCenter1.ScheduleNotification(MyNotification);
  finally
    MyNotification.Free;
  end;
end;

 

//서비스 시작

function TAndroidServiceDM.AndroidServiceStartCommand(const Sender: TObject;
  const Intent: JIntent; Flags, StartId: Integer): Integer;
begin
  Beacon1.Enabled := True;

  SetNoti('ServiceNoti','비콘감지 서비스','비콘감지 시작');//서비스 시작을 알리기위함

  Result := TJService.JavaClass.START_STICKY;
end;

 

//근접값이 변경되었을때 근접했으면 TNotificationCenter로 알림

procedure TAndroidServiceDM.Beacon1BeaconProximity(const Sender: TObject;
  const ABeacon: IBeacon; Proximity: TBeaconProximity);
begin
    if (Proximity = TBeaconProximity.Immediate)  then
    begin
        SetNoti('ServiceNoti1','비콘감지 서비스','근접');

    end;

end;

 

번호 제목 글쓴이 날짜 조회 수
공지 [프로그래밍 강의] 2021.6~2021.12 관리자 2015.01.22 15762
공지 유용한 관련 사이트 관리자2 2014.03.20 54577
공지 본 게시판은 개발자 여러분들의 질문과 답변을 공유하는 공간입니다. 관리자 2012.01.10 97974
414 [MACOS] TEdit에서 엔터키 입력시 비프음 발생 [1] 라운지 2015.09.30 306
413 유투브 링크 영상을 플레이 하는법이 궁금합니다. [1] 최향태 2016.04.14 306
412 안드로이드에서 앱 설치 시 External에 저장하게 하는 방법입니다. file 푸른솔 2017.01.05 307
411 10.2 Tokyo에서 TFrame등의 Animation 문제 해결방법. [5] 푸른솔 2017.12.29 308
410 XE7에서 개발한 앱을 XE8에서 컴파일시 질문입니다. [1] 희망나라 2015.05.09 308
409 TEdit 에서 EJNIFatal with message 'Invoke error: [2] 빨리빨리 2016.02.27 308
408 XE7 Windows 8.1 BLE [1] 야곱 2015.08.19 310
407 안드로이드 64비트 대응관련 문의드립니다. [3] 돌팅 2019.11.26 310
406 휴대폰 번호나 맥 번호를 받아올 수 없을까요? [1] 거북이 2015.11.12 315
405 안드로이드 ViewPager 구현 문의 [2] file 손주영 2016.07.08 317
404 XE10에서 Send mail 문제 [1] 당신이먼저 2017.03.01 317
403 FMX Tnumberbox 천단위 separator 질문 [1] 델델델 2020.05.29 318
402 [Push 세미나] iOS에서도 Firebase Push를 지원할 수 있을까요? 지원 가능하다면 어떻게 할 수 있나요? [2] 관리자 2020.05.04 319
401 10.3.1 리오 - 버튼 툴바등 컴포넌트 컬러 [2] 델파인 2019.03.19 319
400 이메일 첨부화일 접근에러에 대해 권한문제? [1] 스카이 2020.06.13 320
399 [xe8] 앱이 항상 켜져있으려면.. [1] 가을이다 2015.12.28 322
398 태블릿 스플래시이미지에 9-Patch 이미지를 적용했을때 화면 이상 [5] 이지현 2017.04.06 323
397 ListView 의 스크롤 방법을 알고싶습니다. [2] 거북이 2015.12.15 324
396 아이폰 TTS 예제.. 가을이다 2015.09.03 327
395 ListBox style에서 text를 추가했는데 livebinding으로 연결이 가능한가요?? [1] 손주영 2016.03.17 327