목차
Table of Contents | ||||||
---|---|---|---|---|---|---|
|
개요
...
만보기형 Pop(이하 만보기)은 기본 아이콘 대신 걸음수를 보여줍니다. 목표 걸음 수에 도달했을 시 적립 가능 아이콘과 말풍선으로 사용자에게 적립 가능을 알립니다. 사용자는 리워드 적립을 위해 Pop 지면에 방문하게 됩니다. 리워드 획득을 위해 걸음 이외에 별도의 액션을 요구하지 않아 높은 방문율을 유지할 수 있습니다.
...
만보기는 히스트리 UI와 적립 UI라는 별도의 UI를 기본적으로 제공합니다.
...
준비 사항
Pop(기본형) 기본설정 기본형 Pop 기본 설정 적용 완료
만보기 리워드 적립에 걸음 수 등록, 목표 걸음 달성 시의 리워드 적립, 리워드 적립 페이지의 광고 지면에 사용하는 Unit ID (이하
UNIT_ID_PEDOMETER
)만보기 목표 걸음 달성 후 표시되는 바텀시트 광고 지면에 사용하는 Unit ID (이하
UNIT_ID_PEDOMETER_REWARD
)
...
Application 레벨의 build.gradle
에 만보기 라이브러리를 추가합니다.
만보기 라이브러리의 버전은 BuzzAd Android SDK 버전과 동일한 버전을 사용합니다.
Code Block | ||
---|---|---|
| ||
implementation 'com.buzzvil:buzz-pedometer:x.y.z' |
만보기 초기화
PedometerConfig를 설정합니다. PopConfig에 popMode
를 PopMode.PEDOMETER_POP
로 설정합니다.
만보기 SDK는 sessionReadyReceiver.onReceive
에서 호출합니다.
Application class onCreate
에 sessionReadyReceiver
를 등록해야합니다. onReceive
는 BuzzAdBenefit.setUserProfile
가 살행된 후에 호출됩니다만보기 라이브러리를 초기화합니다. 만보기 라이브러리는 사용자 프로필을 설정한 후에 초기화해야 합니다. BroadcastReceiver를 BuzzAdBenefit.registerSessionReadyBroadcastReceiver
에 등록하여 사용자 프로필 설정 완료 이벤트를 받을 수 있습니다.
다음은 만보기 라이브러리를 초기화하는 예시입니다.
Code Block | ||
---|---|---|
| ||
public class App extends Application {
private BroadcastReceiver sessionReadyReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
BuzzAdPopPedometer.init(context, "YOUR_POP_UNIT_ID |
...
" |
...
);
}
};
@Override
public void onCreate() {
super.onCreate(); |
...
final PedometerConfig pedometerConfig = new PedometerConfig |
...
.Builder(context, "YOUR_PEDOMETER_UNIT_ID |
...
", "YOUR_PEDOMETER_REWARD_UNIT_ID |
...
")
.build();
final PopConfig popConfig = new PopConfig.Builder(getApplicationContext(), "YOUR_POP_UNIT_ID")
.feedHeaderViewAdapterClass(DefaultPedometerPopHeaderViewAdapter.class)
.popMode(PopConfig.PopMode.PEDOMETER_POP)
.pedometerConfig(pedometerConfig)
.build();
final BuzzAdBenefitConfig buzzAdBenefitConfig = new BuzzAdBenefitConfig.Builder(this)
.setPopConfig(popConfig)
.build();
BuzzAdBenefit.init(this, buzzAdBenefitConfig);
BuzzAdBenefit.registerSessionReadyBroadcastReceiver(this, sessionReadyReceiver);
}
} |
만보기 활성화
만보기를 활성화 하기 위해서는 활동 감지 권한이 필요합니다. 다음은 만보기를 활성화하는 방법을 안내합니다.
...
OS 버전 Android 10 이상인 디바이스에서 만보기 기능을 사용하기 위해서는 활동 감지 권한이 필요합니다. (참고: Android Developer Guide)
...
다음은 신체 활동 감지 권한을 얻는 방법입니다예시입니다.
Code Block | ||
---|---|---|
| ||
@TargetApi(Build.VERSION_CODES.Q) private void requestActivityRecognitionPermission(Activity activity) { if (ActivityCompat.shouldShowRequestPermissionRationale(activity, Manifest.permission.ACTIVITY_RECOGNITION)) { if (!activity.isFinishing()) { new AlertDialog.Builder(activity) .setTitle(R.string.pop_pedometer_dialog_permission_your_title) .setMessage(R.string.pop_pedometer_dialog_permission_descriptionyour_message) .setPositiveButton(android.R.string.your_ok, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialogInterface, int i) { requestPermissions(new String[]{Manifest.permission.ACTIVITY_RECOGNITION}, ACTIVATION_REQUEST_CODE); } }).show(); } } else { requestPermissions(new String[]{Manifest.permission.ACTIVITY_RECOGNITION}, ACTIVATION_REQUEST_CODE); } } |
만보기 활성화
권한을 얻었다면 획득한 후, Pop을 표시하고 만보기를 활성화 합니다활성화합니다.
Code Block | ||
---|---|---|
| ||
public class YourActivity extends AppCompatActivity { @Override public void onCreate() { super.onCreate(); if (getIntent().getBooleanExtra(KEY_SETTINGS_RESULT, false) && getIntent().getIntExtra(KEY_SETTINGS_REQUEST_CODE, 0) == REQUEST_CODE_SHOW_POP) { if (BuzzAdPop.hasPermission(this)) { buzzAdPop.preloadAndShowPop(); BuzzAdPopPedometer.activate(); } } } } |