Merge "Move receiver registration to background thread" into tm-qpr-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
e75afe61a2
@@ -17,6 +17,7 @@
|
|||||||
package com.android.systemui.dagger;
|
package com.android.systemui.dagger;
|
||||||
|
|
||||||
import android.annotation.Nullable;
|
import android.annotation.Nullable;
|
||||||
|
import android.annotation.SuppressLint;
|
||||||
import android.app.ActivityManager;
|
import android.app.ActivityManager;
|
||||||
import android.app.ActivityTaskManager;
|
import android.app.ActivityTaskManager;
|
||||||
import android.app.AlarmManager;
|
import android.app.AlarmManager;
|
||||||
@@ -68,6 +69,7 @@ import android.os.PowerManager;
|
|||||||
import android.os.ServiceManager;
|
import android.os.ServiceManager;
|
||||||
import android.os.UserManager;
|
import android.os.UserManager;
|
||||||
import android.os.Vibrator;
|
import android.os.Vibrator;
|
||||||
|
import android.os.storage.StorageManager;
|
||||||
import android.permission.PermissionManager;
|
import android.permission.PermissionManager;
|
||||||
import android.safetycenter.SafetyCenterManager;
|
import android.safetycenter.SafetyCenterManager;
|
||||||
import android.service.dreams.DreamService;
|
import android.service.dreams.DreamService;
|
||||||
@@ -109,6 +111,7 @@ import dagger.Provides;
|
|||||||
/**
|
/**
|
||||||
* Provides Non-SystemUI, Framework-Owned instances to the dependency graph.
|
* Provides Non-SystemUI, Framework-Owned instances to the dependency graph.
|
||||||
*/
|
*/
|
||||||
|
@SuppressLint("NonInjectedService")
|
||||||
@Module
|
@Module
|
||||||
public class FrameworkServicesModule {
|
public class FrameworkServicesModule {
|
||||||
@Provides
|
@Provides
|
||||||
@@ -462,7 +465,13 @@ public class FrameworkServicesModule {
|
|||||||
|
|
||||||
@Provides
|
@Provides
|
||||||
@Singleton
|
@Singleton
|
||||||
static SubscriptionManager provideSubcriptionManager(Context context) {
|
static StorageManager provideStorageManager(Context context) {
|
||||||
|
return context.getSystemService(StorageManager.class);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Provides
|
||||||
|
@Singleton
|
||||||
|
static SubscriptionManager provideSubscriptionManager(Context context) {
|
||||||
return context.getSystemService(SubscriptionManager.class);
|
return context.getSystemService(SubscriptionManager.class);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -46,6 +46,7 @@ import com.android.internal.R;
|
|||||||
import com.android.internal.messages.nano.SystemMessageProto.SystemMessage;
|
import com.android.internal.messages.nano.SystemMessageProto.SystemMessage;
|
||||||
import com.android.systemui.CoreStartable;
|
import com.android.systemui.CoreStartable;
|
||||||
import com.android.systemui.SystemUIApplication;
|
import com.android.systemui.SystemUIApplication;
|
||||||
|
import com.android.systemui.broadcast.BroadcastDispatcher;
|
||||||
import com.android.systemui.dagger.SysUISingleton;
|
import com.android.systemui.dagger.SysUISingleton;
|
||||||
import com.android.systemui.util.NotificationChannels;
|
import com.android.systemui.util.NotificationChannels;
|
||||||
|
|
||||||
@@ -61,15 +62,24 @@ public class StorageNotification implements CoreStartable {
|
|||||||
private static final String ACTION_SNOOZE_VOLUME = "com.android.systemui.action.SNOOZE_VOLUME";
|
private static final String ACTION_SNOOZE_VOLUME = "com.android.systemui.action.SNOOZE_VOLUME";
|
||||||
private static final String ACTION_FINISH_WIZARD = "com.android.systemui.action.FINISH_WIZARD";
|
private static final String ACTION_FINISH_WIZARD = "com.android.systemui.action.FINISH_WIZARD";
|
||||||
private final Context mContext;
|
private final Context mContext;
|
||||||
|
private final BroadcastDispatcher mBroadcastDispatcher;
|
||||||
|
|
||||||
// TODO: delay some notifications to avoid bumpy fast operations
|
// TODO: delay some notifications to avoid bumpy fast operations
|
||||||
|
|
||||||
private NotificationManager mNotificationManager;
|
private final NotificationManager mNotificationManager;
|
||||||
private StorageManager mStorageManager;
|
private final StorageManager mStorageManager;
|
||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
public StorageNotification(Context context) {
|
public StorageNotification(
|
||||||
|
Context context,
|
||||||
|
BroadcastDispatcher broadcastDispatcher,
|
||||||
|
NotificationManager notificationManager,
|
||||||
|
StorageManager storageManager
|
||||||
|
) {
|
||||||
mContext = context;
|
mContext = context;
|
||||||
|
mBroadcastDispatcher = broadcastDispatcher;
|
||||||
|
mNotificationManager = notificationManager;
|
||||||
|
mStorageManager = storageManager;
|
||||||
}
|
}
|
||||||
|
|
||||||
private static class MoveInfo {
|
private static class MoveInfo {
|
||||||
@@ -168,17 +178,22 @@ public class StorageNotification implements CoreStartable {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void start() {
|
public void start() {
|
||||||
mNotificationManager = mContext.getSystemService(NotificationManager.class);
|
|
||||||
|
|
||||||
mStorageManager = mContext.getSystemService(StorageManager.class);
|
|
||||||
mStorageManager.registerListener(mListener);
|
mStorageManager.registerListener(mListener);
|
||||||
|
|
||||||
mContext.registerReceiver(mSnoozeReceiver, new IntentFilter(ACTION_SNOOZE_VOLUME),
|
mBroadcastDispatcher.registerReceiver(
|
||||||
android.Manifest.permission.MOUNT_UNMOUNT_FILESYSTEMS, null,
|
mSnoozeReceiver,
|
||||||
Context.RECEIVER_EXPORTED_UNAUDITED);
|
new IntentFilter(ACTION_SNOOZE_VOLUME),
|
||||||
mContext.registerReceiver(mFinishReceiver, new IntentFilter(ACTION_FINISH_WIZARD),
|
null,
|
||||||
android.Manifest.permission.MOUNT_UNMOUNT_FILESYSTEMS, null,
|
null,
|
||||||
Context.RECEIVER_EXPORTED_UNAUDITED);
|
Context.RECEIVER_EXPORTED_UNAUDITED,
|
||||||
|
android.Manifest.permission.MOUNT_UNMOUNT_FILESYSTEMS);
|
||||||
|
mBroadcastDispatcher.registerReceiver(
|
||||||
|
mFinishReceiver,
|
||||||
|
new IntentFilter(ACTION_FINISH_WIZARD),
|
||||||
|
null,
|
||||||
|
null,
|
||||||
|
Context.RECEIVER_EXPORTED_UNAUDITED,
|
||||||
|
android.Manifest.permission.MOUNT_UNMOUNT_FILESYSTEMS);
|
||||||
|
|
||||||
// Kick current state into place
|
// Kick current state into place
|
||||||
final List<DiskInfo> disks = mStorageManager.getDisks();
|
final List<DiskInfo> disks = mStorageManager.getDisks();
|
||||||
|
|||||||
Reference in New Issue
Block a user