5

I am installing this application on the said tablet and I intend to supply this tablet to my client for a day or two, what I want is:

After checking the operations, the client should not be able to use the said application after the expiry date. for this I am calling the calander function and comparing the extracted system date (Day) with a day I want the application to close operation. I am using the following code:

  public void expire(){
    Calendar c = Calendar.getInstance();

    int sDate = c.get(Calendar.YEAR);
    int sMonth = c.get(Calendar.MONTH)+1;
    int sDay = c.get(Calendar.DAY_OF_MONTH); 
    int sHour =  c.get(Calendar.HOUR_OF_DAY);
    int sMin = c.get(Calendar.MINUTE);

    Toast.makeText(getApplicationContext(), ""+sDate+sMonth+sDay+"Hour is"+sHour, Toast.LENGTH_LONG).show();

    if (sDay >=11){
        System.exit(0);
    }

}

I call expire(); on a button click to check, but all I get is a blank black screen for a few seconds and then the application works fine. Which I do not want.

4

3 回答 3

3

要退出活动,请调用finish().

于 2012-12-11T11:31:58.700 回答
2

打电话finish()而不是System.exit(0);检查月也因为您的客户也将在下个月的前十天使用该应用程序:P:P:P

于 2012-12-11T11:36:49.090 回答
1

在我调用 expire(); 之后,使用 finish() 似乎正在模拟器上工作;从 onCreate 而不是 on 按钮单击。然而,在真实设备上使用 System.exit(0) 确实有帮助,而 finish() 则没有。

System.exit()(在纯 Java 和核心 Java 中)可用于在程序退出之前运行关闭挂钩。这是在较大程序中处理关闭的一种便捷方法,其中程序的所有部分都不能(也不应该)相互了解。然后,如果有人想退出,他可以简单地调用 System.exit(),然后关闭挂钩(如果设置正确)负责执行所有必要的关闭仪式,例如关闭文件、释放资源。

而在完成()的情况下,调用完成()的方法将运行到完成。在您将控制权返回给 Android 之前,finish() 操作甚至不会开始。

于 2012-12-11T12:31:53.710 回答