Add Transcode Settings screen in Developer Options

This screen would be used to enable/disable transcoding for all apps, and select a list of apps to be skipped from transcoding.
UI screenshot: https://screenshot.googleplex.com/4bpbZdM6vbhdw5u

Design doc reference for native transcoding: go/seamless-transcoding

Test: Manual
Bug: 169547037
Change-Id: I7cf72131560b99728083838bf0dad400bb5cb4a9
This commit is contained in:
Biswarup Pal
2020-10-25 16:38:23 +00:00
parent 60d3e5ec63
commit 519ebd6fe8
7 changed files with 478 additions and 0 deletions

View File

@@ -0,0 +1,52 @@
/*
* Copyright (C) 2020 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.settings.development.transcode;
import android.content.Context;
import android.os.SystemProperties;
import com.android.settings.core.TogglePreferenceController;
/**
* The controller for the "Enable transcode for all apps" switch on the transcode settings
* screen.
*/
public class TranscodeGlobalTogglePreferenceController extends TogglePreferenceController {
private static final String TRANSCODE_ENABLED_PROP_KEY = "persist.sys.fuse.transcode";
public TranscodeGlobalTogglePreferenceController(Context context,
String preferenceKey) {
super(context, preferenceKey);
}
@Override
public int getAvailabilityStatus() {
return AVAILABLE;
}
@Override
public boolean isChecked() {
return SystemProperties.getBoolean(TRANSCODE_ENABLED_PROP_KEY, false);
}
@Override
public boolean setChecked(boolean isChecked) {
SystemProperties.set(TRANSCODE_ENABLED_PROP_KEY, String.valueOf(isChecked));
return true;
}
}