릴리즈 노트

12.10.0 (2022-05-03)

  • setUserId 메서드는 더 이상 사용되지 않으며 setUserIdWithCompletion() API가 대신 사용됩니다.
  • 버그 수정.

12.9.1 (2022-03-16)

  • 코드는 변경되지 않았으며 Android 및 Unity SDK에 맞춰 버전 변경.

12.9.1 (2022-03-16)

  • 코드는 변경되지 않았으며 Android 및 Unity SDK에 맞춰 버전 변경.

12.9.0 (2022-01-13)

  • Swift 지원을 개선하기 위한 다양한 변경 사항(null 허용 여부 플래그 및 리턴 타입 수정 포함).
    • 리턴 타입을 분명히 하기 위해 Swift에서 TJPlacement를 인스턴스화 할때 이제 팩토리 메서드(TJPlacement.placement(...)) 대신 표준 이니셜라이저(TJPlacement(...))를 사용합니다.
  • SDK 요청 시 파라미터 추가. 탭조이에 전송되는 정보 참고.
  • 버그 수정.
  • 이지앱에서 ATT 호출 시 문제 수정.
  • Xcode 13 기반 빌드

12.8.1 (2021-05-25)

  • SKAdNetwork 2.2 및 View-Through Attribution 지원 (Xcode 12.5로 빌드 된 앱용)
  • MRAID SKAdNetwork 지원
  • SDK 요청 파라미터 추가. 탭조이로 전송되는 정보 참조
  • 버그 수정 및 기능 개선

12.8.0 (2021-03-16)

  • XCFramework 적용 (Xcode version 11 이상)
  • TapjoyResources.bundle 추가 필요없도록 개선
  • 하위 호완 버전 iOS 9 까지로 변경
  • arm64 Apple Silicon 기반 맥 컴퓨터에서 시뮬레이터 지원
  • 퍼플리셔를 위한 구현 예시로 샘플앱인 EasyApp에서 AppTrackingTransparency 프롬프트 표시되도록 추가
  • 기타 오류 수정 및 기능 추가

12.7.1 (2020-11-02)

  • SKAdNetwork Version 2.0 관련 수정
  • iOS14 기본 브라우저 변경 시 요류 방지
  • 버그 수정 및 기능 추가

12.7.0 (2020-09-16)

  • SDK 요청에 파라미터 추가. 참고 : [[Tapjoy에 전송되는 정보|../support/Info-sent-to-Tapjoy]]
  • 버그 수정 및 기능 추가

12.6.1 (2020-07-09)

  • Tapjoy SDK 리소스 번들은 이제 Unity 2019.3x와 호환됩니다.

12.6.0 (2020-06-29)

이번 릴리즈는 California Consumer Privacy Act (CCPA) 관련된 기능을 포함하고 있습니다. 각각의 플랫폼에는 (iOS, Android, Unity, C++) “TJPrivacyPolicy” 클래스가 추가되었고, 이를 통해 모든 프라이버시 관련된 플래그를 설정할 수 있습니다. (GDPR, user consent, below consent age, US privacy). 구현에 대한 자세한 내용은 이 문서를 참고해 주세요.

NB: 이전 버전에서 프라이버시 정책 관련된 API를 사용하여 값을 세팅했더라도 새로운 SDK에서 기존에 저장된 값을 읽어서 사용하기 때문에 별도의 작업이 필요하지는 않습니다. 그러나 향후 SDK 업데이트를 고려해 새로운 메소드를 사용하여 코드를 업데이트 하실 것을 권장드립니다.

  • TJPrivacyPolicy 클래스 추가 : GDPR, US Privacy, Consent and Below Consent Age 관련 기능을 하나의 클래스에서 제공
  • 이전 GDPR, User Consent and Below Consent Age 관련 API 지원 중단 예정

12.4.2 (2020-02-07)

  • 버전 올림

12.4.1 (2020-01-07)

  • setUserIDWithCompletion 요류 방지 방어로직 추가
  • 버그 수정

12.4.0 (2019-12-04)

  • 가상화폐 지급 콜백에서 커스텀 파라메터 지원하도록 수정 (출시 예정 기능)
  • 그외 오류 수정

12.3.4 (2019-10-09)

  • SceneDelegate 지원
  • UIAlertView 대체 UIAlertController 지원

12.3.3 (2019-09-20)

  • IAB Open Measurement SDK 가 UIWebView를 사용하지 않도록 업데이트

12.3.2 (2019-09-16)

  • UIWebView 사용부분 제거
  • iOS 13 지원
  • 사용하지 않는 프레임워크 제거
  • 기타 오류 수정

12.3.1 (2019-06-06)

  • 추가적인 비디오 퍼포먼스 확장 기능

12.3.0 (2019-05-28)

  • 비디오 퍼포먼스 확장 기능
  • Apple사의 인센티브 인스톨에 대한 정책을 준수하기 위해서 웹기반 오퍼월이 제외 되었습니다(기존 tapjoy.com 혹은 TJC 오퍼월). 웹기반 오퍼월로 연결되는 SDK 호출 부분도 제외 되었습니다.
  • didClick 메소드 TJPlacementDelegate에 추가. 하지만 서버기능이 완려되기 전까지는 아직 동작하지 않습니다. 2019년 6월중에 해당 기능을 사용할 수 있게 될 예정입니다.
@protocol TJPlacementDelegate <NSObject>
@optional
- (void)didClick:(TJPlacement*)placement;

12.2.1 (2019-03-14)

  • iOS SDK로 앱을 제작할 때 "unable to open object file"라는 경고를 수정.
  • AdMob 연동 시 발생하는 화면 오리엔테이션 고정 문제 수정.
  • 사용되지 않는 코드가 제거되어 이전 버전보다 10% 사이즈 감소. (보다 자세한 내용은 FAQ 에서 확인.)

12.2.0 (2018-11-13)

이번 릴리즈에서는 "사용자 동의 연령 미만"을 나타내는 플래그를 추가함으로써 퍼블리셔가 COPPA 규정을 준수하면서 광고 수익화를 하는데 도움을 주고 있습니다. 이 기능을 사용하기 위해서는 퍼블리셔가 직접 추가된 API를 사용해 구현하여야 하며, 이는 탭조이 SDK에 의해 자동으로 연동이 되지 않습니다. COPPA 관련 법안과 규제에 대한 책임은 퍼블리셔에게 있습니다.

미국에서 아동 온라인 개인 정보 보호법 (COPPA)은 (a) 대상 사용자가 13 세 미만의 아동임을 실제적으로 인지하거나 (b) 13 세 미만의 어린이를 대상으로 하는 서비스(앱 포함)를 운영하는 온라인 서비스 운영자 특정 규정 준수를 요구합니다.

마찬가지로 GDPR은 온라인 동의를 위해 해당 지역 최소 연령 이하의 데이터 주체와 관련하여 특정 요구 사항을 부과합니다(각 회원국이 수립 한 13 세에서 16 세까지의 연령 범위).

13세 미만의 어린이를 대상으로하지 않지만 해당 연령대 소수 유저를 보유하고있는 애플리케이션의 경우, 해당되는 유저에 대해서 아래 API를 사용하여 광고 추적을 수행하지 않게 할 수 있습니다.

+(void)belowConsentAge:(BOOL)isBelowConsentAge;

이 API 통해 해당 설정을 TRUE로 설정하면 탭조이 SDK는 해당 유저에 대해서 '광고 추적 제한' 옵션이 활성화 된것으로 처리합니다. 이 경우 탭조이 광고가 계속 해당 유저에게 송출될 수는 있지만, 사용자 행위는 기록되지 않고 개인화 기반 타케팅 광고도 송출되지 않게 됩니다.

12.1.0 (2018-10-11)

웹기반 탭조이 오퍼월의 직접 연결 링크를 가져올 수 있습니다. 웹기반 오퍼월을 활성화 하려면, 가상화폐 화면에서 ‘Show "More Rewards" banner’ 체크박스를 체크해야합니다. 또한 충분한 일일방문 사용자를 보유해야 합니다.(>100). 만일 웹기반 오퍼월이 활성화 되지 않은 상태에서 링크를 요청하면 에러가 반환됩니다. 다음은 예제입니다.

[Tapjoy getOfferwallURL:placementName completion:^(NSURL *url, NSDate *expires, NSError *error) {
  if (error) {
     // handle the error
    } 
  else {
     [self openURL:url]; //actually open the web-based offerwall in Safari browser 
    }
 }
];

SDK에 포함된 TapjoyEasyApp에서도 구현내용 예제를 확인하실 수 있습니다. "Show Offerwall in Safari" 버튼을 클릭하면 url을 요청하고 Safari 브라우저를 실행하게 됩니다.

  • 앱승인을 위해서 특별한 info.plist 항목을 요구하는 모든 코드 삭제. 이 릴리즈로, NSMotionUsageDescription, NSAppleMusicUsageDescription, NSPhotoLibraryUsageDescription 에 대한 설명 제시는 더이상 필요하지 않습니다. 다른 항목들은 이전 릴리즈에서 모두 삭제되었습니다. 따라서 탭조이 SDK 사용에 따른 info.plist 항목 추가는 더이상 필요하지 않습니다.

오류 수정:

  • 가로/세로 화면 전환시 문제점 수정
  • contentDidDisappear 호출 시 바로 다른 광고를 요청했을떄 발생하던 오류 수정
  • 드물게 앱크래쉬를 일으키던 NSUserDefaults 동기화 요청 제거

12.0.0 (2018-06-26)

  • IAB Open Measurement SDK가 Tapjoy SDK에 통합됨. 퍼블러셔측 추가적인 코딩은 필요하지 않습니다.
  • 최소 지원 버전 iOS8로 변경.
  • SDK 프로그래매틱 미디에이션 지원 기능 추가. 서버 & 대시보드 기능은 곧 추가될 예정입니다.
  • 예제 EasyApp의 "Get Direct Play Video Ad" 버튼 수정
  • Note: Bitcode의 최근 업데이트로 인해, Xcode 9.3 이후 버전을 사용하셔야 합니다.

11.12.2 (2018-05-18)

이 릴리즈는 퍼블리셔 파트너사에서 GDPR(General Data Protection Regulation)을 준수할 수 있도록 지원해 주는 기능을 포함하고 있습니다. 각각의 플랫폼들에는(iOS, Android, Unity, AIR) 두가지 API가 추가 되었습니다. 탭조이는 "합법적인 이익"(legitimate interest)을 토대로 GDPR을 준수하므로 다음 기능은 필수 사항이 아닙니다. 그러나 탭조이에 동의된 정보를 전달하려는 퍼블리셔들을 위해서 관련 기능들이 제공됩니다. 퍼블리셔는 해당 API를 사용해서 기능을 구현하고 사용자가 정보제공에 동의하지 않으면 탭조이는 해당 사용자에게 비관심기반 콘텐츠를 제공합니다.

관련 API들은 탭조이 컨낵트 요청이나 컨텐츠 요청이 발생하기 전에 호출 될 수 있습니다.

setUserConsent 함수 요청은 "0″ (user does not consent), "1″ (user does consent) 혹은 보다 자세한 동의 문자열을 인자로 받을 수 있습니다. 보다 자세한 동의 문자열 관련 내용은 IAB에서 지원하고 있는 "Transparency and Consent Framework" 웹사이트에 링크된 관련 문서를 통해서 확인할 수 있습니다. 선택적으로 "GDPR 적용 대상"을 설정하는 플래그를 YES / TRUE (사용자가 GDPR 규칙의 적용을받는 경우) 또는 NO / FALSE (사용자가 GDPR 규칙의 적용을받지 않는 경우)로 설정할 수 있습니다. 이 기능은 애플리케이션이 GDPR의 사용자 적용 가능 여부를 자체적으로 판단할 수 있는 경우에만 호출해야합니다. 이 기능이 호출되지 않으면 탭조이는 애플리케이션이 GDPR 적용에 대한 결정을 내리지 않았다고 가정하고 자체적으로 GDPR 적용 가능성 결정합니다.

Added:
+(void)setUserConsent:(NSString*) value;
Example:
[Tapjoy setUserConsent:@"0″]; // 이 사용자는 동의하지 않습니다
+(void)subjectToGDPR:(BOOL) gdprApplicability;
Example:
[Tapjoy subjectToGDPR:NO];   // 이 사용자는 GDPR의 적용을받지 않습니다.

GDPR FAQ

사용자가 동의하지 않거나 기존 동의를 철회하는 경우에도 Tapjoy SDK는 광고 식별자를 Tapjoy에 전송합니까?

예. 위에 나열된 기능은 관심 기반 광고를 위해 설계되었으며 관심 기반 광고에 대한 사용자 동의 여부를 Tapjoy에 전송합니다. 따라서 동의 상태는 SDK 초기화 또는 광고 요청 중에 Tapjoy SDK가 광고 식별자 (iOS의 경우 IDFA 또는 Android의 경우 GAID)를 보내는 것을 비활성화하지 않습니다.

어플리케이션의 요구사항에 따라 Tapjoy SDK의 초기화 여부를 결정하는 것은 어플리케이션의 책임입니다. 예를 들어 애플리케이션의 광고 식별자 수집에 대한 합법적인 근거가 동의이고 사용자가 동의하지 않은 경우 해당 사용자를 위해 Tapjoy SDK를 초기화해서는 안됩니다.

GDPR이 적용되지 않는 국가의 사용자가 동의하지 않거나 동의를 철회하는 경우 Tapjoy는 해당 사용자에 대한 비 관심 기반 광고로 광고를 제한합니까?

Tapjoy SDK는 사용자가 GDPR의 적용을 받는지 여부를 판단하는 방법이 없는 애플리케이션을 포함하여 다양한 유형의 애플리케이션을 처리 할 수있는 유연성을 제공합니다.

따라서 애플리케이션이 어떤 결정도 내리지 않는 경우 (즉, subjectToGDPR 기능이 호출되지 않음) Tapjoy 서버는 사용자가 GDPR의 대상인지 여부를 결정합니다. 그런 다음 Tapjoy는 GDPR이 적용되는 사용자로부터 발생하는 것으로 Tapjoy가 결정한 광고 요청에 대해서만 사용자의 동의 환경 설정을 존중합니다.

만일 의도하는 바가 모든 국가의 사용자가 GDPR의 적용을 받는 것처럼 동의를 철회하도록 허용하려는 경우, 동의하지 않는 모든 사용자에 대해 TRUE로 subjectToGDPR 메서드를 호출하여 수행 할 수 있습니다. 이 경우 Tapjoy의 서버는 subjectToGDPR 메서드 호출의 내용을 존중하며 사용자가 GDPR의 적용을 받는지 여부를 자체적으로 결정하지 않습니다. 퍼블리셔는 또한 support@tapjoy.com에 연락하여 GDPR이 적용되는지 여부에 관계없이 어플리케이션의 모든 사용자의 동의 설정을 존중하도록 Tapjoy를 요청할 수 있습니다.

  • bitcode의 최근 업데이트로 인해 최신버전의 Tapjoy iOS SDK와 함께 Xcode 9.3 이상을 사용해야 합니다.

11.12.1 (2018-04-30)

  • 앱스토어 앤드 카드 UX 향상을 위한 업데이트
  • 특정 오퍼월 오퍼 타입의 설명이 표시부분 개선

11.12.0 (2018-03-29)

  • 필수 프레임웍에서 CoreLocation 제외.
  • "탭조이 플랫폼 미디에이션" 기능 제거. 탭조이 플랫폼 미디에이션은 이미 1년이상 지원되지 않는 기능입니다. 만일 해당 기능을 계속 이용하고자 하신다면 이 버전의 SDK로 업데이트 하실 수 없습니다. 업계 표준인 "어탭터 연동 방식의 미디에이션"으로 전환하시기를 권장드립니다. Mopub, ironSource, Fyber, Appodeal 등과 같이 일반적인 어댑터 미디에이션(비디오, 중간삽입광고)의 경우 이 변경사항으로 인한 영향을 받지 않습니다.
  • 오류 수정
    • 시리, 팝업, 헤드셋 제거 시 발생하던 비디오 멈춤 현상 수정.
    • UIColor colorFromHexString 때문에 드물게 발생하는 크래쉬 현상 수정.
    • 백그라운드 모드로 부터 앱이 재실행 되었을때 드물게 탭조이 비디오의 오디오가 수초간 재생되는 현상 수정.