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 7243
공지 [UX Summit 요약] 오른쪽 클릭은 옳다 (Right Click is Right) 관리자 2020.11.16 7080
공지 [10.4 시드니] What's NEW! 신기능 자세히 보기 관리자 2020.05.27 9460
공지 RAD스튜디오(델파이,C++빌더) - 고객 사례 목록 관리자 2018.10.23 14496
공지 [데브기어 컨설팅] 모바일 앱 & 업그레이드 마이그레이션 [1] 관리자 2017.02.06 16250
공지 [전체 목록] 이 달의 기술자료 & 기술레터 관리자 2017.02.06 12043
공지 RAD스튜디오(델파이, C++빌더) - 시작하기 [1] 관리자 2015.06.30 31083
공지 RAD스튜디오(델파이,C++빌더) - 모바일 앱 개발 사례 (2020년 11월 업데이트 됨) 험프리 2014.01.16 166958
1201 [프로그래밍 애피타이저] 8장 SQL 정의와문법 file 김원경 2020.04.09 451
1200 [프로그래밍 애피타이저] 7장 데이터베이스 개념과 용어정의 file 김원경 2020.04.09 630
1199 [고객 사례- POS, 주문, 델파이, 모바일] 마리스코스 - 레스토랑 주문 관리&전송 앱 관리자 2020.04.08 468
1198 IBLite 라이브러리 및 라이선스 배포하기 관리자 2020.04.08 219
1197 C++로 UI를 손쉽게 개발해봅시다! 관리자 2020.04.07 911
1196 [프로그래밍 애피타이저] 6장 프로시저와 함수 file 김원경 2020.04.07 724
1195 [프로그래밍 애피타이저] 5장 메모리의 구조 file 김원경 2020.04.07 502
1194 [프로그래밍 애피타이저] 4장 데이터타입 file 김원경 2020.04.07 257
1193 [프로그래밍 애피타이저] 3장 변수와 상수 file 김원경 2020.04.07 307
1192 [프로그래밍 애피타이저] 2장 컴파일,링크 및 운영체제(Operating System) file 김원경 2020.04.06 333
1191 [프로그래밍 애피타이저] 1장. 컴퓨터프로그램이란 ? file 김원경 2020.04.06 426
1190 2020 년 3 월 GM 업데이트 file 김원경 2020.03.30 601
1189 프로그래밍 언어 인기도 측정의 문제점 file 김원경 2020.03.27 409
1188 이 달의 기술자료 - 2020년 04월 험프리 2020.03.27 236
1187 파이어몽키를 사용하여 멀티 플랫폼/아키텍처 용 소프트웨어 개발 file 김원경 2020.03.25 472
1186 [고객 사례- 의료, 델파이] COVID-19 - 검사 결과 실시간 확인 앱 관리자 2020.03.25 638
1185 [고객사례-솔루션, 델파이] 비디오 오피스(VideoOffice) - 화상회의 솔루션 관리자 2020.03.25 449
1184 [고객사례-사물인터넷, 앱, 델파이] 로봇청소기 제어 앱 '니토 툴리오' 관리자 2020.03.24 251
» RAD Studio 10.3.3 안드로이드 앱에서 센서 컴포넌트 사용시 링크 오류 해결방법 김원경 2020.03.18 260
1182 [델파이 안드로이드 64비트 오류 수정] TInAppPurchase 컴포넌트 수정 file 김원경 2020.03.18 252