最近的一个需求,在app上架之后开启广告,收录2个关于时间计算的写法
方法1:
int nian;
int yue;
int ri;
//获得Calendar这个类的实例:
Calendar c = Calendar.getInstance();
//获得当前的年份
nian = c.get(Calendar.YEAR);
//获得当前的月份
yue = c.get(Calendar.MONTH) + 1;
// 注意:1月份的值为0,需加1为现实中月份
//获得今天是本月的第几天,两种写法
ri = c.get(Calendar.DATE);
c.get(Calendar.DAY_OF_MONTH);
//判断日期,等于2021年12月,大于等于7号且小于31号,开启广告
if(nian == 2021 && (7 <= ri&&ri < 31) && yue == 12)
{
GDTAdSdk.init(SplashNewActivity.this, Constants.GGKS);
}
//判断月,等于2021年1月,开启广告
if(nian == 2021 && yue == 1)
{
GDTAdSdk.init(SplashNewActivity.this, Constants.GGKS);
}
//判断年,不等于2021年,开启广告,2022之后仍然有广告
if(nian != 2021 ){
GDTAdSdk.init(SplashNewActivity.this, Constants.GGKS);
}
方法2
//注意:传过来的时间格式必须要和这里填入的时间格式相同
@SuppressLint("SimpleDateFormat") SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm");
//获取当前时间
Date date = new Date(System.currentTimeMillis());
Log.i("Date获取当前日期时间","Date获取当前日期时间"+dateFormat.format(date));
String startTime = "2021-12-08 12:00";
String endTime = dateFormat.format(date);
try {
Date date1 = dateFormat.parse(startTime);//开始时间
Date date2 = dateFormat.parse(endTime);//结束时间
assert date1 != null;
assert date2 != null;
if (date2.getTime()>date1.getTime()){
//结束时间大于开始时间,开启广告
GDTAdSdk.init(SplashNewActivity.this, Constants.GGKS);
}
} catch (Exception ignored) {
}