iOS

iOS 연동 시작하기

1단계: InMobi 계정 생성

InMobi 계정 설정 방법:

  1. 퍼블리셔로 가입합니다.
  2. 이메일 인증을 완료합니다.

2단계: 앱 등록

  1. Add an App을 클릭한 다음 아래 보이는 링크를 클릭합니다.
  2. 앱 이름을 기재한 다음 플랫폼을 선택합니다.
  3. 13세 미만 아동을 대상으로 한 앱 관련 조항을 읽고 해당하는 경우 확인란을 선택합니다.

    참고: URL이 없는 앱의 경우 테스트 모드가 기본으로 활성화됩니다. 앱이 정식으로 출시되면 링크를 클릭하여 아래 보이는 대시보드에서 URL을 입력할 수 있습니다.
    이제 앱 수익화 준비가 완료되었습니다.

3단계: 배치 ID 생성

배치 ID는 AdMob의 광고 유닛 ID를 나타내는 InMobi 용어입니다. 예를 들어, InMobi 네트워크를 통해 배너 광고를 수익화하려면 "배너"라는 배치 ID를 생성해야 합니다.

성공적인 수익화를 위해 다음 표를 참고하십시오.

AdMob 광고 유닛 유형 InMobi 배치 유형
배너 광고 배너 광고
전면 광고 전면 광고
보상형 전면 광고 보상형 동영상 광고
네이티브 광고 네이티브 콘텐츠 광고
  1. 적합한 광고 형식을 선택하여 광고 배치를 결정합니다.
  2. 수익률을 높이려면 앱 내 광고의 위치와 맥락을 바탕으로 배치를 태그합니다.

4단계: 정산 정보 입력

수익을 지급받으려면 지급 프로필을 생성, 인증, 활성화해야 합니다. InMobi의 정산 주기는 60일입니다. 다시 말해 한 달간의 수익은 60일 이후에 정산됩니다. PayPal이나 전신 송금/RTGS를 통해 수익을 지급받을 수도 있습니다.

지급 약관에 관한 자세한 정보는 여기를 참고하십시오.

5단계: InMobi를 AdMob 대시보드의 광고 소스로 구성

  1. AdMob 계정에 로그인합니다.
  2. InMobi SDK를 통해 수익화할 특정 광고로 이동합니다.
  3. 미디에이션에서 광고 소스로 이동합니다(AdMob에만 연동한 경우 광고 소스 수는 1). 새 광고 네트워크를 선택한 다음 InMobi를 광고 소스로 추가합니다.
  4. InMobi용 네트워크 설정 페이지에서 InMobi 계정 ID와 배치 ID를 입력합니다.

    계정 ID는 아래 스크린샷에 보이는 대로 InMobi 계정에서 확인할 수 있습니다.

    배치 ID는 아래 스크린샷에 보이는 대로 배치 섹션에서 확인할 수 있습니다.

  5. 광고 네트워크 최적화 설정: eCPM을 자동으로 최적화하려면 AdMob UI에서 InMobi 리포팅 API 자격증명을 제공해야 합니다.
    이 기능에 필요한 암호 키를 생성하려면 InMobi 고객 지원에 문의하십시오.

보상형 전면 광고 설정

AdMob 대시보드나 InMobi 대시보드에서 보상을 구성할 수 있습니다.

InMobi 대시보드에서 동일하게 구성하려면 Use third-party ad network settings를 선택합니다.

보상 세부 정보에서 키 이름과 값을 입력합니다. InMobi SDK는 사용자가 동영상을 시청하고 나면 이 데이터 쌍을 처리합니다. 이후 AdMob은 보상 콜백에서 이 데이터를 반환합니다. 예를 들어, 다음과 같이 보상 세부 정보를 입력할 수 있습니다.

키 = Coins, 값 = 1000

InMobi 대시보드에서 보상을 설정할 때 보상 값은 정수로 지정해야 합니다.

네이티브 광고 설정

InMobi 대시보드에서 광고를 지원하려면 InMobi 대시보드에서 네이티브 콘텐츠 광고 배치 유형 생성 시 키 이름을 변경하지 않아야 네이티브 광고 형식을 InMobi에 완벽하게 연동할 수 있습니다.

참고:

  • InMobi 어댑터는 AdMob SDK의 네이티브 광고에 맞는 shouldRequestMultipleImages 플래그를 사용하지 않습니다.
  • InMobi 어댑터는 또한 AdMob SDK의 getImageOrientation/preferredImageOrientation 플래그를 사용하지 않습니다.

6단계: AdMob 어댑터를 통한 InMobi SDK 연동

InMobi SDK와 AdMob 어댑터는 쉽게 연동됩니다. InMobi에서 광고를 가져오려면 InMobi SDK와 어댑터를 모두 연동해야 합니다.

iOS 9+ 호환성 확보

iOS 9에 도입된 기본 설정인 App Transport Security(ATS)는 앱이 TLS 버전 1.2 이상의 네트워크에만 연결되도록 명령합니다. InMobi는 HTTPS를 채택해 왔지만, 현재 상황에 따라 파트너들은 이러한 변화를 수용하고 ATS의 모든 요건을 준수해야 합니다.

InMobi는 파트너와 함께 까지 보안 환경을 구축하고자 노력하고 있으며, 그동안 iOS 9 이상에서 광고를 제공하려면 다음 임시 조치를 진행해야 합니다.

  • ATS 비활성화(권장) - 파트너의 비보안 콘텐츠를 업데이트된 앱에서 올바르게 작동시킵니다. ATS 플래그를 비활성화하려면 다음 코드 스니펫을 앱의 Info.plist에 추가합니다.

    <key>NSAppTransportSecurity</key>
    <dict>
        <key>NSAllowsArbitraryLoads</key>
        <true>
    </true></dict>
    
    
  • 예외 조건으로 ATS 비활성화(권장하지 않음) - ATS 준수에 따라 마이그레이션할 경우를 대비하여 예외 목록에 있는 도메인을 추가하여 도메인의 보안 콘텐츠를 허용합니다.

    	<key>NSAppTransportSecurity</key>
       	<dict>
              <key>NSAllowsArbitraryLoads</key>
        	  <true>
               <key>NSExceptionDomains</key>
            	<dict>
                  	  <key>example.com</key>
                 	  <dict>
                      	<key>NSIncludesSubdomains</key>
                      	<true>
                  	  </true></dict>
             	</dict>
        	</true></dict>
    
    

참고: 예외 목록에 있는 InMobi 도메인과 CDN을 사용하면 런타임 도중 오류가 발생하게 됩니다.

프로젝트에 InMobi SDK 및 어댑터 추가

프로젝트에 SDK 추가

방법 1: Cocoapods를 사용한 연동(https://cocoapods.org/pods/InMobiSDK)

다음 단계를 진행합니다.

  1. Xcode 프로젝트 디렉터리로 이동한 다음 아래 명령을 사용하여 Podfile을 생성합니다.

    pod init
    
    
  2. Podfile 에 다음을 추가하십시오.

    참고: SDK 820 이상 :

    pod 'inmobi-ios-sdk', :source => 'https://bitbucket.org/aerservllc/inmobi-ios-sdk-pod.git'
    
    


    참고: SDK 7xx를 사용하는 경우 :

    pod 'InMobiSDK'
    
    
  3. 아래 명령을 실행하여 종속성 작업을 완료합니다.

     pod install
    
    


    Pod가 포함된 워크스페이스가 생성됩니다.

방법 2: 프레임워크를 직접 연동

다음 필수 프레임워크를 Xcode 프로젝트에 추가합니다

  • InMobiSDK.framework(다운로드한 InMobi iOS SDK 번들에 포함)
  • libsqlite3.0.tbd
  • libz.tbd
  • WebKit.framework

-ObjC 플래그를 Other Linker Flags에 추가합니다.

  1. Xcode에서 프로젝트를 엽니다.
  2. Application Target > Build Settings를 선택합니다.
  3. Search 상자에서 Other Linker Flags를 검색합니다.
  4. -ObjC 플래그를 추가합니다.

프로젝트에 InMobi 어댑터 추가

여기에서 어댑터를 다운로드합니다. InMobi 어댑터 번들을 Xcode 프로젝트에 추가합니다.

코드 단계

코드 단계는 광고를 가져오고 불러오는 일반적인 AdMob 연동의 코드 단계와 동일합니다. AdMob 계정 ID로 AdMob SDK와 AdMob "광고 ID"를 초기화하여 광고를 요청하고 가져옵니다.

Note

Do not remove window property from the AppDelegate.h file as it may lead to an undefined behavior.

Passing user consent information to InMobi SDK

The publishers monetizing in EEA region will have to pass user consent to InMobi SDK. The publishers can use consent gathering mechanism of their choice (like Consent SDK), and they will have to pass on this consent information to InMobi.

To pass consent information, the publisher has to call:


 [InMobiConsent updateGDPRConsent:consentObj];

The consentObj will be a JSON object with the following keys:

Key Type Inference
gdpr_consent_available boolean true - Publisher has provided consent to collect and use user’s data.

false - Publisher has not provided consent to collect and use user’s data.

Note

Any value other than true and false is invalid and will be treated as value not provided by publisher, i.e. empty value.

gdpr String Whether or not the request is subjected to GDPR regulations, deviation from the set values true and false, indicate an unknown entity.

추가 정보

여기에서 샘플 코드를 다운로드할 수 있습니다.

AdMob SDK 관련 최신 문서 및 코드 샘플은 여기에서 확인할 수 있습니다.

7단계: 연동 테스트

AdMob SDK가 테스트 광고 요청을 InMobi로 릴레이하도록 설정하는 방법:

  • AdMob을 포함한 모든 네트워크의 광고 네트워크 최적화를 수동으로 설정합니다.
  • InMobi의 최소 eCPM이 다른 네트워크보다 높도록 모든 네트워크의 최소 eCPM을 수동으로 설정합니다. 이를 통해 테스트 광고 요청이 InMobi로 릴레이됩니다. 아래 예시에서 InMobi는 $5로, AdMob은 $0.01로 설정되어 있습니다.

위 단계를 진행하면 광고 로드를 위해 요청을 테스트하고 InMobi SDK에 릴레이할 수 있습니다.

주요 SDK 로그 활성화

아래와 같이 다음을 앱 델리게이트의 .m 파일 내 didFinishLaunchingWithOptions 메소드에 추가합니다.

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{    
	//Initialize InMobi SDK with your account ID
[IMSdk initWithAccountID:@"Insert InMobi account ID here"];
//Set log level to Debug
[IMSdk setLogLevel:kIMSDKLogLevelDebug]; 
	// Do your stuff.
	return YES;
}

또한, 광고와 광고 요청에 대한 Diagnostics 탭의 피드백을 활용할 수 있습니다.

8단계: 고급

위치 및 통계 정보 제공

위치 신호 전달

권장사항 : 사용자로부터 위치정보를 수집하는 경우, 해당 위치 정보를 전달 할 것을 추천합니다. 이는 위치 신호를 포함한 임프레션이 보다 높은 수익을 창출 할 수 있기 때문입니다.
위치 정보를 전송하지 않으려면, 인모비 대시보드의 해당 속성에서 “Location Automation”을 끄면 됩니다.

InMobi SDK API를 통해 광고에 맞는 사용자 지정 이벤트 클래스를 수정하여 데이터에 전달합니다. 자세한 정보는 샘플 코드를 참고하십시오.

InMobi는 다음 매개변수를 지원합니다.

메소드 이름 설명

setAgeGroup

AgeGroupBelow18

AgeGroupBetween18And24

AgeGroupBetween25And29

AgeGroupBetween30And34

AgeGroupBetween35And44

AgeGroupBetween45And54

AgeGroupBetween55And65

AgeGroupAbove65

사용자의 연령 그룹

setEducationType

EducationHighSchoolOrLess

EducationCollegeOrGraduate

EducationPostGraduateOrAbove

교육 수준:

  • 고등학교 이하
  • 대학교
  • 대학원 이상

setAge

정수

사용자의 연령

setInterests

임의 스트링

사용자의 추가적인 관련 설명 또는 선호도, 콤마로 구분 올바른 허용 값은 아래 언급됨

setPostalCode

임의 스트링

우편 번호(보통 5자리 숫자)

setAreaCode

임의 스트링

지역 번호(전화번호의 일부)

setLanguage

임의 스트링

사용자의 모국어(알 수 있는 경우)

setLocationWithCityStateCountry

임의 스트링

전달된 도시, 주/도, 국가로 위치를 설정함

setKeywords

임의 스트링

광고 요청에서 전달할 키워드

InMobi SDK 통계 매개변수를 설정하는 샘플입니다. 퍼블리셔는 자신이 원하는 대로 매개변수 값을 설정할 수 있습니다.

InMobiSdk.setAreaCode("080");
InMobiSdk.setEducation(Education.HIGH_SCHOOL_OR_LESS);
InMobiSdk.setGender(Gender.MALE);
InMobiSdk.setAge(23);
InMobiSdk.setPostalCode("122009");
InMobiSdk.setLogLevel(LogLevel.DEBUG);
InMobiSdk.setLocationWithCityStateCountry("blore", "kar", "india");
InMobiSdk.setLanguage("ENG");
InMobiSdk.setInterests("dance");
InMobiSdk.setYearOfBirth(1980);

이 페이지가 도움이 되었나요?

이 페이지에서

마지막 업데이트 날짜: 17 Sep, 2020