자유롭게 질의 및 응답을 할 수 있는 게시판입니다. 개발자 여러분의 답변이 큰 도움이 됩니다. 
  • 제품설치/등록 오류 문의: 설치/등록 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 20051
공지 유용한 관련 사이트 관리자2 2014.03.20 58960
공지 본 게시판은 개발자 여러분들의 질문과 답변을 공유하는 공간입니다. 관리자 2012.01.10 102578
334 xe7에서 마쉬멜로 6.0.1 버전 빌드시에 [2] 손인호 2016.07.20 261
333 MultiView에서 MultiDetail3.InternalPlaceOffset.X 를 수정할 수가 없네요. 어려워 2016.07.17 158
332 비콘 감지중 블루투스를 사용자가 강제로 off시 어떻게 처리해야 할까요? 김태윤 2016.07.15 750
331 ios 한글이 깨집니다. (같은 환경에서 안드로이드는 잘 됩니다) file 어려워 2016.07.14 334
330 DICOM 포맷을 핸들링할 수 있는 파이어몽키(FMX) 컴포넌트가 있나요? [1] 관리자 2016.07.11 638
329 안드로이드 ViewPager 구현 문의 [2] file 손주영 2016.07.08 341
328 안드로이드 서비스에서 비콘감지 김태윤 2016.07.11 564
327 Tools->Options->Provisioning 에 들어가면 ... file 어려워 2016.07.09 171
326 MemoryStream 문의입니다 [2] file 최민철 2015.09.08 700
325 안드로이드 플랫폼에서 jpg, png파일 포맷 사용하려면 [2] superman 2016.06.15 783
324 [시애틀]디버그 모드 진입 불가 [1] 김태윤 2016.06.14 425
» [시애틀]비콘을 안드로이드 서비스로 감지하는데 자꾸 응답없음으로 강제종료됩니다. [2] 김태윤 2016.06.09 553
322 firemonkey로 window와 mac OS 를 개발하는 중입니다. 모바일과 푸쉬를 주고 받을수 있는지 궁금합니다. [1] 운땡최향태 2016.05.31 179
321 안드로이드 디버깅이 재대로 실행되지 않습니다. [3] hsson 2016.06.03 435
320 Xe5에서 안드로이드 버전 얼마까지 지원되나요? [1] 농가사랑 2016.06.01 217
319 안드로이드 서비스(백그라운드 실행)에서 특정 상황에서 앱자동 실행 [2] 김태윤 2016.05.24 2934
318 ListBox Item Style내부 색상변경 [2] 박군80 2016.05.24 630
317 OSX 개발시 ICON 가져오기 freehun 2016.05.27 143
316 안드로이드 블루투스 한글 관련 질문 [1] hsson 2016.05.13 413
315 안드로이드 비트맵 최대크기관련 질문. [1] hsson 2016.05.26 407