Merge "Address Broadcast Radio HAL review notes." into oc-mr1-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
36ea87b075
@@ -23,7 +23,7 @@ import android.hardware.radio.RadioMetadata;
|
|||||||
oneway interface ITunerCallback {
|
oneway interface ITunerCallback {
|
||||||
void onError(int status);
|
void onError(int status);
|
||||||
void onConfigurationChanged(in RadioManager.BandConfig config);
|
void onConfigurationChanged(in RadioManager.BandConfig config);
|
||||||
void onProgramInfoChanged();
|
void onCurrentProgramInfoChanged();
|
||||||
void onTrafficAnnouncement(boolean active);
|
void onTrafficAnnouncement(boolean active);
|
||||||
void onEmergencyAnnouncement(boolean active);
|
void onEmergencyAnnouncement(boolean active);
|
||||||
void onAntennaState(boolean connected);
|
void onAntennaState(boolean connected);
|
||||||
|
|||||||
@@ -49,7 +49,7 @@ class TunerCallbackAdapter extends ITunerCallback.Stub {
|
|||||||
synchronized (mLock) {
|
synchronized (mLock) {
|
||||||
if (mTuner != null) throw new IllegalStateException();
|
if (mTuner != null) throw new IllegalStateException();
|
||||||
mTuner = tuner;
|
mTuner = tuner;
|
||||||
if (mPendingProgramInfoChanged) onProgramInfoChanged();
|
if (mPendingProgramInfoChanged) onCurrentProgramInfoChanged();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -64,7 +64,7 @@ class TunerCallbackAdapter extends ITunerCallback.Stub {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onProgramInfoChanged() {
|
public void onCurrentProgramInfoChanged() {
|
||||||
synchronized (mLock) {
|
synchronized (mLock) {
|
||||||
if (mTuner == null) {
|
if (mTuner == null) {
|
||||||
mPendingProgramInfoChanged = true;
|
mPendingProgramInfoChanged = true;
|
||||||
|
|||||||
@@ -86,8 +86,8 @@ class TunerCallback implements ITunerCallback {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onProgramInfoChanged() {
|
public void onCurrentProgramInfoChanged() {
|
||||||
dispatch(() -> mClientCallback.onProgramInfoChanged());
|
dispatch(() -> mClientCallback.onCurrentProgramInfoChanged());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -296,7 +296,7 @@ static void nativeTune(JNIEnv *env, jobject obj, jlong nativeContext, jobject jS
|
|||||||
|
|
||||||
auto selector = convert::ProgramSelectorToHal(env, jSelector);
|
auto selector = convert::ProgramSelectorToHal(env, jSelector);
|
||||||
if (halTuner11 != nullptr) {
|
if (halTuner11 != nullptr) {
|
||||||
convert::ThrowIfFailed(env, halTuner11->tune_1_1(selector));
|
convert::ThrowIfFailed(env, halTuner11->tuneByProgramSelector(selector));
|
||||||
} else {
|
} else {
|
||||||
uint32_t channel, subChannel;
|
uint32_t channel, subChannel;
|
||||||
if (!V1_1::utils::getLegacyChannel(selector, &channel, &subChannel)) {
|
if (!V1_1::utils::getLegacyChannel(selector, &channel, &subChannel)) {
|
||||||
|
|||||||
@@ -58,7 +58,7 @@ static struct {
|
|||||||
jmethodID handleHwFailure;
|
jmethodID handleHwFailure;
|
||||||
jmethodID onError;
|
jmethodID onError;
|
||||||
jmethodID onConfigurationChanged;
|
jmethodID onConfigurationChanged;
|
||||||
jmethodID onProgramInfoChanged;
|
jmethodID onCurrentProgramInfoChanged;
|
||||||
jmethodID onTrafficAnnouncement;
|
jmethodID onTrafficAnnouncement;
|
||||||
jmethodID onEmergencyAnnouncement;
|
jmethodID onEmergencyAnnouncement;
|
||||||
jmethodID onAntennaState;
|
jmethodID onAntennaState;
|
||||||
@@ -111,7 +111,7 @@ public:
|
|||||||
virtual Return<void> backgroundScanAvailable(bool isAvailable);
|
virtual Return<void> backgroundScanAvailable(bool isAvailable);
|
||||||
virtual Return<void> backgroundScanComplete(ProgramListResult result);
|
virtual Return<void> backgroundScanComplete(ProgramListResult result);
|
||||||
virtual Return<void> programListChanged();
|
virtual Return<void> programListChanged();
|
||||||
virtual Return<void> programInfoChanged();
|
virtual Return<void> currentProgramInfoChanged();
|
||||||
};
|
};
|
||||||
|
|
||||||
struct TunerCallbackContext {
|
struct TunerCallbackContext {
|
||||||
@@ -192,7 +192,7 @@ Return<void> NativeCallback::tuneComplete_1_1(Result result, const ProgramSelect
|
|||||||
|
|
||||||
mCallbackThread.enqueue([result, this](JNIEnv *env) {
|
mCallbackThread.enqueue([result, this](JNIEnv *env) {
|
||||||
if (result == Result::OK) {
|
if (result == Result::OK) {
|
||||||
env->CallVoidMethod(mJCallback, gjni.TunerCallback.onProgramInfoChanged);
|
env->CallVoidMethod(mJCallback, gjni.TunerCallback.onCurrentProgramInfoChanged);
|
||||||
} else {
|
} else {
|
||||||
TunerError cause = TunerError::CANCELLED;
|
TunerError cause = TunerError::CANCELLED;
|
||||||
if (result == Result::TIMEOUT) cause = TunerError::SCAN_TIMEOUT;
|
if (result == Result::TIMEOUT) cause = TunerError::SCAN_TIMEOUT;
|
||||||
@@ -254,7 +254,7 @@ Return<void> NativeCallback::newMetadata(uint32_t channel, uint32_t subChannel,
|
|||||||
}
|
}
|
||||||
|
|
||||||
mCallbackThread.enqueue([this, metadata](JNIEnv *env) {
|
mCallbackThread.enqueue([this, metadata](JNIEnv *env) {
|
||||||
env->CallVoidMethod(mJCallback, gjni.TunerCallback.onProgramInfoChanged);
|
env->CallVoidMethod(mJCallback, gjni.TunerCallback.onCurrentProgramInfoChanged);
|
||||||
});
|
});
|
||||||
|
|
||||||
return Return<void>();
|
return Return<void>();
|
||||||
@@ -297,11 +297,11 @@ Return<void> NativeCallback::programListChanged() {
|
|||||||
return Return<void>();
|
return Return<void>();
|
||||||
}
|
}
|
||||||
|
|
||||||
Return<void> NativeCallback::programInfoChanged() {
|
Return<void> NativeCallback::currentProgramInfoChanged() {
|
||||||
ALOGV("%s", __func__);
|
ALOGV("%s", __func__);
|
||||||
|
|
||||||
mCallbackThread.enqueue([this](JNIEnv *env) {
|
mCallbackThread.enqueue([this](JNIEnv *env) {
|
||||||
env->CallVoidMethod(mJCallback, gjni.TunerCallback.onProgramInfoChanged);
|
env->CallVoidMethod(mJCallback, gjni.TunerCallback.onCurrentProgramInfoChanged);
|
||||||
});
|
});
|
||||||
|
|
||||||
return Return<void>();
|
return Return<void>();
|
||||||
@@ -379,8 +379,8 @@ void register_android_server_broadcastradio_TunerCallback(JavaVM *vm, JNIEnv *en
|
|||||||
gjni.TunerCallback.onError = GetMethodIDOrDie(env, tunerCbClass, "onError", "(I)V");
|
gjni.TunerCallback.onError = GetMethodIDOrDie(env, tunerCbClass, "onError", "(I)V");
|
||||||
gjni.TunerCallback.onConfigurationChanged = GetMethodIDOrDie(env, tunerCbClass,
|
gjni.TunerCallback.onConfigurationChanged = GetMethodIDOrDie(env, tunerCbClass,
|
||||||
"onConfigurationChanged", "(Landroid/hardware/radio/RadioManager$BandConfig;)V");
|
"onConfigurationChanged", "(Landroid/hardware/radio/RadioManager$BandConfig;)V");
|
||||||
gjni.TunerCallback.onProgramInfoChanged = GetMethodIDOrDie(env, tunerCbClass,
|
gjni.TunerCallback.onCurrentProgramInfoChanged = GetMethodIDOrDie(env, tunerCbClass,
|
||||||
"onProgramInfoChanged", "()V");
|
"onCurrentProgramInfoChanged", "()V");
|
||||||
gjni.TunerCallback.onTrafficAnnouncement = GetMethodIDOrDie(env, tunerCbClass,
|
gjni.TunerCallback.onTrafficAnnouncement = GetMethodIDOrDie(env, tunerCbClass,
|
||||||
"onTrafficAnnouncement", "(Z)V");
|
"onTrafficAnnouncement", "(Z)V");
|
||||||
gjni.TunerCallback.onEmergencyAnnouncement = GetMethodIDOrDie(env, tunerCbClass,
|
gjni.TunerCallback.onEmergencyAnnouncement = GetMethodIDOrDie(env, tunerCbClass,
|
||||||
|
|||||||
Reference in New Issue
Block a user