[Ext.point] κ³΅ν΅ μ μ© νλͺ© μ°λ
κ³΅ν΅ μ μ© νλͺ© μ°λμ ν΅ν΄ Extauth λͺ¨λμ μ΄μ©νμ¬ κ³ μ ν¬μΈνΈ μλΉμ€κ° μμ΄λ, μΈλΆ ν¬μΈνΈ μμ€ν μ ν΅νμ¬ ν¬μΈνΈ μλΉμ€λ₯Ό μ 곡ν©λλ€. ν΄λΉ λ¬Έμμμλ SDK μ μ© λ° μ΄κΈ°νλ₯Ό μ§ννκ³ , μ¬μ©μ μ 보 κ΄λ¦¬μ μ°κ΄λ νλͺ©μ μ€μ ν©λλ€.
μ΄ λ¬ΈμλΒ κ΄κ³ μ§λ©΄μ μ’ λ₯/ μμ μκ΄μμ΄ μ°λμ΄ λμ΄μΌ νλ κ³΅ν΅ μ μ© νλͺ©μ λλ€.Β
Β
λ€μ κ³Όμ μ΄ μλ£λμλμ§ νμΈμ΄ νμν©λλ€.
μμ κ³Όμ μ€ μλ£λμ§ μμ νλͺ©μ΄ μλ€λ©΄, λ²μ¦λΉμ BD 맀λμ μκ² λ¬Έμ λ°λλλ€.
Β
μ°λνκΈ°
1. SDK μ μ©νκΈ°
build.gradle μ μ©νκΈ°
[1]Β build.gradle
Β μ dependencies μ μλμ μ½λλ₯Ό μ μ©ν΄μΌ ν©λλ€.
repositories {
maven { url "https://dl.buzzvil.com/public/maven" }
}
...
dependencies {
implementation ("com.buzzvil:buzzad-benefit:3.29.+")
}
Β
SDK μ΄κΈ°ννκΈ°
[1] AndroidManifest.xml μ λ€μ μ½λλ₯Ό μ μ©ν΄μΌ ν©λλ€.
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.buzzvil.packagename">
<application>
...
<!-- Caution: Replace `000000000000` with Your AppKey -->
<meta-data
android:name="com.buzzvil.APP_KEY"
android:value="app-pub-000000000000" />
</application>
</manifest>
[2] Application Class - onCreate μ λ€μ μ½λλ₯Ό μ μ©ν΄μΌ ν©λλ€.
public class App extends Application {
@Override
public void onCreate() {
//// Extauth λͺ¨λ νμ±νλ₯Ό μν΄ λ€μ νλͺ©λ€μ μΆκ°ν©λλ€. ////
// ExtauthConfig - (1) AppIcon (3) loginTitle (4) loginDescription (5) comebackDeeplink λ₯Ό λ³κ²½ν μ μμ΅λλ€.
final BuzzAdBenefitExtauthConfig extauthConfig = new BuzzAdBenefitExtauthConfig.Builder(this)
.setAppIcon(context.getApplicationInfo().getIcon())
.build();
// ExtauthInstaller
final BuzzAdBenefitExtauthInstaller extauthInstaller = new BuzzAdBenefitExtauthInstaller(extauthConfig);
final BuzzAdBenefitConfig buzzAdBenefitConfig = extauthInstaller.installTo(new BuzzAdBenefitConfig.Builder(this))
.build();
// (3) μ΄κΈ°ν
BuzzAdBenefit.init(this, buzzAdBenefitConfig);
}
}
μμμ ν λ§λ³κ²½ κ°μ΄λμ λ°λΌ λ³κ²½ν μ μμ΅λλ€.
[3] νμΈμ΄ νμν νλͺ© - κ°κ° μ νλͺ©μ (1), (2), (3) μ ν΄λΉν©λλ€.Β
Config
Β λ μμ βExtauth λͺ¨λ 미리 보기β - '1) κ΄κ³ λ₯Ό μ²μμΌλ‘ μ°Έμ¬νμ¬ μΈμ¦ νλ©΄μ΄ λ
ΈμΆ' μ ν΄λΉνλ©°, λ€μμ μ€μ ν μ μμ΅λλ€.Β (μλλ₯Ό ν΄λ¦νμ¬ μ΄λ―Έμ§λ₯Ό νμΈν μ μμ΅λλ€.)
setAppIcon(@DrawableRes int)
Β μ ν΅ν΄ βμΈλΆ μλΉμ€ μ°λ νμ΄μ§βμμ μ¬μ©ν μ± μμ΄μ½μ μ€μ ν©λλ€. μμ μμμλ κΈ°λ³Έ μ€μ κ°μ μ μ©νμμ΅λλ€. μ± μ 체 μ€μ μ μν₯μ μ£Όμ§ μμ΅λλ€.setThemeColor(@ColorInt int)
Β μ ν΅ν΄ βμΈλΆ μλΉμ€ μ°λ νμ΄μ§βμμ μ¬μ©ν λ²νΌμ κΈ°λ³Έμμ μ€μ ν©λλ€. μμ μμμλ κΈ°λ³Έ μ€μ κ°μ μ μ©νμμ΅λλ€. μ± μ 체 μ€μ μ μν₯μ μ£Όμ§ μμ΅λλ€.setLoginTitle(String)
μ ν΅ν΄ βμΈλΆ μλΉμ€ μ°λ νμ΄μ§βμμ μ¬μ©ν νμ΄ν 문ꡬλ₯Ό μ€μ ν©λλ€. μμ μμμλ 'this is loginTitle
'μ μ€μ νμ΅λλ€.setLoginDescription(String)
μ ν΅ν΄ βμΈλΆ μλΉμ€ μ°λ νμ΄μ§βμμ μ¬μ©ν μ€λͺ 문ꡬλ₯Ό μ€μ ν©λλ€. μμ μμμλ 'this is loginDescription
'μ μ€μ νμ΅λλ€.(μ€μ)Β
init
Β μ½λλΒonCreate
Β μ μ μ©νλ κ²μ κΆμ₯ν©λλ€. μ΄λ€ μ΄μ (λ΄λΆ μ μ± λ±)λ‘ λ€μ μμΉμ μ½λλ₯Ό μ μ©νμ§ λͺ»ν κ²½μ°, λ°λμΒ μ΅μ΄λ‘ κ΄κ³ λ₯Ό μμ²νλ μμΉλ³΄λ€ μ΄μ μ λ°°μΉλμ΄μΌ ν©λλ€.
Β
(Optional) λ₯λ§ν¬ 컀μ€ν°λ§μ΄μ§
BuzzAd Ext.Pointμμλ μΈλΆ ν¬μΈνΈμ¬ μ°λ μλ£ μ μΉνμ΄μ§λ₯Ό λμλλ€. μ°λ μλ£μ 보μ¬μ§λ μΉνμ΄μ§μλ βμ±μΌλ‘ λμκ°κΈ°β λ²νΌμ΄ μμΌλ©°, λ²νΌμ λλ μλ (μ€νμ€μ΄λ) μ±μΌλ‘ λμκ°λλ€. μΆκ°λ‘ βμ±μΌλ‘ λμκ°κΈ°β λ²νΌμ λλ μ λ μ€νν λ₯λ§ν¬λ₯Ό 컀μ€ν°λ§μ΄μ§ν μ μμ΅λλ€.
λ₯λ§ν¬ 컀μ€ν°λ§μ΄μ§μ νλ©°, application Id μ package nameμ λ€λ₯΄κ² μ€μ ν κ²½μ°
Application Id μ package name μ΄ λμΌνμ§ μμ κ²½μ° μλμΉ μμ λμμ μΌκΈ°ν μ μμ΅λλ€.
μ΄λ° κ²½μ° μλ κ°μ΄λλ₯Ό μ°Έμ‘°νμ¬ setComebackDeeplink
λ₯Ό μ€μ ν΄μΌν©λλ€.
Β
μ°λνκΈ°
2. μ¬μ©μ μ 보 κ΄λ¦¬νκΈ°
User profile λ° Session Ready Broadcast
μ¬μ©μ μ 보λ userProfile μμ κ΄λ¦¬ν©λλ€. μ체 ν¬μΈνΈ μλΉμ€λ₯Ό μ¬μ©νλ κ²½μ°, μΌλ°μ μΌλ‘ μ¬μ©μ μ 보λ λ΄λΆμμ κ΄λ¦¬νλ μ 보λ₯Ό μ€μ ν©λλ€. νμ§λ§, μ΄ μ°λμ κ²½μ° μΈλΆ μΈμ¦μ ν΅νμ¬ μ¬μ©μ μ 보λ₯Ό μ€μ ν©λλ€. λ°λΌμ λ³λμ User profile μ€μ μ΄ νμνμ§ μμ΅λλ€.
[1] μΈλΆ μΈμ¦μ ν΅ν λ‘κ·ΈμΈμ μ±κ³΅νλ©΄ Session Ready Broadcast κ° νΈμΆλ©λλ€. μ΄λ BroadcastReceiver λ₯Ό μ¬μ©νμ¬ λ‘κ·ΈμΈ μνμ λ°λ₯Έ λμμ ꡬνν μ μμ΅λλ€.
[2] (μ ν) μ μ μ νκ²ν (μ±λ³, μλ ) μ 보 μ λ ₯νκΈ°
μΈλΆ μΈμ¦μ ν΅ν λ‘κ·ΈμΈ μ΄ν, μ μ μ μμ΄λκ° κ³ μ νκ² μ ν΄μ§λλ€. μ΄ν, ννΈλμμ μ§μ μ μ μ μ±λ³ λ° μΆμλ λ μ 보λ₯Ό μ§μ μ λ ₯ν μ μμ΅λλ€. μ μ μ νκ²ν μ λ³΄κ° μ λ ₯λ κ²½μ°, μ μ κ° λ λ§μ κ΄κ³ λ₯Ό μ°Έμ¬ν μ μμ΅λλ€. (ν΄λΉ μ 보λ μ μ κ° μ§μ μ λ ₯ν μ μμ΅λλ€.)
νκ²ν μ 보
gender
UserProfile.Gender.MALE
: λ¨μ±UserProfile.Gender.FEMALE
: μ¬μ±
birthYear: μΆμλ λ (4μ리)
Β
User preference μ€μ νκΈ°
μμ λ¨κ³μ Session Ready Broadcast λ₯Ό μ΄μ©νμ¬, μ μ κ° λ‘κ·ΈμΈμ μ±κ³΅ν μμ μ λ€μμ μ€μ ν©λλ€.
autoplayType()
μ λμμ κ΄κ³ μ μλ μ¬μμ λν μ€μ μ
λλ€. κΈ°λ³Έκ°μ Wifi νκ²½μμλ§ μλ μ¬μνλλ‘ μ€μ λμ΄ μμ΅λλ€. μ ν κ°λ₯ν μ€μ κ°μ λ€μκ³Ό κ°μ΅λλ€.
AutoplayType.ON_WIFI
: Wifi νκ²½μμλ§ μλ μ¬μλ©λλ€. (κΈ°λ³Έκ°)μΈλΆ ν¬μΈνΈ μ°λμ΄ μλ£ λμ§ μμ κ²½μ°, μλ μ¬μνμ§ μμ΅λλ€.
AutoplayType.ENABLED
: νμ μλ μ¬μλ©λλ€.AutoplayType.DISABLED
: μλ μ¬μμ μ¬μ©νμ§ μμ΅λλ€.
Β
μ¬μ©μ μ 보 μμ νκΈ°
μΈλΆ μΈμ¦μ ν΅ν λ‘κ·ΈμΈμ΄ λ§λ£λλ μμ νΉμ μ± μ¬μ© μ’ λ£λ‘ μ€μ κ° μμ κ° νμν κ²½μ°, λ€μμ μ€μ ν©λλ€.Β
Β