본 포스트는 애플 앱 스토어(Apple AppStore)에서 앱을 서비스하기 위해 검수 요청할 때 애플에서 요구하는 Native Apple Map을 지원하기 위한 내용을 다룹니다.

 

앱 서비스를 하나 만들어서 먼저 구글 플레이스토어에 런칭한 후 아이폰 앱도 만들어서 애플 앱 스토어에 검수를 요청했는데, 대강 아래와 같은 사유로 Reject 메시지가 전달 되었습니다.

 

Guideline 4.0 - Design
Your app's location feature is not integrated with the built-in mapping functionality, which limits users to a third-party maps app

 

검수를 요청한 앱에는 특정 판매점을 찾아가기 위한 길찾기 기능이 포함되어 있었고, 길찾기 기능을 선택하면 휴대폰에 설치되어 있는 네이버 맵을 호출하여 길찾기 기능을 제공하는 형태였습니다. (아래 그림 참고)

길찾기 기능

 

구글 플레이스토어 심사 당시에는 문제가 되지 않았지만 애플에서는 디자인 가이드 라인에 따라서 위 내용과 같이 third-party 앱이 아닌 이미 built-in 되어 있는 애플 맵을 통해 길찾기 기능을 제공해야 한다는 Review 였습니다. 사실 애플 맵에 길찾기 기능이 있는 것도 확인해보지 않았었고, 대부분 길찾기 기능을 네이버 맵을 사용하기에 수정은 하지 않고 회신 처리했습니다.

 

회신 내용
한국에서는 대부분 네이버 맵을 사용하여 길찾기 기능을 제공하고, 사용자의 휴대폰에 설치되어 있지 않은 경우 손쉽게 설치할 수 있도록 앱 스토어로 안내합니다. 모든 지도 기능을 애플 맵을 통해 제공하라는 무리가 있습니다.

 

어느 정도 납득이 될 줄 알았지만 애플에서는 다시 Reject이 왔습니다. 사유는 대강 아래와 같습니다.

 

Guideline 4.0 - Design
Specifically, your app  limits users to a third-party maps app, but does not give users the option to launch the native Apple Maps app. Apps that use a third-party maps, need to offer native Apple Maps to users as an equivalent option.

 

다른 앱으로 서비스를 반드시 해야 한다면 사용자가 애플 맵도 선택할 수 있게 동등한 옵션을 주라는 권고강제였습니다. 하여 Apple Map API를 찾아보니 의외로 많은 기능들이 있었습니다. 아래 링크에 상세한 API 가이드가 나와 있습니다.

https://developer.apple.com/library/archive/featuredarticles/iPhoneURLScheme_Reference/MapLinks/MapLinks.html

 

Map Links

Map Links The maps URL scheme is used to show geographical locations and to generate driving directions between two points. If your app includes address or location information, you can use map links to open that information in the Maps app in iOS or macOS

developer.apple.com

 

개발하실 일이 있으면 아래 소스코드를 참고하시면 됩니다.

 

1. Android 네이버 맵 연계

const mapUrl: string = 'intent://route/walk?appname=testApp&slat=' + slat + '&slng=' + slng + '&sname=현재위치&'
                     + 'dlat=' + store.lat + '&dlng=' + store.lon + '&dname=' + encodeURIComponent(store.storeName)
                     + '#Intent;scheme=nmap;action=android.intent.action.VIEW;category=android.intent.category.BROWSABLE;package=com.nhn.android.nmap;end';
location.href = mapUrl;

 

2. Web or iOS 앱에서 네이버 맵 연계

const mapUrl: string = 'nmap://route/walk?appname=testApp&slat=' + slat + '&slng=' + slng + '&sname=현재위치&'
                     + 'dlat=' + store.lat + '&dlng=' + store.lon + '&dname=' + encodeURIComponent(store.storeName);
location.href = mapUrl;

 

3. Apple Map 연계

const mapUrl: string = 'maps://?t=m&saddr=' + slat + ',' + slng + '&daddr=' + store.lat + ',' + store.lon;
location.href = mapUrl;

 

300x250

+ Recent posts