安卓设置软件app使用时间权限

具体使用

@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
		
		//时间格式
		String mVersionEndTime = "2022-10-01 00:00:00";

		checkAppPermissions(mVersionEndTime);
    }

时间转换

private String dateToStamp(String time) throws ParseException {
        try {
            SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
            Date date = null;
            date = simpleDateFormat.parse(time);
            long ts = date.getTime();
            return String.valueOf(ts);

        }catch (java.text.ParseException e)
        {
            LoggerUtils.Log_d(TAG, "get time failed" + e.toString());
        }
        return null;
    }

获取时间

获取系统时间或百度服务器时间

    private long getNetTime() {

        long current_time = System.currentTimeMillis();

        URL url = null;//取得资源对象
        try {
            url = new URL("http://www.baidu.com");
            URLConnection uc = url.openConnection();//生成连接对象
            uc.connect(); //发出连接
            current_time = uc.getDate(); //取得网站日期时间

        } catch (Exception e) {
            e.printStackTrace();
        }

        return current_time;
    }

超过限定时间弹窗告知,禁止使用

    private void checkAppPermissions(version_end_time)
    {
        Thread getTimeThread = new Thread(new Runnable() {
            @Override
            public void run() {
                mCurrentTime = getNetTime();
            }
        });

        getTimeThread.start();
        try {
            getTimeThread.join();
        } catch (InterruptedException e) {
            LoggerUtils.Log_d(TAG, String.format("getTimeThread error" + e.toString()));
        }

        String tm = dateToStamp(version_end_time);
        long time = Long.parseLong(tm);

        if(mCurrentTime >= time)
        {
            AlertDialog.Builder alertDialog = new AlertDialog.Builder(this).setTitle("温馨提示")
                    .setMessage("您的使用权已过期,请联系相关人员获取最新版本权限")
                    .setPositiveButton("OK", new DialogInterface.OnClickListener() {
                        @Override
                        public void onClick(DialogInterface dialogInterface, int i) {
                            finish();
                        }
                    });

            Dialog dialog = alertDialog.create();
            dialog.setCanceledOnTouchOutside(false);
            dialog.setCancelable(false);
            dialog.show();

            LoggerUtils.Log_d(TAG, "您的使用权已过期,请联系相关人员获取最新版本权限");
        }
    }
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值