blob: e060c52b9bfc61bc2eb3ce833f1fea70011a3f81 [file] [log] [blame]
/*
* Copyright (C) 2014 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.android.fmradio;
import android.os.Bundle;
/**
* Activity connect FMRadio service should implements this interface to update
* ui or status
*/
public interface FmListener {
/**
* directly call back from service to activity
*/
// FM RDS station changed
int LISTEN_RDSSTATION_CHANGED = 0x00100010;
// FM PS information changed
int LISTEN_PS_CHANGED = 0x00100011;
// FM RT information changed
int LISTEN_RT_CHANGED = 0x00100100;
// FM Record state changed
int LISTEN_RECORDSTATE_CHANGED = 0x00100101; // 1048833
// FM record error occur
int LISTEN_RECORDERROR = 0x00100110; // 1048848
// FM record mode change
int LISTEN_RECORDMODE_CHANGED = 0x00100111; // 4018849
// FM Record state changed
int LISTEN_SPEAKER_MODE_CHANGED = 0x00101000; // 1052672
// Bundle keys
String SWITCH_ANTENNA_VALUE = "switch_antenna_value";
String CALLBACK_FLAG = "callback_flag";
String KEY_IS_SWITCH_ANTENNA = "key_is_switch_antenna";
String KEY_IS_TUNE = "key_is_tune";
String KEY_TUNE_TO_STATION = "key_tune_to_station";
String KEY_IS_SEEK = "key_is_seek";
String KEY_SEEK_TO_STATION = "key_seek_to_station";
String KEY_IS_SCAN = "key_is_scan";
String KEY_RDS_STATION = "key_rds_station";
String KEY_PS_INFO = "key_ps_info";
String KEY_RT_INFO = "key_rt_info";
String KEY_STATION_NUM = "key_station_num";
// Audio focus related
String KEY_AUDIOFOCUS_CHANGED = "key_audiofocus_changed";
// Recording
String KEY_RECORDING_STATE = "key_is_recording_state";
String KEY_RECORDING_ERROR_TYPE = "key_recording_error_type";
String KEY_IS_RECORDING_MODE = "key_is_recording_mode";
// For change speaker/earphone mode
String KEY_IS_SPEAKER_MODE = "key_is_speaker_mode";
/**
* handle message: call back from service to activity
*/
// Message to handle
int MSGID_UPDATE_RDS = 1;
int MSGID_UPDATE_CURRENT_STATION = 2;
int MSGID_ANTENNA_UNAVAILABE = 3;
int MSGID_SWITCH_ANTENNA = 4;
int MSGID_SET_RDS_FINISHED = 5;
int MSGID_SET_CHANNEL_FINISHED = 6;
int MSGID_SET_MUTE_FINISHED = 7;
// Fm main
int MSGID_POWERUP_FINISHED = 9;
int MSGID_POWERDOWN_FINISHED = 10;
int MSGID_FM_EXIT = 11;
int MSGID_SCAN_CANCELED = 12;
int MSGID_SCAN_FINISHED = 13;
int MSGID_AUDIOFOCUS_FAILED = 14;
int MSGID_TUNE_FINISHED = 15;
int MSGID_SEEK_FINISHED = 16;
int MSGID_ACTIVE_AF_FINISHED = 18;
// Recording
int MSGID_RECORD_STATE_CHANGED = 19;
int MSGID_RECORD_ERROR = 20;
int MSGID_RECORD_MODE_CHANED = 21;
int MSGID_STARTRECORDING_FINISHED = 22;
int MSGID_STOPRECORDING_FINISHED = 23;
int MSGID_STARTPLAYBACK_FINISHED = 24;
int MSGID_STOPPLAYBACK_FINISHED = 25;
int MSGID_SAVERECORDING_FINISHED = 26;
// Audio focus related
int MSGID_AUDIOFOCUS_CHANGED = 30;
int NOT_AUDIO_FOCUS = 33;
// For refresh time
int MSGID_REFRESH = 101;
/**
* Call back method to activity from service
*/
void onCallBack(Bundle bundle);
}