aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSteve Kondik <steve@cyngn.com>2018-12-03 09:55:47 +0100
committerHan Wang <416810799@qq.com>2019-01-06 05:09:41 +0100
commiteaf833a4e4accaadaadfe23f57b26a803308bded (patch)
tree3b71bebe2d3883eb30e91d26a4cd30af30a572a1
parent0c66c31d1f12a8fc5cb7387e3de98daae5466125 (diff)
downloadlineage-sdk-eaf833a4e4accaadaadfe23f57b26a803308bded.tar.gz
lineage-sdk-eaf833a4e4accaadaadfe23f57b26a803308bded.tar.bz2
lineage-sdk-eaf833a4e4accaadaadfe23f57b26a803308bded.zip
lineage-sdk: Start Weather service in onUnlockUser.
After reboot the active WeatherProvider is started (onBootPhase) too early, resulting in WeatherProvider not syncing anymore. Start the active Provider when userland apps are ready to fix this, like on 14.1: https://github.com/LineageOS/cm_platform_sdk/commit/0cee14b03c42fc606b9674d22f9a82a638617d0e Found by meiser@xda lineage-15.1 ready Weatherproviders for testing: https://github.com/nvertigo/android_vendor_nlos/tree/nlos-15.1/weatherproviders Change-Id: I8d3eb7aacaf265c55d5d0b5157731e04068a7c7d
-rw-r--r--lineage/lib/main/java/org/lineageos/platform/internal/LineageWeatherManagerService.java10
1 files changed, 7 insertions, 3 deletions
diff --git a/lineage/lib/main/java/org/lineageos/platform/internal/LineageWeatherManagerService.java b/lineage/lib/main/java/org/lineageos/platform/internal/LineageWeatherManagerService.java
index f35ccec5..6515fb8f 100644
--- a/lineage/lib/main/java/org/lineageos/platform/internal/LineageWeatherManagerService.java
+++ b/lineage/lib/main/java/org/lineageos/platform/internal/LineageWeatherManagerService.java
@@ -235,9 +235,13 @@ public class LineageWeatherManagerService extends LineageSystemService {
@Override
public void onBootPhase(int phase) {
- if (phase == PHASE_ACTIVITY_MANAGER_READY) {
- bindActiveWeatherProviderService();
- }
+ // Do nothing. We need userland apps to be fully up and running.
+ // We will connect in onUnlockUser instead.
+ }
+
+ @Override
+ public void onUnlockUser(int userHandle) {
+ bindActiveWeatherProviderService();
}
private void bindActiveWeatherProviderService() {