Kazuhiro INOUE  블로그 글을 번역한 것입니다

 

·  본문 링크 https://community.idera.com/developer-tools/b/blog/posts/issue-with-the-sensor-components-for-android-in-rad-studio-10-3-3-ja

RAD Studio 10.3.3  안드로이드 앱에서 센서 컴포넌트 사용시 링크 오류 해결 방법

SDK 버전 26에만  있는 심볼을 참조하는 Androidapi.Sensor.pas 문제로 인해 어플리케이션에서 SDK 버전 22을 참조하면 링크 오류가 발생합니다.

 

C++ 빌더 10.3.3을 이용하여 TLocationSensor 컴포넌트를 사용하여 안드로이드 애플리케이션을 빌드하는 경우, [ldandroid Error] "ld" exited with code 1 이런 오류 메세지가 발생합니다. 델파이에서 심볼 이름 (예를 들어, 스크립트를 사용하여 Grijjy 사의 블로그에 기재된 자체 오류코드와 같은 Android 타사의 호출 스택 라이브러리에 의해 생성 된 심볼을)를 일치시키려는 경우 델파이10.3.3에서는 같은 문제로 인해 다른 증상의 링크 오류가 발생합니다. 

 

이 문제는 Androidapi.Sensor.pas 파일의 일부 심볼이 Android SDK 버전 26에만 도입되어 있는데  어플리케이션은 이러한 심볼들이 없는 버전 22에 연결되어 있기때문입니다. 이 오류를 해결하려면 로컬 복사본을 만들고 심볼을 주석 처리하십시오.

 

해결 방법

 

  1. C : \Program Files (x86)\Embarcadero\Studio\20.0\source\rtl\android\에서 Androidapi.Sensor.pas 및

     Androidapi.inc 파일을 찾습니다(다른 위치에 설치 한 경우에는 같은 이름의 파일을 찾습니다.)

 

  2. Androidapi.Sensor.pas과 Androidapi.inc를 프로젝트의 소스 폴더에 복사하고 Androidapi.Sensor.pas만 프로젝트에 추가합니다.

     Androidapi.inc 파일은  Androidapi.Sensor.pas을 빌드하는 데 필요합니다. 

 

  3. Androidapi.Sensor.pas 파일을 열고 다음 심볼의 선언을 찾아 주석 처리합니다.

  • ASensorManager_getInstanceForPackage
  • ASensorManager_getDefaultSensorEx
  • ASensorManager_createSharedMemoryDirectChannel
  • ASensorManager_createHardwareBufferDirectChannel
  • ASensorManager_destroyDirectChannel
  • ASensorManager_configureDirectReport
  • ASensorEventQueue_registerSensor
  • ASensor_isDirectChannelTypeSupported
  • ASensor_getHighestDirectReportRateLevel

  4. 다음 버전(10.4)로 업그레이드 할 때 Androidapi.Sensor.pas과 Androidapi.inc 파일의 로컬 복사본을 프로젝트에서 제거하십시오.

 

[관련 링크]

C++ 빌더의 안드로이드 위치 센서 문제: http://blog.blong.com/2020/02/cbuilders-android-location-sensor-woes.html

번호 제목 글쓴이 날짜 조회 수
공지 [DelphiCon 요약] 코드사이트 로깅 실전 활용 기법 (Real-world CodeSite Logging Techniques) 관리자 2021.01.19 21736
공지 [UX Summit 요약] 오른쪽 클릭은 옳다 (Right Click is Right) 관리자 2020.11.16 20363
공지 [10.4 시드니] What's NEW! 신기능 자세히 보기 관리자 2020.05.27 22404
공지 RAD스튜디오(델파이,C++빌더) - 고객 사례 목록 관리자 2018.10.23 28160
공지 [데브기어 컨설팅] 모바일 앱 & 업그레이드 마이그레이션 [1] 관리자 2017.02.06 29450
공지 [전체 목록] 이 달의 기술자료 & 기술레터 관리자 2017.02.06 24778
공지 RAD스튜디오(델파이, C++빌더) - 시작하기 [1] 관리자 2015.06.30 45724
공지 RAD스튜디오(델파이,C++빌더) - 모바일 앱 개발 사례 (2020년 11월 업데이트 됨) 험프리 2014.01.16 181278
83 [세미나자료] 인터베이스(InterBase) in Action, Live! file 관리자 2012.05.10 6300
82 [세미나자료] 20120508 "Mac과 윈도우를 동시에… 동일한 소스코드로 멋지게 개발" file 관리자 2012.05.10 7359
81 앤더슨 올슨이 아이폰용 컴포넌트의 새버전을 오픈 했습니다. [3] file 관리자 2012.05.09 7419
80 파이어몽키와 VCL을 한 화면에서 함께 사용할 수 있는 방법을 설명한 동영상 [2] 관리자 2012.05.09 7598
79 [델파이 문법] 클래스와 객체 #8 file 관리자 2012.05.07 12644
78 [동영상강의] 델파이 기본교육_3.유니트구조와 코드작성1 관리자 2012.05.03 8310
77 [델파이 문법] 클래스와 객체 #7 file 관리자 2012.04.30 6554
76 [동영상강의] 델파이 기본 교육_2.프로젝트소스와프로젝트관리 관리자 2012.04.25 9593
75 [동영상강의] 델파이 기본 교육_1.프로젝트 시작하기 관리자 2012.04.25 10965
74 [델파이 문법] 클래스와 객체 #6 file 관리자 2012.04.25 7534
73 [델파이 문법] 클래스와 객체 #5 file 관리자 2012.04.23 6585
72 파이어몽키를 이용해서 아이폰앱을 개발할때 스타일 바꾸기 관리자 2012.04.19 9014
71 [델파이 문법] 클래스와 객체 #4 file 관리자 2012.04.19 6499
70 [델파이 문법] 클래스와 객체 #3 file 관리자 2012.04.18 9366
69 [델파이 문법] 클래스와 객체 #2 [1] file 관리자 2012.04.17 7526
68 RadPHP 한글문제 관리자 2012.04.13 8211
67 [델파이 문법] 클래스와 객체 #1 file 관리자 2012.04.12 10897
66 [델파이 문법 시리즈] #4. 익명메소드 - 활용법(마지막) file 관리자 2012.04.10 7461
65 [델파이 문법 시리즈] #3. 익명메소드 - 이벤트 활용,변수 바인딩 메커니즘 file 관리자 2012.04.09 7071
64 [델파이 문법 시리즈] #2. 익명메소드 - 활용, 바인딩 file 관리자 2012.04.05 7177