android用欢迎界面加载运行环境

以前一直以为splash页只是图好玩..

今天才知道是应该把环境加载放在这个页面...

论坛和github上太多仿XXX的项目果然只能学习下ui的思路...

以前把环境加载放在application里面,难怪启动白屏要花那么长时间...

代码很简单,做一个线程,然后delay运行即可,如下:

复制代码
  
public class SplashActvity extends AbstractActivity {

    private static final int sleepTime =4000;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_splash);
        new Handler().postDelayed(new Runnable() {
            @Override
            public void run() {
                //初始化服务
                long start = System.currentTimeMillis();
                initService();
                long costTime = System.currentTimeMillis() - start;
                if (sleepTime - costTime > 0) {
                    try {
                        Thread.sleep(sleepTime - costTime);
                    } catch (InterruptedException e) {
                        e.printStackTrace();
                    }
                }

                Log.d("splah act-------->","inited service");

                //界面跳转
                String token = AppContext.getInstance().getToken();
                if (TextUtils.isEmpty(token)) {
                    startActivity(SignInActivity.newIntent());
                } else {
                    startActivity(MainActivity.newIntent());
                }
                finish();
            }
        },500);
    }

    private void initService(){
        //注册环信通知
       AppContext.getInstance().initEnvir();
        //注册百度定位
        AppContext.getInstance().initLocation();
    }
}
复制代码

 

posted @   保安保安  阅读(457)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· 展开说说关于C#中ORM框架的用法!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
点击右上角即可分享
微信分享提示