【Android】启动时跳过欢迎界面的时机

本文介绍了一种方法,在应用初次启动时不显示欢迎界面,避免重复展示提升用户体验。通过在自定义Application中设置标志,结合Manifest配置及欢迎界面Activity/Fragment逻辑判断,实现了仅在应用未被清除后台的情况下跳过欢迎界面的功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

【关键词】

欢迎界面

【问题】
  • 如果设置了欢迎界面,那么每次启动都会展示3s钟的欢迎界面,体验不太好;
  • 为了提高用户体验,如果程序刚启动过,只要没有进行清除后台的操作;那么就跳过欢迎界面;
【效果图】
【分析】
  • 启动程序后,Application 的onCreate()方法会调用一次,退出程序了之后,如果没有进行清除后台的操作,再次进入的时候不会再调用 onCreate()方法,利用这一个特性就可以很好的解决问题;
【解决方案】

【代码】

在自定义的Application中添加

public class LouApplication extends Application {
 
public static boolean SKIP_WELCOME;
 
@Override
public void onCreate() {
// 首次启动不跳过欢迎界面;
SKIP_WELCOME = false;
super.onCreate();
}
 
}

修改Manifest的application标签

<application
android:name="com.lyloou.android.LouApplication"
android:allowBackup="true"
android:icon="@drawable/logo"
android:label="@string/app_name"
android:theme="@style/AppTheme">

在欢迎界面的activity或fragment中添加

// 如果 Application 已经存在,那么就跳过欢迎界面;
if(LouApplication.SKIP_WELCOME){
Intent intent = new Intent(mContext, SyncActivity.class);
startActivityForResult(intent, 0);
return;
}
// 如果刚打开过,下一次启动就跳过欢迎界面;
LouApplication.SKIP_WELCOME = true;

【扩展】

正在进入欢迎界面的时候,禁止其他操作

// 取消一切点击事件
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
return false;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值