android设置开机广告时长,android启动页停留时间

现在绝大数应用都有启动页,多数形式是放一张图。

最好是网络请求过来的,下面只说本地默认图

关键是停留时间的控制

特别说明:几种时间控制有误差(系统时间的受内存的影响)

1、Timer 有时间误差

2、new Handler() 有时间误差

3、Rxjava 目测没有时间误差

new Handler().postDelayed(new Runnable() {

@Override

public void run() {

}

},2000); //延迟2s后执行

推荐使用方式

private int defaultSecond = 2; //显示默认图时间2s

@SuppressLint("HandlerLeak")

private final Handler handler = new Handler() {

@Override

public void handleMessage(Message msg) {

defaultSecond--;

if (defaultSecond == 0) {

//倒计时完跳进应用

isToMain();

} else {

handler.sendEmptyMessageDelayed(1, 1000);

}

}

};

调用时机:

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_start_up);

mContext = this;

//倒计2s

handler.sendEmptyMessageDelayed(1, 1000);

}

用RxJava方式

private void startCountDown() {

int defaultCountDownTime = 1500;

//加上onError处理,防止报错没捕捉而导致闪退

Observable.timer(defaultCountDownTime, TimeUnit.MILLISECONDS)

.compose(this.bindToLifecycle())

.observeOn(AndroidSchedulers.mainThread())

.subscribe(new Consumer() {

@Override

public void accept(Long aLong) throws Exception {

//倒计时完做操作,有广告图交给广告图

//if (flAd.getVisibility() != View.VISIBLE) {

//toNext();

//}

}

}, new Consumer() {

@Override

public void accept(Throwable throwable) throws Exception {

//toNext();

}

});

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值