вызов queryEvents ничего не возвращает - PullRequest
0 голосов
/ 18 июня 2019

Извините, если это повторяющийся пост, но я просмотрел несколько вопросов, и ни один из них, похоже, не помог мне. Я пытаюсь вызвать queryEvents (), но ничего не получаю. Я прилагаю свой код здесь, был бы признателен, если кто-нибудь может указать, что мне не хватает. Он никогда не входит в цикл while

    final SimpleDateFormat dateFormat = new SimpleDateFormat("M-d-yyyy HH:mm:ss");
    UsageStatsManager usm = (UsageStatsManager) mContext.getSystemService(Context.USAGE_STATS_SERVICE);
    long startTime, endTime;

    endTime = System.currentTimeMillis();
    startTime = endTime - (1000*3600*3);

    Log.d(TAG, "Range start:" + dateFormat.format(startTime) );
    Log.d(TAG, "Range end:" + dateFormat.format(endTime));

    UsageEvents uEvents = usm.queryEvents(startTime, endTime);

    while (uEvents.hasNextEvent())
    {
        UsageEvents.Event e = new UsageEvents.Event();
        uEvents.getNextEvent(e);

        Log.d(TAG, "inside while...");

        if (e != null)
        {
            Log.d(TAG, "Event: " + e.getPackageName() + "\t" +  e.getTimeStamp());
        }

        else
            Log.d(TAG, "e=null");
    }

1 Ответ

0 голосов
/ 27 июня 2019

Ваш код работает на меня. Вы убедились, что у вас есть разрешение android.permission.PACKAGE_USAGE_STATS?

...