...
팝은 스크린 최상단에 뜨는 UI를 통해 Feed 지면으로 유저를 유도합니다. 팝은 한 번 실행되면 화면을 껐다 켤 때마다 팝이 지속적으로 화면에 보이게 됩니다.
...
...
준비 사항
(ver 2.25.x) 3.1. 기본 설정 Feed 지면 연동 완료
Unit ID 발급
YOUR_FEED_UNIT_ID
는 Feed 지면에서 사용한 Unit ID 와 동일
...
Pop 지면에 사용할 Unit ID
...
(이하
...
YOUR_
...
POP_UNIT_ID
...
)
FeedConfig 설정
FeedConfig에 Pop사용 설정을 하면 Pop을 이용할 수 있습니다.
Code Block |
---|
FeedConfig feedConfig = new FeedConfig.Builder(getApplicationContext(), "YOUR_FEEDPOP_UNIT_ID") ... 생략 ... .optInFeatureList(Collections.singletonList(OptInFeature.Pop)) .build(); final BuzzAdBenefitConfig buzzAdBenefitConfig = new BuzzAdBenefitConfig.Builder(context) ... 생략 ... .setFeedConfig(feedConfig) .build(); BuzzAdBenefit.init(this, buzzAdBenefitConfig); |
...
다른 앱 위에 그리기 권한 설정 및 Pop 실행
<< 가이드 이미지가 있다면 추가 >>
마시멜로(Android API 23) 이상 버전에서 Pop을 실행시키기 위해서 다른 앱 위에 그리기 권한을 획득해야 합니다. BuzzAdPop
클래스는 유저가 다른 앱 위에 그리기 권한을 활성화 하도록 권한이 필요합니다. 원활한 권한획득을 위해 BuzzAd Android SDK는 사용자가 권한을 활성화하도록 유도하는 기능을 제공하고 있습니다.
...
SDK에서 제공하는 기능을 사용하여 다른 앱 위에 그리기
...
권한 획득부터 Pop 실행까지 구현하는 방법은 다음과 같습니다.
Activity에 BuzzAdPop 클래스를
...
멤버변수로 추가합니다.
Code Block | ||
---|---|---|
| ||
private BuzzAdPop buzzAdPop; |
...
Activity의 onCreate에서 BuzzAdPop의 인스턴스를 만들어 줍니다.
Code Block | ||
---|---|---|
| ||
this.buzzAdPop = new BuzzAdPop(context, "YOUR_ |
...
POP_UNIT_ID"); |
Pop 실행 전, 다른 앱 위에 그리기 권한을 얻어야 합니다. requestPermissionWithDialog
를 호출하여 유저에게 다른 앱 위에 그리기 권한을 부여하도록 유도할 수 있습니다.
Code Block | ||
---|---|---|
| ||
public static final int REQUEST_CODE_SHOW_POP = 1024;
public void showPopOrRequestPermissionWithDialog() {
// 권한 확인
if (BuzzAdPop.hasPermission(context) || Build.VERSION.SDK_INT < Build.VERSION_CODES.M) {
// Pop 실행
buzzAdPop.preloadAndShowPop();
} else {
// 권한 요청
BuzzAdPop.requestPermissionWithDialog((Activity) context,
new PopOverlayPermissionConfig.Builder(R.string.pop_name)
.settingsIntent(OverlayPermission.createIntentToRequestOverlayPermission(context))
.requestCode(REQUEST_CODE_SHOW_POP)
.build()
);
}
}
|
다른 앱 위에 그리기 권한이 부여되면 자동으로 Activity 로 돌아오며, Intent를 통해 결과를
...
확인합니다. 권한 획득이 확인되면 preloadAndShowPop
을 호출하여 Pop을 실행합니다.
Code Block | ||
---|---|---|
| ||
import static com.buzzvil.lib.buzzsettingsmonitor.SettingsMonitor.KEY_SETTINGS_REQUEST_CODE; import static com.buzzvil.lib.buzzsettingsmonitor.SettingsMonitor.KEY_SETTINGS_RESULT; public class MainActivity extends AppCompatActivity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); if (getIntent().getBooleanExtra(KEY_SETTINGS_RESULT, false) && getIntent().getIntExtra(KEY_SETTINGS_REQUEST_CODE, 0) == REQUEST_CODE_SHOW_POP) { // 권한 획득 확인 후 pop 실행 buzzAdPop.preloadAndShowPop(); } } } |
Pop 비활성화
buzzAdPop.removePop(Context)
을 호출하여 Pop을 비활성화 할 수 있습니다.
Code Block |
---|
buzzAdPop.removePop(context); |
디자인 커스터마이징
Customize 페이지 에서 Pop 아이콘 이미지 변경, 유틸리티 기능 등 Customize 가능 한 기능들을 확인할 수 있습니다.
...