Adjust의 링크 단축 솔루션 은 복잡하고 긴 링크를 간결한 링크로 만들어줍니다. 숏 링크는 딥링크와 캠페인 정보를 유지하며, 사용자가 아직 앱을 설치하지 않은 경우 앱 스토어로 라우팅합니다.
이 섹션에서 설명된 방법을 사용하여 숏 링크를 해석하시기 바랍니다.
Adjust SDK에서 다이렉트 딥링크 설정
Adjust SDK에서 다음에 대한 지원을 추가합니다.
단축 링크 해석을 위한 Adjust SDK 설정
+ ( void )processAndResolveDeeplink:(nonnull NSURL * )deeplink
withCompletionHandler:(nonnull ADJResolvedDeeplinkBlock)completion;
AppDelegate
에서 processAndResolveDeeplink:completionHandler:
메서드를 호출하여 사용자를 앱으로 딥링크한 숏 Adjust 링크 URL을 확인합니다.
func application ( _ application: UIApplication, continue userActivity: NSUserActivity, restorationHandler : @escaping ([ any UIUserActivityRestoring] ? ) -> Void ) -> Bool {
if userActivity.activityType. isEqual (NSUserActivityTypeBrowsingWeb) {
// Pass deep link URL to Adjust in order to potentially reattribute the user
// and to get the URL resolved if it’s a shortened one.
if let incomingURL = userActivity.webpageURL {
if let deeplink = ADJDeeplink ( deeplink : incomingURL) {
Adjust. processAndResolve (deeplink) { resolveDeeplink in
// resolvedLink contains either resolved URL (if it was unshortened)
// or just echoed URL if it was not shortened
- ( BOOL )application:(UIApplication * )application continueUserActivity:(NSUserActivity * )userActivity restorationHandler:( void ( ^ )( NSArray <id <uiuseractivityrestoring> > * restorableObjects))restorationHandler {
if ([[userActivity activityType ] isEqualToString: NSUserActivityTypeBrowsingWeb]) {
// Pass deep link URL to Adjust in order to potentially reattribute the user
// and to get the URL resolved if it’s a shortened one.
ADJDeeplink * deeplink = [[ADJDeeplink alloc ] initWithDeeplink: [userActivity webpageURL ]];
[Adjust processAndResolveDeeplink: deeplink
withCompletionHandler: ^ ( NSString * _Nullable resolvedLink) {
// resolvedLink contains either resolved URL (if it was unshortened)
// or just echoed URL if it was not shortened
processDeeplink:completionHandler:
메서드로 전송된 링크가 단축된 경우, resolvedLink
는 단축 이전 원본 링크를 반환합니다. 메서드에 전달한 링크가 단축되지 않은 경우 resolvedLink
에는 전달한 링크와 동일한 링크가 포함됩니다.
리퍼러를 사용하여 딥링크 처리
더 나은 어트리뷰션 또는 리어트리뷰션 및 딥링킹을 위해 열린 딥링크 또는 앱의 소스 추적에 사용되는 선택적 리퍼러 URL입니다. 예를 들어, SEO/오가닉 검색과 같은 채널에서는 Adjust 링크가 직접 사용되지 않습니다. 클라이언트의 루트 도메인에 유니버설 링크가 구현되고 앱 실행을 트리거하는 경우, 이러한 채널에서 Adjust는 리퍼러 URL에서 전송되는 시그널에 의존하여 사용자를 어트리뷰션 또는 리어트리뷰션해야 할 수 있습니다.
리퍼러 URL 설정
func application ( _ application: UIApplication,
continue userActivity: NSUserActivity,
restorationHandler : @escaping ([UIUserActivityRestoring] ? ) -> Void ) -> Bool {
if userActivity.activityType. isEqual (NSUserActivityTypeBrowsingWeb) {
// Pass deep link URL to Adjust in order to potentially reattribute the user
// and to get the URL resolved if it’s a shortened one.
if let incomingURL = userActivity.webpageURL {
if let deeplink = ADJDeeplink ( deeplink : incomingURL) {
// If referrer URL is available, add it to the deeplink object
if let referrer = URL ( string : "https://example.com" ) {
deeplink. setReferrer (referrer)
Adjust. processAndResolve (deeplink) { resolveDeeplink in
// resolvedLink contains either resolved URL (if it was unshortened)
// or just echoed URL if it was not shortened
- ( BOOL )application:(UIApplication * )application continueUserActivity:(NSUserActivity * )userActivity restorationHandler:( void ( ^ )( NSArray <id <uiuseractivityrestoring> > * restorableObjects))restorationHandler {
if ([[userActivity activityType ] isEqualToString: NSUserActivityTypeBrowsingWeb]) {
// Pass deep link URL to Adjust in order to potentially reattribute the user
// and to get the URL resolved if it’s a shortened one.
ADJDeeplink * deeplink = [[ADJDeeplink alloc ] initWithDeeplink: [userActivity webpageURL ]];
NSURL * referrer = [ NSURL URLWithString: @"https://example.com" ];
// If referrer URL is available, add it to the deeplink object
[deeplink setReferrer: referrer];
[Adjust processAndResolveDeeplink: deeplink
withCompletionHandler: ^ ( NSString * _Nullable resolvedLink) {
// resolvedLink contains either resolved URL (if it was unshortened)
// or just echoed URL if it was not shortened