ソースを参照

修复监听应用时长 提交时时间错误的bug

zengjiebin 7 年 前
コミット
de6f8ce0a1
共有1 個のファイルを変更した4 個の追加2 個の削除を含む
  1. 4 2
      app/src/main/java/com/sheep/gamegroup/usage/AppUsageManager.java

+ 4 - 2
app/src/main/java/com/sheep/gamegroup/usage/AppUsageManager.java

@@ -148,7 +148,7 @@ public class AppUsageManager {
                 mode = appOps.checkOpNoThrow("android:get_usage_stats", android.os.Process.myUid(), SheepApp.getInstance().getPackageName());
             }
             boolean granted = mode == AppOpsManager.MODE_ALLOWED;
-            return isEmpty || granted;
+            return isEmpty || !granted;
         } else{
             return false;
         }
@@ -243,7 +243,9 @@ public class AppUsageManager {
                     } else {//小绵羊在前台时调用
                         for (UsageStats usageStats : usageStatsList) {
                             if (usageStats != null && TextUtils.equals(packageName, usageStats.getPackageName())) {
-                                return usageStats.getTotalTimeInForeground();
+                                long saveTotalTime = MyDbManager.getInstance().getAppUsageTime(packageName);
+                                long totalTime = usageStats.getTotalTimeInForeground();
+                                return Math.max(0, totalTime - saveTotalTime);
                             }
                         }
                     }