Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Table of Contents

Info

PedometerLite 를 사용하기 위해선 Pop 초기화를 마친 상태여야 합니다.

Image Modified

<그림 1> PedometerLite feature 사용을 설정했을 때 Pop 피드의 모습

...

<그림 2> PedometerLite 를 활성화했을 때 Pop

Initialization

Step 1. Add pedometetr feature module

application level build.gradle 에 만보기 모듈을 추가합니다.

...

Info

buzzad-benefit:2.12.+ 를 사용하는 경우 buzz-pedometer:1.3.+ 사용
buzzad-benefit:2.13.+ 이후인 경우는, buzzad-benefit 와 동일한 버전 사용

...

<그림 3> Pop Interstitial Ad

Step 2. Set pedometer unitId

Application class 에서 BuzzAdBenefit.init 할 때

  1. pedometerConfig: unitId 설정

    1. 발급받은 Pedometer unitId 2개를 2개 를 benefit 초기화 시 설정합니다.

      1. UNIT_ID_PEDOMETER: 만보기 활성화/비활성화 페이지 광고 유닛.

      2. UNIT_ID_PEDOMETER_REWARD: 만보기 마일스톤을 눌렀을 때 나오는 bottom sheet dialog 광고 유닛

  2. (Optional) popConfig: Pop의 Exit 광고 <그림 3> 도 popExitUnitId 를 통해 설정 가능

Application class 에서 BuzzAdBenefit.init 할 때 위 unitId 를 가지고있는 pedometerConfig 를 설정합니다.

Code Block
final PedometerConfig pedometerConfig = buildPedometerConfig();
final PopConfig popConfig = new PopConfig.Builder(getApplicationContext(), UNIT_ID_POP)
        ...
        .pedometerConfig(pedometerConfig)
        .popExitUnitId(UNIT_ID_PEDOMETER_POP_EXIT) // Optional
        ...
        .build();
BuzzAdBenefit.init(this, buzzAdBenefitConfig);

@NotNull
private PedometerConfig buildPedometerConfig() {
    return new PedometerConfig
            .Builder(UNIT_ID_PEDOMETER, UNIT_ID_PEDOMETER_REWARD)
            .build();
}

Step 3. Initialize Pop Pedometer

Application class onCreatesessionReadyReceiver 를 등록합니다. 세션이 준비되면 만보기를 초기화합니다.

Code Block
@Override
public void onCreate() {
    super.onCreate();

    initBuzzAdBenefit();
    BuzzAdBenefit.registerSessionReadyBroadcastReceiver(this, sessionReadyReceiver);
}
private BroadcastReceiver sessionReadyReceiver = new BroadcastReceiver() {
    @Override
    public void onReceive(Context context, Intent intent) {
        initPedometer(context);
        Log.d(TAG, "Session is Ready. Ads can be loaded now.");
    }

    private void initPedometer(Context context) {
        Log.d(TAG, "Session is Ready. initPedometer");

        if (popConfig.getPedometerConfig() != null) {
            BuzzAdPopPedometer.init(context, "APP_ID", "UNIT_ID_POP");
        }
    }
};

Step 4. (Optional) Handling PopToolbarHolder

PopToolbarHolder 는 customize 페이지에서 소개한대로 직접 구현이 가능합니다. PopToolbarHolder 를 customize 했을 경우에는 Pop Feed Toolbar 에 Pedometer Icon <그림 1> 을 나오게 하려면 각각 다른 작업을 해야합니다.

...

Code Block
public class TemplatePopToolbarHolder extends DefaultPopToolbarHolder {

    @Override
    public View getView(Activity activity, @NonNull String unitId) {
        toolbar = new PopToolbar(activity);
        toolbar.setTitle("TemplatePopToolbarHolder");
        toolbar.setBackgroundColor(Color.LTGRAY);

        addPedometerMenuItemView(activity);
        addInquiryMenuItemView(activity, App.UNIT_ID_POP);
        addRightMenuItemView1(activity);
        return toolbar;
    }

    private void addRightMenuItemView1(@NonNull final Activity activity) {
        PopMenuImageView menuItemView = toolbar.buildPopMenuItemView(activity, R.drawable.ic_notification_pop_gift);
        menuItemView.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                String url = "https://www.buzzvil.com/ko/main";
                Intent intent = new Intent(Intent.ACTION_VIEW);
                intent.setData(Uri.parse(url));
                activity.startActivity(intent);
            }
        });
        toolbar.addRightMenuButton(menuItemView);
    }
}

Step 5. Final Step

App 실행 → Pop 실행 → Pop Feed Toolbar 에 <그림 1> 과 같이 만보기 아이콘이 보이면 클릭해서 PedometerLite 기능을 사용할 수 있습니다.

Customization

PedometerConfig

PedometerConfig 를 통해서 아래 이미지의 내용(이미지, 컬러, 스트링)을 변경할 수 있습니다

...

No. 는 위 그림의 customize 가능한 영역의 숫자를 뜻합니다. unitId, rewardUnitId 는 필수고 나머지는 optioinal 입니다.

...

No.

...

Parameter

...

Description

...

 14

...

unitId

...

Pedometer fragment 에서 사용하는 광고 Unit Id

...

 17

...

rewardUnitId

...

Pedometer bottom sheet(리워드 정보 화면)에서 사용하는 광고 Unit Id

...

 <그림 3>

...

pedometerIntroUnitId

...

적립 가능 할 때 Pedometer fragment 진입 시 사용하는 광고 Unit id

...

1

...

toolbarTitle

...

Pedometer fragment 툴바에 표시되는 title

...

2

...

tutorialUrl

...

Pedometer fragment 툴바의 튜토리얼 버튼을 눌렀을 때 이동할 url 주소

...

3

...

introImageResId

...

Pedometer fragment 만보기 소개 이미지

...

4

...

introTitle

...

Pedometer fragment 만보기 소개 Title

...

5

...

introDescription

...

Pedometer fragment 만보기 소개 Description

...

6

...

switchThumbActiveColor

...

Pedometer fragment 만보기 Toggle Thumb 활성화 컬러

...

7

...

switchThumbInactiveColor

...

Pedometer fragment 만보기 Toggle Thumb 비활성화 컬러

...

8

...

switchTrackInactiveColor

...

Pedometer fragment 만보기 Toggle Track 비활성화 컬러

...

9

...

milestoneProgressGuideColor

...

Pedometer fragment 마일스톤 Progress Guide Color

...

10

...

milestoneProgressColor

...

Pedometer fragment 마일스톤 Progress Color

...

11

...

milestoneRewardIconResId

...

Pedometer fragment 마일스톤 적립 가능할 때 보이는 Icon resource id

...

12

...

rewardAvailableTextColor

...

Pedometer fragment 마일스톤 적립 가능할 때 표시되는 Text Color

...

13

...

rewardAvailableBackgroundResId

...

Pedometer fragment 마일스톤 적립 가능할 때 표시되는 Text Background Resource Id

...

15

...

bottomSheetImageResId

...

Pedometer bottom sheet 마일스톤 적립 가능할 때 보이는 image resource id

...

16

...

bottomSheetSuccessString

...

Pedometer bottom sheet 적립 완료 string

...

16

...

bottomSheetInProgressString

...

Pedometer bottom sheet 적립 중 string

...

18

...

popIconProgressColor

...

Pedometer Pop Icon Progress Color

...

19

...

popIconProgressGuideColor

...

Pedometer Pop Icon Progress Guide Color

...

20

...

popIconTextColor

...

Pedometer Pop Icon 에 표시 되는 걸음 수 Text Color

...

21

...

popIconRewardIconResId

...

Pedometer Pop Icon 적립 가능할 때 보이는 Icon resource id

...

22

...

...

Pedometer Pop Icon Background Color

Physical activity recognition

Android 10 (Q, API 29) 부터는 신체 활동 감지 권한이 필요하도록 변경했습니다필요하게 변경됐습니다. 앱에서 PedometerLite Feature feature 를 활성화할 때 권한을 얻기 위한 팝업이 뜨게 됩니다.

https://developer.android.com/about/versions/10/privacy/changes#physical-activity-recognition참고: Android Developer Guide