Skip to content

Commit 489217c

Browse files
authored
Revert "Fix empty channel (#17489)" (#17607)
This reverts commit 18338b9. Commit broke android compilation using build_examples.py: ``` ./scripts/build/build_examples.py --target android-arm-chip-tvserver ```
1 parent 382a6fb commit 489217c

File tree

4 files changed

+63
-92
lines changed

4 files changed

+63
-92
lines changed

examples/tv-app/android/App/platform-app/build.gradle

+2-2
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ android {
3939

4040
sourceSets {
4141
main {
42-
jniLibs.srcDirs = ['../platform-app/libs/jniLibs']
42+
jniLibs.srcDirs = ['../app/libs/jniLibs']
4343

4444
// uncomment this code to debug
4545
// java.srcDirs = [
@@ -54,7 +54,7 @@ android {
5454
}
5555

5656
dependencies {
57-
implementation fileTree(dir: "../platform-app/libs", include: ["*.jar","*.so"])
57+
implementation fileTree(dir: "../app/libs", include: ["*.jar","*.so"])
5858
implementation 'androidx.appcompat:appcompat:1.3.1'
5959
implementation 'com.google.android.material:material:1.4.0'
6060
implementation 'androidx.constraintlayout:constraintlayout:2.1.1'

examples/tv-app/android/java/ChannelManager.cpp

+55-70
Original file line numberDiff line numberDiff line change
@@ -141,44 +141,37 @@ CHIP_ERROR ChannelManager::HandleGetLineup(AttributeValueEncoder & aEncoder)
141141

142142
{
143143
jobject channelLineupObject = env->CallObjectMethod(mChannelManagerObject, mGetLineupMethod);
144-
if (channelLineupObject != nullptr)
145-
{
146-
jclass channelLineupClazz = env->GetObjectClass(channelLineupObject);
147-
148-
jfieldID operatorNameFild = env->GetFieldID(channelLineupClazz, "operatorName", "Ljava/lang/String;");
149-
jstring joperatorName = static_cast<jstring>(env->GetObjectField(channelLineupObject, operatorNameFild));
150-
JniUtfString operatorName(env, joperatorName);
151-
if (joperatorName != nullptr)
152-
{
153-
lineupInfo.operatorName = operatorName.charSpan();
154-
}
155-
156-
jfieldID lineupNameFild = env->GetFieldID(channelLineupClazz, "lineupName", "Ljava/lang/String;");
157-
jstring jlineupName = static_cast<jstring>(env->GetObjectField(channelLineupObject, lineupNameFild));
158-
JniUtfString lineupName(env, jlineupName);
159-
if (jlineupName != nullptr)
160-
{
161-
lineupInfo.lineupName = Optional<CharSpan>(lineupName.charSpan());
162-
}
144+
jclass channelLineupClazz = env->GetObjectClass(channelLineupObject);
163145

164-
jfieldID postalCodeFild = env->GetFieldID(channelLineupClazz, "postalCode", "Ljava/lang/String;");
165-
jstring jpostalCode = static_cast<jstring>(env->GetObjectField(channelLineupObject, postalCodeFild));
166-
JniUtfString postalCode(env, jpostalCode);
167-
if (jpostalCode != nullptr)
168-
{
169-
lineupInfo.postalCode = Optional<CharSpan>(postalCode.charSpan());
170-
}
171-
172-
jfieldID lineupInfoTypeFild = env->GetFieldID(channelLineupClazz, "lineupInfoType", "I");
173-
jint jlineupInfoType = (env->GetIntField(channelLineupObject, lineupInfoTypeFild));
174-
lineupInfo.lineupInfoType = static_cast<app::Clusters::Channel::LineupInfoTypeEnum>(jlineupInfoType);
146+
jfieldID operatorNameFild = env->GetFieldID(channelLineupClazz, "operatorName", "Ljava/lang/String;");
147+
jstring joperatorName = static_cast<jstring>(env->GetObjectField(channelLineupObject, operatorNameFild));
148+
JniUtfString operatorName(env, joperatorName);
149+
if (joperatorName != nullptr)
150+
{
151+
lineupInfo.operatorName = operatorName.charSpan();
152+
}
175153

176-
err = aEncoder.Encode(lineupInfo);
154+
jfieldID lineupNameFild = env->GetFieldID(channelLineupClazz, "lineupName", "Ljava/lang/String;");
155+
jstring jlineupName = static_cast<jstring>(env->GetObjectField(channelLineupObject, lineupNameFild));
156+
JniUtfString lineupName(env, jlineupName);
157+
if (jlineupName != nullptr)
158+
{
159+
lineupInfo.lineupName = Optional<CharSpan>(lineupName.charSpan());
177160
}
178-
else
161+
162+
jfieldID postalCodeFild = env->GetFieldID(channelLineupClazz, "postalCode", "Ljava/lang/String;");
163+
jstring jpostalCode = static_cast<jstring>(env->GetObjectField(channelLineupObject, postalCodeFild));
164+
JniUtfString postalCode(env, jpostalCode);
165+
if (jpostalCode != nullptr)
179166
{
180-
err = aEncoder.EncodeNull();
167+
lineupInfo.postalCode = Optional<CharSpan>(postalCode.charSpan());
181168
}
169+
170+
jfieldID lineupInfoTypeFild = env->GetFieldID(channelLineupClazz, "lineupInfoType", "I");
171+
jint jlineupInfoType = (env->GetIntField(channelLineupObject, lineupInfoTypeFild));
172+
lineupInfo.lineupInfoType = static_cast<app::Clusters::Channel::LineupInfoTypeEnum>(jlineupInfoType);
173+
174+
err = aEncoder.Encode(lineupInfo);
182175
}
183176

184177
exit:
@@ -202,49 +195,41 @@ CHIP_ERROR ChannelManager::HandleGetCurrentChannel(AttributeValueEncoder & aEnco
202195

203196
{
204197
jobject channelInfoObject = env->CallObjectMethod(mChannelManagerObject, mGetCurrentChannelMethod);
205-
if (channelInfoObject != nullptr)
206-
{
207-
jclass channelClass = env->GetObjectClass(channelInfoObject);
198+
jclass channelClass = env->GetObjectClass(channelInfoObject);
208199

209-
jfieldID getCallSignField = env->GetFieldID(channelClass, "callSign", "Ljava/lang/String;");
210-
jstring jcallSign = static_cast<jstring>(env->GetObjectField(channelInfoObject, getCallSignField));
211-
JniUtfString callsign(env, jcallSign);
212-
if (jcallSign != nullptr)
213-
{
214-
channelInfo.callSign = Optional<CharSpan>(callsign.charSpan());
215-
}
200+
jfieldID getCallSignField = env->GetFieldID(channelClass, "callSign", "Ljava/lang/String;");
201+
jstring jcallSign = static_cast<jstring>(env->GetObjectField(channelInfoObject, getCallSignField));
202+
JniUtfString callsign(env, jcallSign);
203+
if (jcallSign != nullptr)
204+
{
205+
channelInfo.callSign = Optional<CharSpan>(callsign.charSpan());
206+
}
216207

217-
jfieldID getNameField = env->GetFieldID(channelClass, "name", "Ljava/lang/String;");
218-
jstring jname = static_cast<jstring>(env->GetObjectField(channelInfoObject, getNameField));
219-
JniUtfString name(env, jname);
220-
if (jname != nullptr)
221-
{
222-
channelInfo.name = Optional<CharSpan>(name.charSpan());
223-
}
208+
jfieldID getNameField = env->GetFieldID(channelClass, "name", "Ljava/lang/String;");
209+
jstring jname = static_cast<jstring>(env->GetObjectField(channelInfoObject, getNameField));
210+
JniUtfString name(env, jname);
211+
if (jname != nullptr)
212+
{
213+
channelInfo.name = Optional<CharSpan>(name.charSpan());
214+
}
224215

225-
jfieldID getJaffiliateCallSignField = env->GetFieldID(channelClass, "affiliateCallSign", "Ljava/lang/String;");
226-
jstring jaffiliateCallSign = static_cast<jstring>(env->GetObjectField(channelInfoObject, getJaffiliateCallSignField));
227-
JniUtfString affiliateCallSign(env, jaffiliateCallSign);
228-
if (jaffiliateCallSign != nullptr)
229-
{
230-
channelInfo.affiliateCallSign = Optional<CharSpan>(affiliateCallSign.charSpan());
231-
}
216+
jfieldID getJaffiliateCallSignField = env->GetFieldID(channelClass, "affiliateCallSign", "Ljava/lang/String;");
217+
jstring jaffiliateCallSign = static_cast<jstring>(env->GetObjectField(channelInfoObject, getJaffiliateCallSignField));
218+
JniUtfString affiliateCallSign(env, jaffiliateCallSign);
219+
if (jaffiliateCallSign != nullptr)
220+
{
221+
channelInfo.affiliateCallSign = Optional<CharSpan>(affiliateCallSign.charSpan());
222+
}
232223

233-
jfieldID majorNumField = env->GetFieldID(channelClass, "majorNumber", "I");
234-
jint jmajorNum = env->GetIntField(channelInfoObject, majorNumField);
235-
channelInfo.majorNumber = static_cast<uint16_t>(jmajorNum);
224+
jfieldID majorNumField = env->GetFieldID(channelClass, "majorNumber", "I");
225+
jint jmajorNum = env->GetIntField(channelInfoObject, majorNumField);
226+
channelInfo.majorNumber = static_cast<uint16_t>(jmajorNum);
236227

237-
jfieldID minorNumField = env->GetFieldID(channelClass, "minorNumber", "I");
238-
jint jminorNum = env->GetIntField(channelInfoObject, minorNumField);
239-
channelInfo.minorNumber = static_cast<uint16_t>(jminorNum);
228+
jfieldID minorNumField = env->GetFieldID(channelClass, "minorNumber", "I");
229+
jint jminorNum = env->GetIntField(channelInfoObject, minorNumField);
230+
channelInfo.minorNumber = static_cast<uint16_t>(jminorNum);
240231

241-
err = aEncoder.Encode(channelInfo);
242-
}
243-
else
244-
{
245-
err = aEncoder.EncodeNull();
246-
return err;
247-
}
232+
err = aEncoder.Encode(channelInfo);
248233
}
249234

250235
exit:

examples/tv-app/android/java/src/com/tcl/chip/tvapp/ChannelManagerStub.java

-14
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@ public class ChannelManagerStub implements ChannelManager {
2323
private static final String TAG = ChannelManagerStub.class.getSimpleName();
2424

2525
private int endpoint;
26-
private int mCurrentChannel = 0;
2726

2827
public ChannelManagerStub(int endpoint) {
2928
this.endpoint = endpoint;
@@ -39,12 +38,6 @@ public ChannelInfo[] getChannelList() {
3938

4039
@Override
4140
public ChannelLineupInfo getLineup() {
42-
// for null lineup test
43-
if (mCurrentChannel == 100) {
44-
Log.d(TAG, "getChannelLineup: null at " + endpoint);
45-
return null;
46-
}
47-
4841
ChannelLineupInfo lineupInfo = new ChannelLineupInfo("operator", "lineup", "postalCode");
4942
Log.d(TAG, "getChannelLineup: " + lineupInfo + " at " + endpoint);
5043
return lineupInfo;
@@ -53,11 +46,6 @@ public ChannelLineupInfo getLineup() {
5346
@Override
5447
public ChannelInfo getCurrentChannel() {
5548
Log.d(TAG, "getCurrentChannel: at " + endpoint);
56-
// for null channel test
57-
if (mCurrentChannel == 100) {
58-
return null;
59-
}
60-
6149
return new ChannelInfo(1, 1, "HDMI", "callSign", "affiliateCallSign");
6250
}
6351

@@ -84,8 +72,6 @@ public boolean changeChannelByNumber(int majorNumber, int minorNumber) {
8472
+ " at "
8573
+ endpoint);
8674

87-
mCurrentChannel = majorNumber;
88-
8975
// for failed test
9076
if (majorNumber == 1 && minorNumber == 1) {
9177
return false;

scripts/examples/gn_android_example.sh

+6-6
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
# limitations under the License.
1717
#
1818

19-
set -ex
19+
set -e
2020

2121
# Build script for GN examples GitHub workflow.
2222

@@ -74,8 +74,8 @@ gn gen --check --fail-on-unused-args --root="$EXAMPLE_DIR" "$OUTPUT_DIR" --args=
7474

7575
ninja -C "$OUTPUT_DIR" "${NINJA_ARGS[@]}"
7676

77-
cp -rf "$OUTPUT_DIR/lib/jni/." "$EXAMPLE_DIR/App/platform-app/libs/jniLibs/"
78-
cp -f "$OUTPUT_DIR/lib/third_party/connectedhomeip/src/platform/android/AndroidPlatform.jar" "$EXAMPLE_DIR/App/platform-app/libs/"
79-
cp -f "$OUTPUT_DIR/lib/third_party/connectedhomeip/src/app/server/java/CHIPAppServer.jar" "$EXAMPLE_DIR/App/platform-app/libs/"
80-
cp -f "$OUTPUT_DIR/lib/third_party/connectedhomeip/src/setup_payload/java/SetupPayloadParser.jar" "$EXAMPLE_DIR/App/platform-app/libs/"
81-
cp -f "$OUTPUT_DIR/lib/TvApp.jar" "$EXAMPLE_DIR/App/platform-app/libs/"
77+
cp -rf "$OUTPUT_DIR/lib/jni/." "$EXAMPLE_DIR/App/app/libs/jniLibs/"
78+
cp -f "$OUTPUT_DIR/lib/third_party/connectedhomeip/src/platform/android/AndroidPlatform.jar" "$EXAMPLE_DIR/App/app/libs/"
79+
cp -f "$OUTPUT_DIR/lib/third_party/connectedhomeip/src/app/server/java/CHIPAppServer.jar" "$EXAMPLE_DIR/App/app/libs/"
80+
cp -f "$OUTPUT_DIR/lib/third_party/connectedhomeip/src/setup_payload/java/SetupPayloadParser.jar" "$EXAMPLE_DIR/App/app/libs/"
81+
cp -f "$OUTPUT_DIR/lib/TvApp.jar" "$EXAMPLE_DIR/App/app/libs/"

0 commit comments

Comments
 (0)