자유롭게 질의 및 응답을 할 수 있는 게시판입니다. 개발자 여러분의 답변이 큰 도움이 됩니다. 
  • 제품설치/등록 오류 문의: 설치/등록 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 17467
공지 유용한 관련 사이트 관리자2 2014.03.20 56376
공지 본 게시판은 개발자 여러분들의 질문과 답변을 공유하는 공간입니다. 관리자 2012.01.10 99813
1299 Quick Report 문의드립니다 신재철 2017.07.26 171
1298 FireDAC으로 오라클(Oracle) DB와 연결하기 [1] 델초보 2017.07.26 2759
1297 현재 연결되어있는 USB장치의 이름 가져오기 [1] 박군80 2017.07.26 596
1296 Delphi Tokyo RTL 소스는 어디에서 받을 수 있는건지요? [1] 우정 2017.07.27 116
1295 Berlin, Nougat 환경에서 TMemo 관련. [1] 까치발가락 2017.07.28 97
1294 DBGRID에서 처리방법과 StringGrid에서 구현하는 방법이 다른가요? [2] AllwaysHappy 2017.07.28 492
1293 mysql 과 fdconnection 중 에러 사항 입니다. [1] bursil 2017.07.31 578
1292 델파이 질문드립니다. [1] 노갈공명 2017.08.01 312
1291 내장 브라우저와 Ahalab Safe transation 문제 [1] 파랑 2017.08.01 507
1290 C Builder Active X 관련 문의 [1] file 한미반도체 2017.08.02 166
1289 [공유] 웹뷰를 이용한 하이브리드 앱 개발 시 궁금한 점 험프리 2017.08.02 2100
1288 10.2 버그인가요? [1] file 파란하늘 2017.08.02 168
1287 Cannot create WIC Imaging Factory object for 'TCustomBitmapCodecWIC' [1] 파란김치 2017.08.03 330
1286 안드로이드 버젼에 따른 문제점 희망나라 2017.08.03 166
1285 APP 비정상 종료관련 [2] file hocraft 2017.08.04 404
1284 TDateEdit StyleBook 적용 오류 문의 [4] file 초보개발1 2017.08.06 164
1283 스트링그리드에서 숫자 표현 방법을 문의 합니다 [1] 손보라 2017.08.07 711
1282 Xe8 이 안드로이드 7.0 을 지원하나요.? [1] 희망나라 2017.08.08 129
1281 C++Builder Starter 버전 사용 시 에러 질문합니다. file 얼짱나 2017.08.10 112
1280 RAD Studio 10.2 Starter 버전에서도 설치 횟수 제한이 있나요? [1] 얼짱나 2017.08.10 131