Channels Carbon Theme

Thanks! Appreciate your work. So much better than purple!

Correct, the link is broken. I didn't delete the file from my Drive and this has happened several times before when I knew I didn't delete it. Google is removing it after some time for some reason. (perhaps the developers are requesting that it be) @tmm1

Also, something has changed. The latest beta will not decompile with the methods I have been using. Perhaps the android framework in the app has been updated, and my apktool.jar doesn't support it. Investigating.

EDIT - upgrading to apktool2.9.3.jar has decompiled it

so much code has changed since I themed it last that I may be starting over, or at least backtracking some. I believe the developers are having my themed version removed from my drive, and purposely changed enough code to throw a hitch in our themes.

testers are welcome, DM me

CONFIRMED

This is a decompile of the current beta .apk then a recompile changing ABSOLUTELY NOTHING. I don't care about your PC responses @maddox and @tmm1

You're going to blame me for not being able to successfully decompile then recompile the .apk with zero changes? I don't buy that. If anything, I'm wrong, and it wasn't on purpose, BUT, your code will not recompile. NOT MINE

Decompiling APK file... (Press ESC to cancel)
Command: java.exe -jar "C:\Users\Motherfucker\Downloads\APK_Easy_Tool_v1.60_Portable\APK_Easy_Tool_v1.60_Portable\Apktool\apktool_2.9.3.jar" d -f --only-main-classes -o "C:\Users\Motherfucker\Downloads\APK_Easy_Tool_v1.60_Portable\APK_Easy_Tool_v1.60_Portable\1-Decompiled APKs\channels-dvr-504251016" "C:\Users\Motherfucker\Downloads\channels-dvr-504251016.apk"

I: Using Apktool 2.9.3 on channels-dvr-504251016.apk
I: Loading resource table...
I: Decoding file-resources...
I: Loading resource table from file: C:\Users\Motherfucker\AppData\Local\apktool\framework\1.apk
I: Decoding values / XMLs...
I: Decoding AndroidManifest.xml with resources...
I: Regular manifest package...
I: Baksmaling classes.dex...
I: Baksmaling classes2.dex...
I: Copying assets and libs...
I: Copying unknown files...
I: Copying original files...
I: Copying META-INF/services directory
Decompile successful.

Compiling APK file... (Press ESC to cancel)
Command: java.exe -jar "C:\Users\Motherfucker\Downloads\APK_Easy_Tool_v1.60_Portable\APK_Easy_Tool_v1.60_Portable\Apktool\apktool_2.9.3.jar" b -f --use-aapt2 -o "C:\Users\Motherfucker\Downloads\APK_Easy_Tool_v1.60_Portable\APK_Easy_Tool_v1.60_Portable\2-Recompiled APKs\channels-dvr-504251016.apk" "C:\Users\Motherfucker\Downloads\APK_Easy_Tool_v1.60_Portable\APK_Easy_Tool_v1.60_Portable\1-Decompiled APKs\channels-dvr-504251016"

I: Using Apktool 2.9.3
I: Smaling smali folder into classes.dex...
I: Smaling smali_classes2 folder into classes2.dex...
I: Building resources...
W: C:\Users\Motherfucker\Downloads\APK_Easy_Tool_v1.60_Portable\APK_Easy_Tool_v1.60_Portable\1-Decompiled APKs\channels-dvr-504251016\res\values\styles.xml:1449: error: expected dimension but got (raw string) -1.
W: C:\Users\Motherfucker\Downloads\APK_Easy_Tool_v1.60_Portable\APK_Easy_Tool_v1.60_Portable\1-Decompiled APKs\channels-dvr-504251016\res\values\styles.xml:1758: error: expected enum but got (raw string) 0.
W: error: failed linking references.
brut.androlib.exceptions.AndrolibException: brut.common.BrutException: could not exec (exit code = 1): [C:\Users\MOTHER~1\AppData\Local\Temp\brut_util_Jar_180943365676384153248419474167225571761.tmp, link, -o, C:\Users\MOTHER~1\AppData\Local\Temp\APKTOOL11345980231001034739.tmp, --package-id, 127, --min-sdk-version, 22, --target-sdk-version, 33, --version-code, 504251016, --version-name, 4.6.7-v504251016, --no-auto-version, --no-version-vectors, --no-version-transitions, --no-resource-deduping, --allow-reserved-package-id, --no-compile-sdk-metadata, --warn-manifest-validation, -e, C:\Users\MOTHER~1\AppData\Local\Temp\APKTOOL6514666542113380398.tmp, -0, arsc, -I, C:\Users\Motherfucker\AppData\Local\apktool\framework\1.apk, --manifest, C:\Users\Motherfucker\Downloads\APK_Easy_Tool_v1.60_Portable\APK_Easy_Tool_v1.60_Portable\1-Decompiled APKs\channels-dvr-504251016\AndroidManifest.xml, C:\Users\Motherfucker\Downloads\APK_Easy_Tool_v1.60_Portable\APK_Easy_Tool_v1.60_Portable\1-Decompiled APKs\channels-dvr-504251016\build\resources.zip]
Compile failed. Please read the log

We have not requested anything from Google.

As you can see on the release notes we are upgrading Android Studio dependencies as required to continue operating in the Google play store. Probably apktool doesn't work with newer Android studio yet.

If we could only get this for tvOS...

Better yet, natively in all releases.

Seriously Fancybits, why not?

1 Like

Still a no-go Can't decompile / recompile the apk with zero changes using latest apktool

C:\Windows>apktool decode channels.apk
I: Using Apktool 2.10.0 on channels.apk with 4 thread(s).
I: Baksmaling classes.dex...
I: Baksmaling classes2.dex...
I: Loading resource table...
I: Decoding file-resources...
I: Loading resource table from file: C:\Users\Motherfucker\AppData\Local\apktool\framework\1.apk
I: Decoding values / XMLs...
I: Decoding AndroidManifest.xml with resources...
I: Regular manifest package...
I: Copying assets and libs...
I: Copying unknown files...
I: Copying original files...
I: Copying META-INF/services directory

C:\Windows>apktool b channels
I: Using Apktool 2.10.0 with 4 thread(s).
I: Checking whether sources has changed...
I: Smaling smali folder into classes.dex...
I: Checking whether sources has changed...
I: Smaling smali_classes2 folder into classes2.dex...
I: Checking whether resources has changed...
I: Building resources...
W: C:\Windows\channels\AndroidManifest.xml:1: error: attribute android:requiredSplitTypes not found.
W: C:\Windows\channels\AndroidManifest.xml:1: error: attribute android:splitTypes not found.
W: error: failed processing manifest.
brut.androlib.exceptions.AndrolibException: brut.common.BrutException: could not exec (exit code = 1): [C:\Users\MOTHER~1\AppData\Local\Temp\brut_util_Jar_171160809098891655265271124220602700933.tmp, link, -o, C:\Users\MOTHER~1\AppData\Local\Temp\APKTOOL11388333522113708597.tmp, --package-id, 127, --min-sdk-version, 22, --target-sdk-version, 34, --version-code, 509181717, --version-name, 4.8.0.beta-v509181717, --no-auto-version, --no-version-vectors, --no-version-transitions, --no-resource-deduping, --allow-reserved-package-id, --no-compile-sdk-metadata, --warn-manifest-validation, -e, C:\Users\MOTHER~1\AppData\Local\Temp\APKTOOL8833293241831739132.tmp, -0, arsc, -I, C:\Users\Motherfucker\AppData\Local\apktool\framework\1.apk, --manifest, C:\Windows\channels\AndroidManifest.xml, C:\Windows\channels\build\resources.zip]

update, install as usual

1 Like

Would anyone like to collaborate on a way to make this easier for someone else to come up with their own theme?

This is the main colors file.

https://drive.google.com/file/d/1OLBZS67PKRwWVBMVKnqhPLLeNYJgjBM7/view?usp=sharing

Unfortunately I wasn't able to create the theme without editing other files, so the goal would be to ONLY edit this file for the desired results. Each variable in the file corresponds to different UI elements in the app with its color HEX code. Not all variables get changed. By changing the HEX color code, you change that specific UI element's color. I will have to map out which variable corresponds to which UI element, unfortunately it's all in my head, and I didn't record any of it, I just remember. So, having a master list of what to change to change what colors is 1st priority. Then perhaps an app that loads the colors.xml, with a picture of the UI, and by clicking on each line in the colors file it will show you what that variable controls. Also the ability to change the hex value, and see the desired results in the same app without having to recompile, and reinstall just to see what changed. It was a ton of trial and error creating this, I'm thinking between 150 and 200 hours of work, so I would like to simplify the process of creating your own custom theme. My coding skills are defunct, and outdated.

Thanks,
Brian

1 Like

WIP POST

Current colors.xml edits:

name="background">#ff121212
name="deep_dark_purple">#ff000000
name="dvr_setup_bg">#ff101010
name="error_text">#ffeeeeee
name="extra_light_purple">#ffeeeeee
name="fastlane_background">#ff4a4a4a
name="gray">#ff212121
name="guide_subtitle">#ffeeeeee
name="guide_title">#ffeeeeee
name="lb_page_indicator_dot">#ff424242
name="light_purple">#ffababab
name="modal_bg">#ff101010
name="modal_button_focused">#ff4a4a4a
name="muted_dark_purple">#ff000000
name="on_now_cell_bg_color">#ff424242
name="on_now_cell_bg_color_selected">#ff000000
name="pill_color_special">#ff4a4a4a
name="pill_text_special">#ffeeeeee
name="purple">#ff4a4a4a
name="queued_text">#ff000000
name="recording_text">#ff000000
name="settings_cell_bg">#ff101010
name="tab_normal">#ffeeeeee
name="timeline_bg">#ffffffff
name="timeline_buffer">#ffababab
name="timeline_played">#ff4a4a4a
name="tint">#ff4a4a4a
name="warning_text">#ffeeeeee

WIP COLOR MAP
default values listed

name="background">#ff191222

main background in all screens (except modal popups), including the guide grid

name="deep_dark_purple">#ff170b2a

text color in modal popups

name="dvr_setup_bg">#ffeeeeee

background of dvr cannot be found screen

name="extra_light_purple">#ffd6c0f9

most of the in-app text (guide, on now station + ch#, more)

name="fastlane_background">#ff703bc8

grid background for top row selectable items in 'on now', other screens, but not the guide

I had forgotten how awesome this version of Channels looks! The black, the transparent things.

Dug out my old Chromecast with GTV to mess with, sideloaded this most recent apk.

I also forgot how spoiled i have been using Channels on Apple TV for so long...it is just so much better.
With the only exception being the insane seek/scrubbing speed on Android based devices. That also seems way more stable/constant (skipping/scrubbing) for some reason.

Android also does not have Personal Sections yet.

Really really wish the devs would make this kinda theme a option for Apple users.

2 Likes

Hmm, I often find the seek/scrubbing speed on my AndroidTV devices to be too fast, erratic and unreliable. On the AppleTV it's much more precise and usable, at least with the latest Siri remote. It's just easier to get where I intend to go, whereas with AndroidTV it's more of an exercise in frustration. That's been my experience, at least.

Agreed :+1:t3:

On this CCGTV and the Nvidia Shields i have, single presses to skip work perfect ever time. Holding down button, seek speed is wicked fast after a couple secs. Though, i could see how this may be too fast for some. But, it is just much faster than Apple TV and would be usefull to have such speed when i want to seek to near the end of long recordings or files etc.

The Siri remote, ever since i have owned Apple TV's, never last more than about 6 months, and the buttons get either mushy or crunchy, and, since i skip fwd ALOT, the right button on D pad always develops a double or even triple press issue. So i have to exchange the remote under store Replacement warranty often. This is the most current Siri remote. Apple needs to use better quality button hardware in their remote. I haven't had to replace any other remote in such a fashion. (computer mice yes, but not tv remotes)

My exprience is with CCGTV and ONN Streamers, and when I'm seeking in a timeline I prefer precision over speed. The bottom line is, regardless, I tend to get to the appropriate spot quicker with tvOS than I do with AndroidTV. I think their native remotes are pretty bad, all things considered. If AndroidTV was my primary platform I'd need to involve a 3rd party remote control instead.

I do use the Siri remote's touchpad a lot, very rarely do I use the D-pad in this context. Scrubbing the timeline on AppleTV is an unparalleld experience. I'm accustomed to touchpad UI with my Macs and laptops for decades. I'm happy with the improvements in the latest AppleTV remote over the previous black glass one, and haven't had any of my Apple remotes break or degrade in that way that they needed a replacement.

I also now realize we're veered entirely off-topic here, so I'll just leave it at that.

That terrible touch pad glass remote is why i NEVER looked at Apple TV back then. I do not want a touchpad as a remote, they are terrible, imo. And instead went for Nvidia Shield at that time. Since it had a (mostly) backlit remote. But moved to Apple TV after a couple years. Still have the Shields for other family member to use since they prefer the remote on that.

Circling back to this topic, still having Android based clients, this Carbon theme version of Channels, since it been unable to update for a while, but just recently was revived, thought i would play with it a bit, just to see if Android side of things have evolved any.

1 Like

BlueStacks has been my friend lately, so if anyone wants to toy around with making a theme solely on the computer and not having to keep reinstalling the app to a device for testing, BlueStacks has been coming through for the most part. Decent performance too, it could double as a way to use the Android app in Windows.

Pretty simple actually, decompile it, change something, recompile it, load it into BlueStacks and see what the result is. Once I get the color map finished, it should be relatively easy for someone to customize things to their own liking.

@AtoZ0to9 have you taken the latest version down?

Haven’t had to use this for a while but always appreciated you’re work on this.