안녕하세요. IT김군입니다. IOS 처음 배포할 때 겪었던 어려움이 있어 적어봅니다.


IOS iPhone용 App을 배포하려다 보니 아래와 같은 피드백을 받았고, 배포가 거부되었습니다.


--------------------------------------------------------------------------------------------------------------------------------------------------

Guideline 2.5.4 - Performance - Software Requirements



Your app declares support for location in the UIBackgroundModes key in your Info.plist file but does not have any features that require persistent location. Apps that declare support for location in the UIBackgroundModes key in your Info.plist file must have features that require persistent location.

Next Steps

To resolve this issue, please revise your app to include features that require the persistent use of real-time location updates while the app is in the background.

If your app does not require persistent real-time location updates, please remove the "location" setting from the UIBackgroundModes key. You may wish to use the significant-change location service or the region monitoring location service if persistent real-time location updates are not required for your app features.


--------------------------------------------------------------------------------------------------------------------------------------------------


이에 따라 저는 AppName-info.plist 파일에서 <UIBackgroundModes>에서 Location을 제거하는 방법으로 해결하였는데요.


Plugin 때문에 자동으로 생성되고 사용되는 위 소스를 어떻게 제거하느냐 방법은


Xcode로 해당 App을 열고 Plugin 폴더를 확인해보시면 CDVLocationManager.m 파일이 있습니다.


해당 파일을 열고 allow를 검색하시면 아래와 같은 소스가 있는데요.




초기값은 YES로 되어있을 것입니다. 해당 값을 NO로 바꿔줍니다.


그 다음 좌측 프로젝트 탐색기에서 프로젝트 명을 더블클릭하면 나오는 설정 부분에서



백그라운드 모드를 ON에서 OFF로 바꿔주시면 됩니다.


그 후 AppName-info.plist 파일에 가셔서


<UIBackgroundModes>에 대한 항목을 삭제해주신 후 빌드하시면 정상처리됩니다.


저는 이렇게해서 위 피드백에 대한 답변을 통과하여 App을 배포할 수 있었습니다.


문의사항 있으시면 댓글 부탁드립니다.


감사합니다.


WRITTEN BY
IT김군
S/W 개발자 김군의 메모장

,