간편한 InMobi SDK를 활용하여 사용자에게 풍부한 광고 경험을 제공함으로써 iOS와 Android 앱을 수익화할 수 있습니다.
간단한 단계를 통해 시작해 보십시오.
참고: URL이 없는 앱의 경우 테스트 모드가 기본으로 활성화됩니다. 앱이 정식으로 출시되면 링크를 클릭하여 아래 보이는 대시보드에서 URL을 입력할 수 있습니다.
이제 앱 수익화 준비가 완료되었습니다.
수익을 지급받으려면 지급 프로필을 생성, 인증, 활성화해야 합니다. InMobi의 정산 주기는 60일입니다. 다시 말해 한 달간의 수익은 60일 이후에 지급됩니다. PayPal이나 전신 송금/RTGS 등을 통해 수익을 지급받을 수 있습니다.
지급 약관에 관한 자세한 정보는 여기를 참고하십시오.
광고 콘텐츠를 차단하여 사용자에게 보이는 광고를 선별할 수 있습니다. InMobi는 광고를 차단할 수 있는 3단계의 광고 필터를 지원합니다.
도메인 필터:
특정 도메인의 광고를 차단합니다. 예를 들어, InMobi 광고를 차단하고 싶다면 도메인 'inmobi.com'을 추가합니다. inmobi.com, inmobi.co.jp와 같이 InMobi의 모든 도메인을 차단하려면 'inmobi'를 추가합니다.
카테고리 필터:
카테고리를 기반으로 광고를 차단합니다. 특정 카테고리를 차단하면 해당 카테고리로 분류된 광고는 사이트나 앱에 제공되지 않습니다. 예를 들어, 아동용 앱의 경우 '정치'나 '도박' 카테고리로 분류된 광고를 차단할 수 있습니다.
URL 또는 키워드 필터:
광고 텍스트나 랜딩 페이지 URL에 포함된 특정 문구를 기반으로 광고를 차단합니다. 예를 들어, '무기'나 '바이러스'와 같은 텍스트가 포함된 광고를 사이트나 앱에 제공되지 않도록 차단할 수 있습니다.
MoPub과 InMobi SDK를 통합하는 것이 쉽습니다. 연동 방법은 다음 링크를 참고하십시오.
MoPub 미디에이션은 다음 광고 유형을 지원합니다.
참고: InMobi는 사용자 정의 크기를 제외한 위의 모든 광고를 지원합니다. 퍼블리셔가 사용자 정의 크기로 얻을 수 있는 결과는 다른 형식을 통해서도 쉽게 얻을 수 있습니다.
InMobi SDK 최신 버전은 iOS 9 이상을 지원합니다. 또한, 이 버전의 iOS SDK에는 XCode 9.3 이상이 필요합니다.
InMobi SDK 최신 버전은 Android OS 버전 4.0.3 (API 레벨 15) 이상을 지원합니다.
버전 |
iOS - 8.2.0 Android - 8.2.1 |
iOS - 7.3.2 Android - 7.3.0 |
크기 |
iOS - 953 KB (.IPA 인플레이션)
Android - 415 KB (.APK 인플레이션) |
iOS - 650 KB (.IPA 인플레이션)
Android - 395 KB (.APK 인플레이션) |
SDK 링크 |
|
|
어댑터 |
MoPub에 연동한 적이 없는 경우 MoPub 문서를 참고할 수 있습니다.
참고: URL이 없는 앱의 경우 테스트 모드가 기본으로 활성화됩니다. 앱이 정식으로 출시되면 링크를 클릭하여 아래 보이는 대시보드에서 URL을 입력할 수 있습니다.
이제 앱 수익화 준비가 완료되었습니다.
배치 ID는 MoPub의 광고 ID를 나타내는 InMobi 용어입니다. 예를 들어, InMobi 네트워크를 통해 배너 광고를 수익화하려면 "배너"라는 배치 ID를 생성해야 합니다.
성공적인 수익화를 위해 다음 표를 참고하십시오.
MoPub 광고 유닛 유형 | InMobi 배치 유형 |
배너 광고 | 배너 광고 |
중간 크기(300x250 배너 광고) | 배너 광고 |
전체 화면 광고 | 전면 광고 |
보상형 동영상 광고 | 보상형 동영상 광고 |
네이티브 광고 | 네이티브 콘텐츠 광고 |
수익을 지급받으려면 지급 프로필을 생성, 인증, 활성화해야 합니다. InMobi의 정산 주기는 60일입니다. 다시 말해 한 달간의 수익은 60일 이후에 정산됩니다. PayPal이나 전신 송금/RTGS를 통해 수익을 지급받을 수도 있습니다.
지급 약관에 관한 자세한 정보는 여기를 참고하십시오.
참고: 연동을 진행하려면 InMobi SDK와 사용자 지정 이벤트가 모두 필요합니다.
“InMobiInterstitialCustomEvent”
입니다. 이때, 정규화된 사용자 지정 이벤트 이름을 사용해야 합니다.
광고 유형별 사용자 지정 이벤트의 전체 목록은 다음과 같습니다.
광고 | 클래스 이름 |
배너 광고 | <your_package_name>.InMobiBannerCustomEvent</your_package_name> |
중간 크기(300x250 배너 광고) | <your_package_name>.InMobiBannerCustomEvent</your_package_name> |
전체 화면 광고 | <your_package_name>.InMobiInterstitialCustomEvent</your_package_name> |
보상형 동영상 광고 | <your_package_name>.InMobiRewardedCustomEvent</your_package_name> |
네이티브 광고 |
|
아래 스크린샷에 보이는 대로 배치 ID는 배치 섹션 아래 표시됩니다.
다음 형식에 따라 계정 ID와 배치 ID를 사용자 지정 이벤트 클래스 데이터 플레이스홀더에 입력합니다.
{"placementid": "<enter here="" id="" inmobi="" placement="" your="">","accountid":"<enter account="" here="" id="" inmobi="" your="">"}
</enter></enter>
입력 예시는 다음과 같습니다.
{"placementid":"1468850508657","accountid":"2072131215e04a5ea20e25ffec1a7171"}
방법 1: jCenter를 통해 최신 SDK 추출
Gradle을 사용하여 Android 앱을 빌드하는 경우 jCenter에서 SDK 최신 버전을 추출할 수 있습니다.
방법:
다음을 최상위 수준 build.gradle
파일에 포함합니다.
allprojects {
repositories {
jcenter()
}
}
다음 라인을 앱 모듈의 build.gradle
내 종속성 요소에 추가합니다.
compile 'com.inmobi.monetization:inmobi-ads:8.x.x'
방법 2: SDK 라이브러리를 앱 프로젝트에 추가
여기에서 InMobi SDK 최신 버전을 다운로드한 후 앱 모듈의 libs/
디렉터리에 라이브러리만 복사해도 됩니다.
라이브러리를 프로젝트 종속성에 추가하려면 다음 라인을 모듈의 build.gradle
내 종속성 요소에 추가합니다.
compile fileTree(dir: 'libs', include: ['*.jar'])
InMobi 광고 SDK로 수익화하려면 다음 종속성을 추가해야 합니다.
참고: RecyclerView 라이브러리의 종속성 관련 설정을 애플리케이션의 gradle 스트립트에 포함하지 않을 경우, 전면 배너의 Ad Request(광고 요청)에 실패하실 수 있습니다.
이는 인모비 SDK를 활용한 광고 수익화에 영향을 줄 수 있습니다.
Google Play Advertising ID를 통해 광고 타게팅 효과를 높이려면 Android용 InMobi SDK에 Google Play Services 라이브러리가 필요합니다. InMobi SDK는 사용자가 위치 수집에 동의한 경우 Google Play Services를 통해 사용자의 정확한 위치를 파악합니다.
Google Play Services 클라이언트 라이브러리 추가 방법:
다음 라인을 앱 모듈의 종속성 요소에 추가합니다.
compile 'com.google.android.gms:play-services-basement:16.1.0'
compile 'com.google.android.gms:play-services-ads:17.2.0'
compile 'com.google.android.gms:play-services-location:16.0.0'
다음 요소를 앱 매니페스트에 추가합니다.
<meta-data android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version" />
Android용 InMobi SDK는 널리 쓰이는 Picasso 라이브러리를 통해 광고 에셋을 불러옵니다.
Picasso 라이브러리 추가 방법:
다음 라인을 Gradle 빌드 스크립트에 있는 앱 모듈의 종속성 요소에 추가합니다.
compile 'com.squareup.picasso:picasso:2.71828'
네이티브 스트랜드 광고 형식의 경우, support-v4 라이브러리를 추가해야 합니다.
이를 위해 다음 라인을 Gradle 빌드 스크립트에 있는 앱 모듈의 종속성 요소에 추가합니다.
compile 'com.android.support:support-v4:28.0.0'
권한 승인
다음 필수 권한을 앱 매니페스트에 포함해야 합니다. 필수 권한을 포함하지 않으면 InMobi 네트워크에서 앱을 수익화하는 데 지장이 있습니다.
<uses-permission android:name="android.permission.INTERNET">
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE">
</uses-permission></uses-permission>
위 필수 권한을 비롯하여 광고 타게팅 효과를 높일 수 있도록 ACCESS_COARSE_LOCATION
또는 ACCESS_FINE_LOCATION
중 하나를 포함하는 것이 좋습니다. 필수 권한은 아니지만 포함할 경우 정확한 광고 타게팅이 가능합니다.
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION">
</uses-permission>
타게팅을 더 개선하려면 ACCESS_WIFI_STATE
및 CHANGE_WIFI_STATE
권한을 매니페스트에 추가합니다.
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE">
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE">
</uses-permission></uses-permission>
리치 미디어 광고를 요청하려는 경우 다음 권한을 추가할 수 있습니다.
<uses-permission android:name="android.permission.READ_CALENDAR">
<uses-permission android:name="android.permission.WRITE_CALENDAR">
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE">
</uses-permission></uses-permission></uses-permission>
앱 설치 속성
필수 허가:
앱 설치 속성의 경우, 다음을 매니페스트 파일에 추가합니다.
<receiver android:enabled="true" android:exported="true" android:name="com.inmobi.commons.core.utilities.uid.ImIdShareBroadCastReceiver" tools:ignore="ExportedReceiver">
<intent-filter>
<action android:name="com.inmobi.share.id">
</action></intent-filter>
</receiver>
하드웨어 가속
하드웨어 가속을 통해 HTML5 동영상 광고를 표시할 수 있습니다. 이를 위해 hardwareAccelerated:true
요소를 application
태그에 추가합니다.
Proguard 구성
Proguard를 통해 사용하지 않는 심볼을 제거하고 최종 앱 공간을 줄일 수 있습니다. 다음 Proguard 지시를 앱의 프로가드 구성 파일에 추가합니다.
-keepattributes SourceFile,LineNumberTable
-keep class com.inmobi.** { *; }
-dontwarn com.inmobi.**
-keep public class com.google.android.gms.**
-dontwarn com.google.android.gms.**
-dontwarn com.squareup.picasso.**
-keep class com.google.android.gms.ads.identifier.AdvertisingIdClient{public *;}
-keep class com.google.android.gms.ads.identifier.AdvertisingIdClient$Info{public *;}
#skip the Picasso library classes
-keep class com.squareup.picasso.** {*;}
-dontwarn com.squareup.picasso.**
-dontwarn com.squareup.okhttp.**
#skip Moat classes
-keep class com.moat.** {*;}
-dontwarn com.moat.**
#skip AVID classes
-keep class com.integralads.avid.library.** {*;}
InMobi SDK는 Android 플랫폼의 최신 버전 인 Android P (API 레벨 28)와 호환됩니다.
Android P 이후 앱은 기본적으로 HTTPS를 통해 연결합니다. InMobi가 HTTPS의 채택을 지원하지만, 현재의 설정에서는 수요 파트너가 HTTPS도 지원해야합니다. 게시자는 수익 잠재력에 영향을 미치는 경우 설정을 HTTP로 변경할 수 있습니다.
MoPub 프로젝트에 사용자 지정 이벤트를 추가합니다. 여기에서 다운로드할 수 있는 샘플 코드의 일부에서 여러 광고 형식에 맞는 사용자 지정 이벤트를 확인할 수 있습니다. 사용자 지정 이벤트는 관련된 패키지 구조 아래 제공됩니다. 또한, 코드에는 MoPub SDK를 통한 미디에이션 방법을 보여주는 샘플 액티비티가 포함되어 있습니다.
코드 단계는 광고를 가져오고 불러오는 일반적인 MoPub 연동의 코드 단계와 동일합니다. 일반적인 MoPub “광고 ID”를 사용하여 광고를 요청하고 가져오십시오.
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, and they will have to pass on this consent information to InMobi.
InmobiGDPR.grantConsent()
or InmobiGDPR.revokeConsent()
APIs to pass on user consent. Publisher will have to call these based on the current Consent status. It should be called once every session. In case grantConsent()
is not called, we will presume that consent is not available for users belonging to EEA+UK+Switzerland region.InMobiGDPR.isGDPRApplicable()
to let InMobi know whether user belongs to GDPR compliant region.여기에서 전체 샘플 코드와 예제를 다운로드할 수 있습니다.
MoPub SDK 관련 최신 문서 및 코드 샘플은 여기에서 확인할 수 있습니다.
MoPub SDK가 테스트 광고 요청을 InMobi로 릴레이하도록 설정하는 방법:
주요 SDK 로그 활성화
광고를 연동하려는 액티비티에 다음 라인을 추가하여 주요 SDK 로그를 활성화할 수 있습니다.
InMobiSdk.setLogLevel(LogLevel.DEBUG);
또한, InMobi 포털에서 "테스트 모드"를 활성화한 경우, 광고와 광고 요청에 대한 Diagnostics 탭의 피드백을 활용할 수 있습니다.
위치 신호 전달
권장사항 : 사용자로부터 위치정보를 수집하는 경우, 해당 위치 정보를 전달 할 것을 추천합니다. 이는 위치 신호를 포함한 임프레션이 보다 높은 수익을 창출 할 수 있기 때문입니다.
위치 정보를 전송하지 않으려면, 인모비 대시보드의 해당 속성에서 “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);