Home | History | Annotate | Download | only in keyguard
      1 /*
      2  * Copyright (C) 2012 The Android Open Source Project
      3  *
      4  * Licensed under the Apache License, Version 2.0 (the "License");
      5  * you may not use this file except in compliance with the License.
      6  * You may obtain a copy of the License at
      7  *
      8  *      http://www.apache.org/licenses/LICENSE-2.0
      9  *
     10  * Unless required by applicable law or agreed to in writing, software
     11  * distributed under the License is distributed on an "AS IS" BASIS,
     12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     13  * See the License for the specific language governing permissions and
     14  * limitations under the License.
     15  */
     16 package com.android.internal.policy.impl.keyguard;
     17 
     18 import android.app.PendingIntent;
     19 import android.app.admin.DevicePolicyManager;
     20 import android.media.AudioManager;
     21 
     22 import com.android.internal.telephony.IccCardConstants;
     23 
     24 /**
     25  * Callback for general information relevant to lock screen.
     26  */
     27 class KeyguardUpdateMonitorCallback {
     28     /**
     29      * Called when the battery status changes, e.g. when plugged in or unplugged, charge
     30      * level, etc. changes.
     31      *
     32      * @param status current battery status
     33      */
     34     void onRefreshBatteryInfo(KeyguardUpdateMonitor.BatteryStatus status) { }
     35 
     36     /**
     37      * Called once per minute or when the time changes.
     38      */
     39     void onTimeChanged() { }
     40 
     41     /**
     42      * Called when the carrier PLMN or SPN changes.
     43      *
     44      * @param plmn The operator name of the registered network.  May be null if it shouldn't
     45      *   be displayed.
     46      * @param spn The service provider name.  May be null if it shouldn't be displayed.
     47      */
     48     void onRefreshCarrierInfo(CharSequence plmn, CharSequence spn) { }
     49 
     50     /**
     51      * Called when the ringer mode changes.
     52      * @param state the current ringer state, as defined in
     53      * {@link AudioManager#RINGER_MODE_CHANGED_ACTION}
     54      */
     55     void onRingerModeChanged(int state) { }
     56 
     57     /**
     58      * Called when the phone state changes. String will be one of:
     59      * {@link TelephonyManager#EXTRA_STATE_IDLE}
     60      * {@link TelephonyManager@EXTRA_STATE_RINGING}
     61      * {@link TelephonyManager#EXTRA_STATE_OFFHOOK
     62      */
     63     void onPhoneStateChanged(int phoneState) { }
     64 
     65     /**
     66      * Called when the visibility of the keyguard changes.
     67      * @param showing Indicates if the keyguard is now visible.
     68      */
     69     void onKeyguardVisibilityChanged(boolean showing) { }
     70 
     71     /**
     72      * Called when visibility of lockscreen clock changes, such as when
     73      * obscured by a widget.
     74      */
     75     void onClockVisibilityChanged() { }
     76 
     77     /**
     78      * Called when the device becomes provisioned
     79      */
     80     void onDeviceProvisioned() { }
     81 
     82     /**
     83      * Called when the device policy changes.
     84      * See {@link DevicePolicyManager#ACTION_DEVICE_POLICY_MANAGER_STATE_CHANGED}
     85      */
     86     void onDevicePolicyManagerStateChanged() { }
     87 
     88     /**
     89      * Called when the user change begins.
     90      */
     91     void onUserSwitching(int userId) { }
     92 
     93     /**
     94      * Called when the user change is complete.
     95      */
     96     void onUserSwitchComplete(int userId) { }
     97 
     98     /**
     99      * Called when the SIM state changes.
    100      * @param simState
    101      */
    102     void onSimStateChanged(IccCardConstants.State simState) { }
    103 
    104     /**
    105      * Called when a user is removed.
    106      */
    107     void onUserRemoved(int userId) { }
    108 
    109     /**
    110      * Called when the user's info changed.
    111      */
    112     void onUserInfoChanged(int userId) { }
    113 
    114     /**
    115      * Called when boot completed.
    116      *
    117      * Note, this callback will only be received if boot complete occurs after registering with
    118      * KeyguardUpdateMonitor.
    119      */
    120     void onBootCompleted() { }
    121 
    122     /**
    123      * Called when audio client attaches or detaches from AudioManager.
    124      */
    125     void onMusicClientIdChanged(int clientGeneration, boolean clearing, PendingIntent intent) { }
    126 
    127     /**
    128      * Called when the audio playback state changes.
    129      * @param playbackState
    130      * @param eventTime
    131      */
    132     public void onMusicPlaybackStateChanged(int playbackState, long eventTime) { }
    133 
    134 }
    135