Android Radio combat - cancelar operación (diecisiete)

        Durante la búsqueda, la modulación radial, la modulación de frecuencia y otras operaciones, si el tiempo es largo, el usuario generalmente abandonará esta operación, lo que requiere cancelar la operación del sintonizador anterior, lo que requiere el uso de la función de cancelación.

1. Realización de funciones

encapsulación de métodos

private RadioTuner mRadioTuner;

/**
 * 取消操作
 */
public void setRadioCancel(boolean tag) {
    if (mRadioTuner == null) {
        mRadioTuner = openSession(mRadioCallback);
    }
    mRadioTuner.cancel();
}

        Llame al método cancel() en RadioTuner directamente en el método encapsulado.

2. Análisis del código fuente

1. Cancelar operación

RadioTuner.cancelar

Ubicación de origen: /frameworks/base/core/java/android/hardware/radio/RadioTuner.java

/**
 * 取消挂起的扫描或调优操作
 * 如果一个操作正在等待,Callback onError()将被调用#ERROR_CANCELLED
 * @return
 * RadioManager#STATUS_OK 成功
 * RadioManager#STATUS_ERROR 未知错误
 * RadioManager#STATUS_NO_INIT 无法访问本机服务
 * RadioManager#STATUS_BAD_VALUE 参数无效
 * RadioManager#STATUS_INVALID_OPERATION 调用无序
 * RadioManager#STATUS_DEAD_OBJECT 绑定到本地服务的事务失败
 */
public abstract int can

Supongo que te gusta

Origin blog.csdn.net/c19344881x/article/details/131203058
Recomendado
Clasificación