啟動頁廣告又稱開屏廣告。啟動頁(也稱為閃屏/開屏 Splash)是在應用啟動之後,架構初始化完成時展示,應用首頁出現時消失。
在用戶端配置啟動頁後,您可以在控制台側配置 Splash 展位資訊與廣告內容(參見 建立展位 和 建立活動)。啟動頁開屏展位的疲勞度控制最好配置為“展示 xx 秒之後消失”,應用根據配置擷取展位投放資料並進行展示,並在倒計時 xx 秒之後關閉頁面,實現了投放資料的動態下發與展示。
說明
由於投放資料的下載是非同步過程,為了不阻塞應用的啟動,配置啟動頁的投放後,首次僅執行下載操作,將圖片緩衝到本地,下一次應用啟動時才會展示上一次緩衝的圖片。
基於 mPaaS 架構下,啟動頁的時序和原理如下:
架構啟動後主線程建立並初始化
LauncherActivityAgent
,在LauncherActivityAgent.postInit
的回調方法中開啟首頁。首頁中檢查並開啟啟動頁。
使用樣本
在首頁中初始化啟動頁。
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // 首頁邏輯 // ........ // ........ // ........ if (SplashActivity.checkIfSplashPrepared()) { startSplash(); } } private void startSplash() { startActivity(new Intent(this, SplashActivity.class)); overridePendingTransition(0, 0); // 去掉轉場動畫 }
在啟動頁
SplashActivity
中展示開屏。private void doSplash() { final CdpAdvertisementService cdpAdvertisementService = cpdService(); cdpAdvertisementService.doSplash(this, new HashMap<String, String>(), new CdpAdvertisementService.IAdEventHandler() { @Override public void onClosed(SpaceInfo spaceInfo) { } @Override public void onJump(SpaceInfo spaceInfo) { // 跳轉到活動目標頁面 } }); } public static CdpAdvertisementService cpdService() { CdpAdvertisementService serviceByInterface = LauncherApplicationAgent.getInstance().getMicroApplicationContext().findServiceByInterface( CdpAdvertisementService.class.getName()); return serviceByInterface; }