fix: Add build script and fix manifest

- Add build-apk.sh for easy compilation
- Simplify AndroidManifest.xml
- Fix themes.xml to use basic Android themes
- Enable BuildConfig
- Add okhttp-dnsoverhttps dependency
This commit is contained in:
Renato
2026-01-28 22:36:38 +00:00
parent d3ce7872e7
commit 2ccdf3a78c
11853 changed files with 741631 additions and 543 deletions

View File

@@ -0,0 +1,73 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
/*
** Copyright 2015, 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.
*/
-->
<!-- These resources are around just to allow their values to be customized
for TV products. Do not translate. -->
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<!-- Flags enabling default window features. See Window.java -->
<bool name="config_defaultWindowFeatureOptionsPanel">false</bool>
<!-- The maximum height of the expanded horizontal picture-in-picture window -->
<item name="config_pictureInPictureExpandedHorizontalHeight"
format="dimension" type="dimen">110dp</item>
<!-- The maximum width of the expanded vertical picture-in-picture window -->
<item name="config_pictureInPictureExpandedVerticalWidth"
format="dimension" type="dimen">110dp</item>
<!-- The behavior when an activity has not specified a preference to dock big overlays or not.
Docking puts the activity side-by-side next to the big overlay windows. -->
<bool name="config_dockBigOverlayWindows">true</bool>
<!-- Whether the device uses the default focus highlight when focus state isn't specified. -->
<bool name="config_useDefaultFocusHighlight">false</bool>
<!-- Allow SystemUI to show the shutdown dialog -->
<bool name="config_showSysuiShutdown">true</bool>
<!-- Component name of the activity used to inform a user about a sensory being blocked because
of privacy settings. -->
<string name="config_sensorUseStartedActivity" translatable="false">
com.android.systemui/com.android.systemui.sensorprivacy.television.TvUnblockSensorActivity
</string>
<!-- Component name of the activity used to inform a user about a sensory being blocked because
of hardware privacy switches. -->
<string name="config_sensorUseStartedActivity_hwToggle" translatable="false">
com.android.systemui/com.android.systemui.sensorprivacy.television.TvUnblockSensorActivity
</string>
<!-- Component name of the activity used to inform a user about a sensor privacy update from
SW/HW privacy switches. -->
<string name="config_sensorStateChangedActivity" translatable="false">
com.android.systemui/com.android.systemui.sensorprivacy.television.TvSensorPrivacyChangedActivity
</string>
<!-- Component name of the activity that shows the request for access to a usb device. -->
<string name="config_usbPermissionActivity" translatable="false">
com.android.systemui/com.android.systemui.usb.tv.TvUsbPermissionActivity
</string>
<!-- Component name of the activity that confirms the activity to start when a usb device is
plugged in. -->
<string name="config_usbConfirmActivity" translatable="false">
com.android.systemui/com.android.systemui.usb.tv.TvUsbConfirmActivity
</string>
</resources>

View File

@@ -0,0 +1,23 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- 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.
-->
<resources>
<!-- Lighting and shadow properties -->
<dimen name="light_y">-400dp</dimen>
<item type="dimen" format="float" name="ambient_shadow_alpha">0.15</item>
<item type="dimen" format="float" name="spot_shadow_alpha">0.3</item>
</resources>

View File

@@ -0,0 +1,23 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
~ Copyright (C) 2021 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.
-->
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<!--- Title of notification triggered if the microphone is disabled but an app tried to access it. [CHAR LIMIT=NONE] -->
<string name="sensor_privacy_start_use_mic_notification_content_title">Microphone is blocked</string>
<!--- Title of notification triggered if the camera is disabled but an app tried to access it. [CHAR LIMIT=NONE] -->
<string name="sensor_privacy_start_use_camera_notification_content_title">Camera is blocked</string>
</resources>

View File

@@ -0,0 +1,21 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 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.
-->
<resources>
<style name="Widget.DeviceDefault.Button.ButtonBar.AlertDialog"
parent="Widget.Leanback.Button.ButtonBar" />
</resources>

View File

@@ -0,0 +1,27 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- 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.
-->
<resources>
<style name="Theme.Dialog.Alert" parent="Theme.Leanback.Dialog.Alert" />
<style name="Theme.Dialog.Confirmation" parent="Theme.Leanback.Dialog.Confirmation" />
<style name="Theme.Holo.Dialog.Alert" parent="Theme.Leanback.Dialog.Alert" />
<style name="Theme.Holo.Light.Dialog.Alert" parent="Theme.Leanback.Dialog.Alert" />
<style name="Theme.Material.Dialog.Alert" parent="Theme.Leanback.Dialog.Alert" />
<style name="Theme.Material.Light.Dialog.Alert" parent="Theme.Leanback.Dialog.Alert" />
<style name="Theme.Material.Settings.Dialog.Alert" parent="Theme.Leanback.Settings.Dialog.Alert" />
<style name="Theme.Material.Dialog" parent="Theme.Leanback.Dialog" />
<style name="Theme.Material.Light.Dialog" parent="Theme.Leanback.Dialog" />
<style name="Theme.Material.Settings.Dialog" parent="Theme.Leanback.Settings.Dialog" />
</resources>

View File

@@ -0,0 +1,39 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- 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.
-->
<resources>
<style name="Theme.DeviceDefault.Dialog" parent="Theme.Leanback.Dialog" />
<style name="Theme.DeviceDefault.Dialog.Alert" parent="Theme.Leanback.Dialog.Alert" />
<style name="Theme.DeviceDefault.Dialog.AppError" parent="Theme.Leanback.Dialog.AppError" />
<style name="Theme.DeviceDefault.Light.Dialog.Alert" parent="Theme.Leanback.Dialog.Alert" />
<!-- TODO(b/116457731): remove colorBackground from colors_material.xml if not used anymore -->
<style name="Theme.DeviceDefault.Autofill" parent="Theme.Material">
<item name="colorBackground">@color/autofill_background_material_dark</item>
</style>
<style name="Theme.DeviceDefault.Autofill.Save" parent="Theme.Material.Panel">
<item name="colorBackground">@color/autofill_background_material_dark</item>
</style>
<!-- TV always use dark mode -->
<style name="Theme.DeviceDefault.System" parent="Theme.DeviceDefault" />
<style name="Theme.DeviceDefault.System.Dialog" parent="Theme.DeviceDefault.Dialog" />
<style name="Theme.DeviceDefault.System.Dialog.Alert" parent="Theme.DeviceDefault.Dialog.Alert" />
<style name="Theme.DeviceDefault.Autofill.Light" parent="Theme.DeviceDefault.Autofill"/>
<style name="Theme.DeviceDefault.Light.Autofill.Save" parent="Theme.DeviceDefault.Autofill.Save"/>
<style name="Theme.DeviceDefault.ResolverCommon" parent="Theme.Leanback.Resolver" />
<style name="Theme.DeviceDefault.Resolver" parent="Theme.DeviceDefault.ResolverCommon" />
</resources>