{"content":"Command: R=~/WorkBuddy/2026-10-23-15-17-57/cleanyourtv/launcher/app/build/reports; ls $R 2>/dev/null | head; echo \"=== NewApi 条目 ===\"; grep -A3 -E \"NewApi|Call requires API level\" $R/lint-results-release.txt 2>/dev/null | head -60\nStdout: lint-results-release.html\r\nlint-results-release.txt\r\nlint-results-release.xml\r\n=== NewApi 条目 ===\r\n/Users/nickchen/WorkBuddy/2026-10-23-15-17-57/cleanyourtv/launcher/app/src/main/java/com/gathin/tvhome/HomeKeyService.java:62: Error: Call requires API level 24 (current min is 23): android.os.UserManager#isUserUnlocked [NewApi]\r\n        if (users.isUserUnlocked()) {\r\n                  ~~~~~~~~~~~~~~\r\n/Users/nickchen/WorkBuddy/2026-10-23-15-17-57/cleanyourtv/launcher/app/src/main/java/com/gathin/tvhome/HomeKeyService.java:75: Error: Call requires API level 24 (current min is 23): android.os.UserManager#isUserUnlocked [NewApi]\r\n        if (users.isUserUnlocked()) {\r\n                  ~~~~~~~~~~~~~~\r\n/Users/nickchen/WorkBuddy/2026-10-23-15-17-57/cleanyourtv/launcher/app/src/main/java/com/gathin/tvhome/MainActivity.java:970: Error: Call requires API level 26 (current min is 23): android.content.pm.PackageManager#getChangedPackages [NewApi]\r\n        ChangedPackages changed = getPackageManager().getChangedPackages(packageSequence);\r\n                                                      ~~~~~~~~~~~~~~~~~~\r\n/Users/nickchen/WorkBuddy/2026-10-23-15-17-57/cleanyourtv/launcher/app/src/main/java/com/gathin/tvhome/MainActivity.java:971: Error: Call requires API level 26 (current min is 23): android.content.pm.ChangedPackages#getPackageNames [NewApi]\r\n        return changed != null && !changed.getPackageNames().isEmpty();\r\n                                           ~~~~~~~~~~~~~~~\r\n/Users/nickchen/WorkBuddy/2026-10-23-15-17-57/cleanyourtv/launcher/app/src/main/java/com/gathin/tvhome/MainActivity.java:975: Error: Call requires API level 26 (current min is 23): android.content.pm.PackageManager#getChangedPackages [NewApi]\r\n        ChangedPackages changed = getPackageManager().getChangedPackages(since);\r\n                                                      ~~~~~~~~~~~~~~~~~~\r\n/Users/nickchen/WorkBuddy/2026-10-23-15-17-57/cleanyourtv/launcher/app/src/main/java/com/gathin/tvhome/MainActivity.java:976: Error: Call requires API level 26 (current min is 23): android.content.pm.ChangedPackages#getSequenceNumber [NewApi]\r\n        return changed != null ? changed.getSequenceNumber() : since;\r\n                                         ~~~~~~~~~~~~~~~~~\r\n/Users/nickchen/WorkBuddy/2026-10-23-15-17-57/cleanyourtv/launcher/app/src/main/java/com/gathin/tvhome/MainActivity.java:1991: Error: Call requires API level 24 (current min is 23): android.content.res.Configuration#getLocales [NewApi]\r\n        return StatsText.forLocale(line.toString(), getResources().getConfiguration().getLocales().get(0));\r\n                                                                                      ~~~~~~~~~~\r\n/Users/nickchen/WorkBuddy/2026-10-23-15-17-57/cleanyourtv/launcher/app/src/main/java/com/gathin/tvhome/MainActivity.java:1991: Error: Call requires API level 24 (current min is 23): android.os.LocaleList#get [NewApi]\r\n        return StatsText.forLocale(line.toString(), getResources().getConfiguration().getLocales().get(0));\r\n                                                                                                   ~~~\r\n/Users/nickchen/WorkBuddy/2026-10-23-15-17-57/cleanyourtv/launcher/app/src/main/java/com/gathin/tvhome/MainActivity.java:2280: Error: Call requires API level 24 (current min is 23): android.content.res.Configuration#getLocales [NewApi]\r\n        Locale locale = getResources().getConfiguration().getLocales().get(0);\r\n                                                          ~~~~~~~~~~\r\n/Users/nickchen/WorkBuddy/2026-10-23-15-17-57/cleanyourtv/launcher/app/src/main/java/com/gathin/tvhome/MainActivity.java:2280: Error: Call requires API level 24 (current min is 23): android.os.LocaleList#get [NewApi]\r\n        Locale locale = getResources().getConfiguration().getLocales().get(0);\r\n                                                                       ~~~\r\n/Users/nickchen/WorkBuddy/2026-10-23-15-17-57/cleanyourtv/launcher/app/src/main/java/com/gathin/tvhome/MainActivity.java:2573: Error: Call requires API level 24 (current min is 23): android.media.tv.TvInputInfo#isHidden [NewApi]\r\n                if (info.isPassthroughInput() && !info.isHidden(this)) {\r\n                                                       ~~~~~~~~\r\n/Users/nickchen/WorkBuddy/2026-10-23-15-17-57/cleanyourtv/launcher/app/src/main/java/com/gathin/tvhome/MainActivity.java:2736: Error: Call requires API level 24 (current min is 23): android.media.tv.TvInputInfo#isHidden [NewApi]\r\n                if (!info.isPassthroughInput() || info.isHidden(this)) continue;\r\n                                                       ~~~~~~~~\r\n/Users/nickchen/WorkBuddy/2026-10-23-15-17-57/cleanyourtv/launcher/app/src/main/java/com/gathin/tvhome/MainActivity.java:2774: Error: Call requires API level 24 (current min is 23): android.media.tv.TvInputInfo#isHidden [NewApi]\r\n                if (!info.isPassthroughInput() || info.isHidden(this)) continue;\r\n                                                       ~~~~~~~~\r\n/Users/nickchen/WorkBuddy/2026-10-23-15-17-57/cleanyourtv/launcher/app/src/main/java/com/gathin/tvhome/MainActivity.java:2783: Error: Call requires API level 24 (current min is 23): android.media.tv.TvInputInfo#loadCustomLabel [NewApi]\r\n                CharSequence custom = info.loadCustomLabel(this);\r\n                                           ~~~~~~~~~~~~~~~\r\n/Users/nickchen/WorkBuddy/2026-10-23-15-17-57/cleanyourtv/launcher/app/src/main/java/com/gathin/tvhome/MainActivity.java:2793: Error: Call requires API level 24 (current min is 23): android.media.tv.TvInputInfo#loadCustomLabel [NewApi]\r\n                        CharSequence name = device.loadCustomLabel(this);\r\n                                                   ~~~~~~~~~~~~~~~\r\n/Users/nickchen/WorkBuddy/2026-10-23-15-17-57/cleanyourtv/launcher/app/src/main/java/com/gathin/tvhome/UiFont.java:20: Error: Call requires API level 26 (current min is 23): android.content.res.Resources#getFont [NewApi]\r\n        if (name.startsWith(\"res/\")) return res.getFont(value.resourceId);\r\n                                                ~~~~~~~\r\n/Users/nickchen/WorkBuddy/2026-10-23-15-17-57/cleanyourtv/launcher/app/src/main/java/com/gathin/tvhome/WallpaperCaptions.java:42: Error: Call requires API level 26 (current min is 23): java.io.File#toPath [NewApi]\r\n            return parse(Files.readAllLines(file.toPath(), StandardCharsets.UTF_8));\r\n                                                 ~~~~~~\r\n/Users/nickchen/WorkBuddy/2026-10-23-15-17-57/cleanyourtv/launcher/app/src/main/java/com/gathin/tvhome/WallpaperCaptions.java:42: Error: Call requires API level 26 (current min is 23): java.nio.file.Files#readAllLines [NewApi]\r\n            return parse(Files.readAllLines(file.toPath(), StandardCharsets.UTF_8));\r\n                               ~~~~~~~~~~~~\r\n/Users/nickchen/WorkBuddy/2026-10-23-15-17-57/cleanyourtv/launcher/app/src/main/java/com/gathin/tvhome/WallpaperPlayer.java:281: Error: Field requires API level 26 (current min is 23): android.graphics.Bitmap.Config#HARDWARE [NewApi]\r\n            Bitmap gpu = decoded.copy(Bitmap.Config.HARDWARE, false);\r\n                                      ~~~~~~~~~~~~~~~~~~~~~~\r\n\r\n   Explanation for issues of type \"NewApi\":\r\n   This check scans through all the Android API calls in the application and\r\n\nStderr: (empty)\nExit Code: 0\nSignal: (none)","renderer":{"type":"text","value":"lint-results-release.html\r\nlint-results-release.txt\r\nlint-results-release.xml\r\n=== NewApi 条目 ===\r\n/Users/nickchen/WorkBuddy/2026-10-23-15-17-57/cleanyourtv/launcher/app/src/main/java/com/gathin/tvhome/HomeKeyService.java:62: Error: Call requires API level 24 (current min is 23): android.os.UserManager#isUserUnlocked [NewApi]\r\n        if (users.isUserUnlocked()) {\r\n                  ~~~~~~~~~~~~~~\r\n/Users/nickchen/WorkBuddy/2026-10-23-15-17-57/cleanyourtv/launcher/app/src/main/java/com/gathin/tvhome/HomeKeyService.java:75: Error: Call requires API level 24 (current min is 23): android.os.UserManager#isUserUnlocked [NewApi]\r\n        if (users.isUserUnlocked()) {\r\n                  ~~~~~~~~~~~~~~\r\n/Users/nickchen/WorkBuddy/2026-10-23-15-17-57/cleanyourtv/launcher/app/src/main/java/com/gathin/tvhome/MainActivity.java:970: Error: Call requires API level 26 (current min is 23): android.content.pm.PackageManager#getChangedPackages [NewApi]\r\n        ChangedPackages changed = getPackageManager().getChangedPackages(packageSequence);\r\n                                                      ~~~~~~~~~~~~~~~~~~\r\n/Users/nickchen/WorkBuddy/2026-10-23-15-17-57/cleanyourtv/launcher/app/src/main/java/com/gathin/tvhome/MainActivity.java:971: Error: Call requires API level 26 (current min is 23): android.content.pm.ChangedPackages#getPackageNames [NewApi]\r\n        return changed != null && !changed.getPackageNames().isEmpty();\r\n                                           ~~~~~~~~~~~~~~~\r\n/Users/nickchen/WorkBuddy/2026-10-23-15-17-57/cleanyourtv/launcher/app/src/main/java/com/gathin/tvhome/MainActivity.java:975: Error: Call requires API level 26 (current min is 23): android.content.pm.PackageManager#getChangedPackages [NewApi]\r\n        ChangedPackages changed = getPackageManager().getChangedPackages(since);\r\n                                                      ~~~~~~~~~~~~~~~~~~\r\n/Users/nickchen/WorkBuddy/2026-10-23-15-17-57/cleanyourtv/launcher/app/src/main/java/com/gathin/tvhome/MainActivity.java:976: Error: Call requires API level 26 (current min is 23): android.content.pm.ChangedPackages#getSequenceNumber [NewApi]\r\n        return changed != null ? changed.getSequenceNumber() : since;\r\n                                         ~~~~~~~~~~~~~~~~~\r\n/Users/nickchen/WorkBuddy/2026-10-23-15-17-57/cleanyourtv/launcher/app/src/main/java/com/gathin/tvhome/MainActivity.java:1991: Error: Call requires API level 24 (current min is 23): android.content.res.Configuration#getLocales [NewApi]\r\n        return StatsText.forLocale(line.toString(), getResources().getConfiguration().getLocales().get(0));\r\n                                                                                      ~~~~~~~~~~\r\n/Users/nickchen/WorkBuddy/2026-10-23-15-17-57/cleanyourtv/launcher/app/src/main/java/com/gathin/tvhome/MainActivity.java:1991: Error: Call requires API level 24 (current min is 23): android.os.LocaleList#get [NewApi]\r\n        return StatsText.forLocale(line.toString(), getResources().getConfiguration().getLocales().get(0));\r\n                                                                                                   ~~~\r\n/Users/nickchen/WorkBuddy/2026-10-23-15-17-57/cleanyourtv/launcher/app/src/main/java/com/gathin/tvhome/MainActivity.java:2280: Error: Call requires API level 24 (current min is 23): android.content.res.Configuration#getLocales [NewApi]\r\n        Locale locale = getResources().getConfiguration().getLocales().get(0);\r\n                                                          ~~~~~~~~~~\r\n/Users/nickchen/WorkBuddy/2026-10-23-15-17-57/cleanyourtv/launcher/app/src/main/java/com/gathin/tvhome/MainActivity.java:2280: Error: Call requires API level 24 (current min is 23): android.os.LocaleList#get [NewApi]\r\n        Locale locale = getResources().getConfiguration().getLocales().get(0);\r\n                                                                       ~~~\r\n/Users/nickchen/WorkBuddy/2026-10-23-15-17-57/cleanyourtv/launcher/app/src/main/java/com/gathin/tvhome/MainActivity.java:2573: Error: Call requires API level 24 (current min is 23): android.media.tv.TvInputInfo#isHidden [NewApi]\r\n                if (info.isPassthroughInput() && !info.isHidden(this)) {\r\n                                                       ~~~~~~~~\r\n/Users/nickchen/WorkBuddy/2026-10-23-15-17-57/cleanyourtv/launcher/app/src/main/java/com/gathin/tvhome/MainActivity.java:2736: Error: Call requires API level 24 (current min is 23): android.media.tv.TvInputInfo#isHidden [NewApi]\r\n                if (!info.isPassthroughInput() || info.isHidden(this)) continue;\r\n                                                       ~~~~~~~~\r\n/Users/nickchen/WorkBuddy/2026-10-23-15-17-57/cleanyourtv/launcher/app/src/main/java/com/gathin/tvhome/MainActivity.java:2774: Error: Call requires API level 24 (current min is 23): android.media.tv.TvInputInfo#isHidden [NewApi]\r\n                if (!info.isPassthroughInput() || info.isHidden(this)) continue;\r\n                                                       ~~~~~~~~\r\n/Users/nickchen/WorkBuddy/2026-10-23-15-17-57/cleanyourtv/launcher/app/src/main/java/com/gathin/tvhome/MainActivity.java:2783: Error: Call requires API level 24 (current min is 23): android.media.tv.TvInputInfo#loadCustomLabel [NewApi]\r\n                CharSequence custom = info.loadCustomLabel(this);\r\n                                           ~~~~~~~~~~~~~~~\r\n/Users/nickchen/WorkBuddy/2026-10-23-15-17-57/cleanyourtv/launcher/app/src/main/java/com/gathin/tvhome/MainActivity.java:2793: Error: Call requires API level 24 (current min is 23): android.media.tv.TvInputInfo#loadCustomLabel [NewApi]\r\n                        CharSequence name = device.loadCustomLabel(this);\r\n                                                   ~~~~~~~~~~~~~~~\r\n/Users/nickchen/WorkBuddy/2026-10-23-15-17-57/cleanyourtv/launcher/app/src/main/java/com/gathin/tvhome/UiFont.java:20: Error: Call requires API level 26 (current min is 23): android.content.res.Resources#getFont [NewApi]\r\n        if (name.startsWith(\"res/\")) return res.getFont(value.resourceId);\r\n                                                ~~~~~~~\r\n/Users/nickchen/WorkBuddy/2026-10-23-15-17-57/cleanyourtv/launcher/app/src/main/java/com/gathin/tvhome/WallpaperCaptions.java:42: Error: Call requires API level 26 (current min is 23): java.io.File#toPath [NewApi]\r\n            return parse(Files.readAllLines(file.toPath(), StandardCharsets.UTF_8));\r\n                                                 ~~~~~~\r\n/Users/nickchen/WorkBuddy/2026-10-23-15-17-57/cleanyourtv/launcher/app/src/main/java/com/gathin/tvhome/WallpaperCaptions.java:42: Error: Call requires API level 26 (current min is 23): java.nio.file.Files#readAllLines [NewApi]\r\n            return parse(Files.readAllLines(file.toPath(), StandardCharsets.UTF_8));\r\n                               ~~~~~~~~~~~~\r\n/Users/nickchen/WorkBuddy/2026-10-23-15-17-57/cleanyourtv/launcher/app/src/main/java/com/gathin/tvhome/WallpaperPlayer.java:281: Error: Field requires API level 26 (current min is 23): android.graphics.Bitmap.Config#HARDWARE [NewApi]\r\n            Bitmap gpu = decoded.copy(Bitmap.Config.HARDWARE, false);\r\n                                      ~~~~~~~~~~~~~~~~~~~~~~\r\n\r\n   Explanation for issues of type \"NewApi\":\r\n   This check scans through all the Android API calls in the application and"}}