许可证检查循环?

时间:2013-10-24 04:38:36

标签: android

也许代码类型显示了我正在尝试做的事情,所以我将从那个

开始
private void getLicenseResults() {

    if (licensed && didCheck == true) {

        Thread timer = new Thread() {
            public void run() {
                try {
                    sleep(2000);
                } catch (InterruptedException e) {
                    e.printStackTrace();
                } finally {
                    Intent openStartingPoint = new Intent(
                            "***.MAINACTIVITY");
                    startActivity(openStartingPoint);
                    finish();
                }
            }
        };
        timer.start();
    }

    if (didCheck == false) {

        Toast.makeText(Splash.this, "Checking License, Please Wait",
                Toast.LENGTH_LONG).show();

        Thread timer = new Thread() {
            public void run() {
                try {
                    sleep(2000);
                } catch (InterruptedException e) {
                    e.printStackTrace();
                } finally {
                    getLicenseResults();
                    Log.i("LICENSE", "re-checking");
                }
            }
        };
        timer.start();
    }

}

我在没有尝试循环之前运行了许可证检查,并且它工作正常,除非检查花了超过几秒钟它跳过

if (licensed && didCheck == true)

并且活动只是站着等待而没有启动我的主要活动(此检查在启动画面上)。

所以我希望只有在didCheck实际上是真的之后才调用“if didCheck = true”部分。我确信这是一个简单的解决方案,但我是自学成才,我没有循环或回调的经验(?)。

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

在调用getLicenseResults之前,您没有在第二个if语句中将didCheck设置为true