問題タブ [usagestatsmanager]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - Android UsageStatsManager は間違った出力を生成しますか?
このリンクを使用して、アプリの使用状況を生成しています。選択された間隔についての私の理解は、間隔については、期間と期間の間の各パッケージのYEARLY
それぞれのデータを集計するということです。同様に、との間隔でも機能するはずです。YEAR
beginTime
endTime
WEEKLY
DAILY
ではWEEKLY
、私のコードと出力を以下に示します。
コード:
出力:
ただし、INTERVAL.DAILY
上記のコードを使用すると、最初の 3 行しか取得できません。私の間隔は、この間隔の間のすべてのパッケージのすべてのデータを含めるのに十分な大きさです。
私は何か間違ったことをしていますか、それとも集計間隔に関する私の理解は正しくありませんか? どんな助けでも大歓迎です。ありがとう。
編集1
/data/system/usagestats フォルダーにある statsfile Android ストアを調べたところ、以下に示すように、毎日の統計用に 2 つのファイルと、毎週の統計用に 1 つのファイルが見つかりました。
毎日のファイル1
毎日のファイル2
毎週
このデータ全体が台無しになっているようです。同じブラウザ アプリの場合、日ごとに異なる結果が保存され、週ごとに異なる結果が保存されます。
android - queryUsageStats 間隔期間
UsageStatsManager API を使用して、特定の時間間隔の使用統計を取得しています。定義済みの間隔、つまりINTERVAL_DAILY、INTERVAL_WEEKLY、INTERVAL_MONTHLY、INTERVAL_YEARLYを使用すると、すべて正常に機能します。しかし、過去 2 時間または 3 時間のデータを表示したい場合は、今日のデータを 1 日分取得しています。Calendars と System.currentTimeMillis() を使用してみましたが、フィルタリングされた結果は得られませんでした。
カレンダーアプローチ:
そして、これを次のように queryUsageStats メソッドに渡します。
interval は INTERVAL_BEST です。
System.currentTimeMillis() アプローチ:
上記と同じように、これを queryUsageStats に渡します。
interval は再び INTERVAL_BEST です。
INTERVAL_BEST がこの情報を含むように適切に文書化されていないため、この期間、つまり 1 日未満のデータを取得できるかどうかを知りたいです。私はこの問題で立ち往生しているので、どんな助けもいただければ幸いです。
java - Android Wear で UsageStatsManager を使用する方法
Android Wear デバイスで UsageStatsManager を使用しようとしています。
私がしたこと:
携帯電話で実行しているモバイル アプリで許可をリクエストしています。ユーザーから許可が与えられた後、使用統計データにアクセスできます。次に、wear アプリで UsageStatsManager を作成し、そこにある使用統計データにアクセスしようとしました。しかし、当番ではそれをする権限がなく、許可を求めることができません。私が使用したユーザーによって許可が与えられたかどうかを確認するには:
これは、電話では true を返しますが、時計では false を返します。
問題:
電話で UsageStatsManager を使用する許可をユーザーに求めることはできますが、設定が存在しないため、時計ではそれを行うことができません。時計で UsageStatsManager を実行できるかどうかは誰にもわかりませんか?
android - android.permission.PACKAGE_USAGE_STATS はシステム アプリ専用ですか?
次の方法でユーザー統計にアクセスしています。
動作するようです:
しかし、新しい SDK で引き続き機能するかどうかはわかりません。この権限の使用中にいくつかの警告が表示されますが、それらは具体的なものではありませんでした。だから私はこれらの制限が正確に何であるか疑問に思っています?
また、
android - フォアグラウンド アプリを取得しようとすると、Android 6.0 Marshmallow UsageStatsManager の問題が発生する
UsageStatsManager の使用統計を照会しようとするたびに、最後に実行されたアプリを正しく取得できます。ただし、ステータス バーをプルダウンして新しい通知があると、最後に使用したアプリ (UsageStats に基づく) が通知のアプリに変わります。その結果、フォアグラウンド アプリケーションが変更されたという誤った警告が表示されます。
これらの特定のドローをフィルタリングする方法が見つからないようです。何か案は?
ここでは、次のコードを使用してフォアグラウンド アプリをクエリします。この問題は Marshmallow にのみ存在します (5.X は正常に動作します)。