[APP][ANDROID TV] Projectivy Launcher

Search This thread

spocky12

Recognized Developer
Feb 21, 2008
920
783
Lyon
Apps & Games
Samsung Galaxy S10
Thanks for the new version.
Just a question, for the user defined randomized wallpaper, how does it work ? Can a URL be entered and it will scrap the page and start displaying them as wallpapers every 60 sec ?

(Awaits for future updates where I can purchase without Google service installed on my MiTV3. If it's somewhat along how Tivimate Companion works, that would be great.)
I admit I haven't thought about entering a url, because it seemed laborious.
You need to copy the file to a USB drive and plug it into your device.Then, I tried to keep it simple, but it depends on how your device is handling some intents :
- in the settings, click on "select a wallpaper". If your device handles it correctly, it will display a file browser to select the image you want
- or you open a file browser (you can install one if your stock firmware doesn't have one), select the picture and then select the contextual action "open with Projectivy Launcher"
On FengOs, a file browser has to be installed, there's no stock component to do it.

I don't have another device - not sure what to do here - I'm wondering if a full factory reset from rom, OTA and then re-install fresh would do the trick
As this behavior is not expected, maybe this will fix your issue. If not, don't hesitate to tell me.
@spocky12 Installed Projectivy-launcher today on my Fengmi T1 in hopes of using the Web Remote Control. Is that a premium feature, or did I miss something?

Thanks!
Sorry, I updated the app's features on the first page : for now, this is only supported on MiTv devices (I'm using one of their lib on "server" side), but I'll probably build my own implementation in a future release.
Hi @spocky12, update looks great!

I wanted to circle back to an old topic about remapping one of the buttons or alternate button actions on the standard remote.

I have a chromecast attached and HDMI-CEC works, but due to the limited buttons on the remote, it's missing play/pause, which is the only function I really need.

I'd like to remap the mic/google assistant button as I don't use it. I was going to mess around with /system/usr/keylayout but I'm not sure if this is the right place, and since you have an option to replace the Mi voice assistant with Google assistant, I thought that maybe changing this button was going to have other problems.

pressing and holding the center button is another option left on the remote if you can point me in the direction of secondary button actions.

Thanks in advance.
If I remember correctly, you can disable the Google assistant shortcut in Projectivy settings (which is only present if supported, which means on miTv with Google services manually installed), so there shouldn't be any issue with it.
Then, you should probably install button remapper to define the behavior you need (for now, I don't plan on developing a full UI to remap buttons to custom behavior, as external apps do it well).
 

mikimile

Member
Aug 15, 2022
7
0
Hi @spocky12, thanks for the app! Appreciate it.

I have an issue with my Vava Chroma projector. I’ve entered Factory Test somewhere from the menu where is Engineer test menu or After sale menu and now I can’t exit it. Each time Vava starts it goes in Factory Test mode and i can navigate just settings menu but I can’t start any app like yours to fix it and factory reset is not helping either.

Would you please be able to help me with this? Or any one else here from the members.

Thank you in advance.
 

mikimile

Member
Aug 15, 2022
7
0
Ok, I managed to start Projectivy Launcher by installing it from the usb again but cant turn off that Factory test mode
 

mikimile

Member
Aug 15, 2022
7
0
I’ve managed to get out of Factory test.

One thing that I’ve noticed are that settings that i chsnge in PL is not reflected in Vava Chroma when i exit the PL UI. Do i need to root the device?
 

XxDrAg0nX

New member
Aug 16, 2022
1
0
having some problems with the vava chroma too

Projectivy seems to confuse between HDMI 1 and 3

When shutdown and try to boot up again, it says HDMI Search time out and it hangs there. Have to Force shut down with the mains to resolve this

Another user confirmed same issue.
 

gtr33m

Member
Apr 13, 2011
28
5
Melbourne
I admit I haven't thought about entering a url, because it seemed laborious.
You need to copy the file to a USB drive and plug it into your device.Then, I tried to keep it simple, but it depends on how your device is handling some intents :
- in the settings, click on "select a wallpaper". If your device handles it correctly, it will display a file browser to select the image you want
- or you open a file browser (you can install one if your stock firmware doesn't have one), select the picture and then select the contextual action "open with Projectivy Launcher"
On FengOs, a file browser has to be installed, there's no stock component to do it.


As this behavior is not expected, maybe this will fix your issue. If not, don't hesitate to tell me.

Sorry, I updated the app's features on the first page : for now, this is only supported on MiTv devices (I'm using one of their lib on "server" side), but I'll probably build my own implementation in a future release.

If I remember correctly, you can disable the Google assistant shortcut in Projectivy settings (which is only present if supported, which means on miTv with Google services manually installed), so there shouldn't be any issue with it.
Then, you should probably install button remapper to define the behavior you need (for now, I don't plan on developing a full UI to remap buttons to custom behavior, as external apps do it well).
Thanks @spocky12. Your memory is correct about disabling Google assistant, which is why I thought you might know how to intercept this button.
Unfortunately button mapper doesn’t work for this button. It’s not pre mapped and it doesn’t capture it.
Any other suggestions on hire I might capture this button press?
Thanks
 

mikimile

Member
Aug 15, 2022
7
0
Ive tried resetting multiple times, cleared the cache of the FactoryTest app but its still showing on the boot along with some other test which is in Chinese so not sire what is saying
 

melchiar

Senior Member
Feb 21, 2011
203
28
is it possible to have more then one row of apps? I have more then 40 apps, and they’re all listed in one long row under “TV Apps”. Would like to see it all at once.
 

XtraWater

Senior Member
Apr 8, 2018
761
151
Samsung Galaxy S5
Xiaomi Mi A1
Edit:

Hello

Thanks for your work. I just installed the launcher on Mi Box S 4K and like it already. It's simplistic and advanced at the same time.

I red through the pages here and tried it on the launcher, but can't figure out how to re-arrange categories. Just looking at 'Edit categories' where I added a new category. May be this isn't possible as of now. No problem. Glad I got rid of the default launcher.
 
Last edited:

spocky12

Recognized Developer
Feb 21, 2008
920
783
Lyon
Apps & Games
Samsung Galaxy S10
I’ve managed to get out of Factory test.

One thing that I’ve noticed are that settings that i chsnge in PL is not reflected in Vava Chroma when i exit the PL UI. Do i need to root the device?
Hi,
Could you give me examples of settings that are not reflected in Chroma ? Does it only hapen in the engineering menu or in the main PL settings as well ?
having some problems with the vava chroma too

Projectivy seems to confuse between HDMI 1 and 3

When shutdown and try to boot up again, it says HDMI Search time out and it hangs there. Have to Force shut down with the mains to resolve this

Another user confirmed same issue.
Hi,
I had the exact same issue (HDMI1 and 3 swapped) with my Fengmi Cinema 4k Pro : I suppose it's related to Appotronics code which is probably present on all devices built by them (Vava, Xiaomi, Fengmi...).
Unfortunately, I can't fix it : it's a bug on their side : the Operating System is giving me HDMI3 id when I request HDMI1 input, and there's no way for me to know if it's right or wrong.
I could hardcode it for each device that is known for mismatching HDMI inputs, but earlier firmwares are not affected, so that would really be a pain to maintain a compatibility list.

However I don't understand the HDMI search timeout :
- HDMI 1 should give ou HDMI3 and the opposite, so the easy fix should be to ask it to boot on the other one (at least that's how I "fixed" it on my previous projector).
- When I have a HDMI search timeout on FengOS, it automatically falls back on the launcher. Does it act differently on Vava ? At worst if it stalls there, you should still be able to use the "home" button on your remote control to get back on PL. Does it fail too ?
Your memory is correct about disabling Google assistant, which is why I thought you might know how to intercept this button.
Unfortunately button mapper doesn’t work for this button. It’s not pre mapped and it doesn’t capture it.
Any other suggestions on hire I might capture this button press?
Thanks
Hi,
You're right, on MITV, the Voice Assist keycode is "wrong" : in the keypress function, it should respond with "KEYCODE_VOICE_ASSIST" (=231) but it fails to be identified and comes back as "KEYCODE_UNKNOWN" (=0).
I've hardcoded PL to guess that the remove button pressed is "KEYCODE_VOICE_ASSIST" whenever it received "KEYCODE_UNKNOWN" (specifically on MITV devices). This probably has a side effect : on these devices, usung another button which is not recognized will also be interpreted as KEYCODE_VOICE_ASSIST, but that's the best I could do.

I don't know it Button Mapper lets you define an action for KEYCODE_UNKNOWN (or enter the keycode identifyer yourself (in this case 0). If not, perhaps you can request this feature to the dev ?
Ive tried resetting multiple times, cleared the cache of the FactoryTest app but its still showing on the boot along with some other test which is in Chinese so not sire what is saying
Hi,
Coud you please send me a screenshot of the engineering menu that fails to exit on your device (and if you know it its package name) ? I'll try to reverse engineer it to check how to exit (on my devices, engineering menu don't stay activated on exit).
is it possible to have more then one row of apps? I have more then 40 apps, and they’re all listed in one long row under “TV Apps”. Would like to see it all at once.
Hi,
That's on my todo list.
Unfortunately, it's not that simple : the component I use to display apps listing (from Google) doesn't natively support multiline (to be more precise : I can hardcode a number of rows, but it will not autoadapt to it : if I define 4 rows, there will always be 4 rows even if there are only 2 apps).
I'll try to find a user acceptable workaround if I can.
In the meantime, you can define as many "categories" as you want in the main settings menu, and move apps there (ie : "Games", "Tools", "Streaming apps"...).
But I admit it needs to be perfected for your use case.
Edit:

Hello

Thanks for your work. I just installed the launcher on Mi Box S 4K and like it already. It's simplistic and advanced at the same time.

I red through the pages here and tried it on the launcher, but can't figure out how to re-arrange categories. Just looking at 'Edit categories' where I added a new category. May be this isn't possible as of now. No problem. Glad I got rid of the default launcher.
Hi,
You can do it from the left hand side menu (if you didn't hide it in the settings) : on the left of the category name, there's a button (with up/down arrows). When clicked, it allows to reorder categories.
 
  • Like
Reactions: melchiar

XtraWater

Senior Member
Apr 8, 2018
761
151
Samsung Galaxy S5
Xiaomi Mi A1
Hi,
You can do it from the left hand side menu (if you didn't hide it in the settings) : on the left of the category name, there's a button (with up/down arrows). When clicked, it allows to reorder categories.
Thanks. That worked.

I wonder if this is behaviour is normal: Press and holding Volume up or down button doesn't actually move the slider. I have to click it one by one to adjust volume.
 

spocky12

Recognized Developer
Feb 21, 2008
920
783
Lyon
Apps & Games
Samsung Galaxy S10
Thanks. That worked.

I wonder if this is behaviour is normal: Press and holding Volume up or down button doesn't actually move the slider. I have to click it one by one to adjust volume.
You're not the 1st one to report this issue. I believe that's a bug somewhere in Xiaomi's code : as soon as an accessibility service is enabled (Projectivy Launcher, but also Button Mapper for example), the long press volume buttons doesn't work anymore. Worse : unlike any other button, the accessibility service is not notified that a volume button has been pressed, preventing me from developping a workaround :/
 

XtraWater

Senior Member
Apr 8, 2018
761
151
Samsung Galaxy S5
Xiaomi Mi A1
You're not the 1st one to report this issue. I believe that's a bug somewhere in Xiaomi's code : as soon as an accessibility service is enabled (Projectivy Launcher, but also Button Mapper for example), the long press volume buttons doesn't work anymore. Worse : unlike any other button, the accessibility service is not notified that a volume button has been pressed, preventing me from developping a workaround :/
You're right. Disabled accessibility service for Projectivy Launcher and volume button works correct. I wonder if Xiaomi will fix it.
 
Last edited:

XtraWater

Senior Member
Apr 8, 2018
761
151
Samsung Galaxy S5
Xiaomi Mi A1
Sorry I don't understand your question : each installed app should be automatically available in "Tv Apps" or "mobile apps" category, no matter how you installed it.

I should have clarified it better. In this case, I installed (a older version) Tasker. I know, not optimized for TV box. However, it works. But the launcher didn't add the shortcut to the homescreen. The app is listed under 'All Apps' in the android settings . The launcher added another Tasker icon. A grey icon which refers to some other tasker functionality, but not the main app.
 

nico-xda

Member
Dec 13, 2016
10
2
Hi Spocky12...love your app, thanks.
Simple requirements here: I just wanted to get rid of the default launcher on my non-rooted chinese Xiaomi Mijia ALPD3.0 and it was easy to sideload yours via a usb key and seems to work great.
I would be happy to purchase the premium version if there was a straightforward way to do this for my device which doesn't have the google play store. Cheers.
 
Last edited:

cl ment

Member
May 13, 2011
30
1
Great job, thanks !

Would it be possible to change the "Override stock launcher" option behaviour in order to call back the "Startup app" when pressing the home button ?
I'm using only stremio on my projector but unfortunately it's not a launcher so I can't define it as default launcher.

Thanks.
 

shamitsingh

New member
Feb 16, 2022
2
0
I have also managed to put Vava Chroma into Factory Test mode. Each time Vava starts it goes in Factory Test mode.

Any suggestions.

Thanks
 

Top Liked Posts

  • There are no posts matching your filters.
  • 10
    Introduction

    ProjecTivy Launcher is a launcher dedicated to Android Tv, offering special features for Xiaomi family projectors/TVs.
    With the new major version that extends the use to all Android TV devices, and for better understanding, the original thread has been split :
    • The original thread will focus on Xiaomi/Fengmi/Wemax projectors, offering a faq, links to custom recoveries, guide for rooting, links to download stock ROMS and OTAs.
    • This thread will focus on the launcher itself.

    Description

    It's a multi purpose launcher that can be used without root, but adds interesting features on rooted ones. It can be installed on most Android Tv devices (to provide automatic boot on HDMI input for example). A bunch of functionnalities are dedicated to devices with amlogic/mediatek SOCs and/or Xiaomi devices.

    It can be used as a launcher replacement, or as a standalone app if you only need a side feature.
    You don't need root to use this app, except for the features maked with [ROOT] below.

    Here are the current features :

    Global UI : long press any card/icon to display a contextual menu allowing you to start/uninstall app as well as hide or rearrage it as you like (ie : move or add it to another section)

    Input :
    • Shortcuts to change source to HDMI 1 to 3, AV, as well as opening an onscreen menu to choose the source. These will be useful if you disable the stock launcher, as you will probably lose the stock widget with Tv preview and change source buttons.

    Tv Apps :
    • ... : Android Tv dedicated apps will appear here

    Mobile Apps :
    • ... : any app not dedicated to Android Tv (whose icon usually doesn't display on Android Tv launchers) will appear here

    Display :
    • Display settings : Add ability to create different display profiles (premium version required for more than 1) that can be applied automatically when changing input source and dynamic range. Most features that could be changed in previous versions (zoom, input lag...) of this app can be added to a display profile and thus automatically available upon boot with no action on your side. The profile editor can also display many calibration screens to help you setup your device as you need. Unless you're using a device based on Android Tv 6, you'll need to have a rooted device. If it's not working for you, you can probably benefit from the calibration patterns it can display (FHD, 4K, Jitter, HDR, DV...)
    • Zoom : Changes the Zoom in/out factor for video display (external inputs as well as any video player) [ROOT] and also enables access to stock zoom feature if available (to zoom/unzoom full display, not only video, but can't go below 80%)
    • Force 4k UI rendering [ROOT] : this may cause lags when rendering the UI

    Settings :
    • Projectivy settings:
      • launcher
        • Parental control : protect apps with a parental code (totally or during a specific time frame)
        • Override stock launcher : try to replace the stock launcher even if it hasn't been disabled (which is still the preferred way)
        • Card size : size of the apps icons
        • Wallpaper : choose between no wallpaper, user defined one, or random wallpapers from different reddit channels
        • Use dynamic colors : change main color based on your wallpaper, à la Material You
        • Show status bar
        • Unselected lines opacity
        • Display left headers
        • Show sections title
        • Show time
        • Show app title
      • Input
        • Rename HDMI inputs
        • Disable HDMI inputs so that they're not displayed in the launcher
        • Prefer internal Tv View : replace the stock HDMI Input app with a custom one. It doesn't support CEC (only system apps can do it), but it might be useful for specific usage
      • Power control
        • Startup to : android, specific app or specific Hdmi input
        • Automatically shutdown when HDMI signal stops (experimental) : trigger a power off when the Hdmi Input app exits automatically (which usually means the input device has been shut down)
        • Prevent automatic shutdown when idle : some systems automatically shutdown if no user interaction has happened recently, this can prevent this behavior (useful if you start your device with CEC and never touch its remote control
        • Enable internal idle detection : if use did not touch the remote control for the given time, sned a poweroff or standby command
    • Device settings : launches the projector/tv/box settings
    • Additional settings : launches amlogic/mediatek settings app (if available)
    • Android settings : launches the Android stock settings
    • Engineering menu : launches the [MiTv/FengOs/Fengmi] engineering menu

    Applications :
    • Remote Control : displays a QR code to my Web Remote Control, working on any device, dedicated to MiTv devices based on Android 6
    • Freeze stock apps [ROOT] : freezes/hides/disables stock apps/bloatware (for unrooted devices, please check below, in Remarks section, point 3). On MIUI, make sure you install another keyboard (ie "LeanbackIme Keyboard", from the "Install 3rd party apps" menu) as it will disable the stock one. Possibility to specify a package name to disable manually.
    • (Un)Freeze launchers [ROOT] : (un)freezes/hides stock Xiaomi TvHome, FengOs launcher or Google Leanback launcher. Make sure you have another compatible launcher installed before freezing it (for unrooted devices, please check below)
    • Install 3rd party apps : lets you choose apps to install. Most will require Aptoide Tv installed. Good news, it's able to download and install it automatically ! If your device is rooted and is on Android 6.01, Google services/apps can be installed too (see more in the Google Apps section) :victory:
    • Uninstall Google Apps [ROOT] : if you installed Google Apps / services with the feature described above, you can safely uninstall them (but why would you want that ?)
    • Freeze Google Play [ROOT] : prevents google Play self-update. This is useful on some models, where new Google Play app refuses to install apps due to some incompatibility issue (such as Zodiac)

    System :
    • Accessibility Service : This is a multi-purpose service, that fixes Google Play on Googlized xiaomi devices, binds the stock remote control "Voice recognition" button to Google Assistant (if you installed Google Services), allows your device to automatically start an external input or app on boot, adds a shortcut to open these tools or change picture profile by double pressing the menu button... *** In one word : you want it enabled ***
    • Custom Props Override [ROOT/MAGISK] : changes some custom props so as to get a more stock Android Tv behavior. This will enable Google services disabled by Xiaomi, allow your "Usb debugging" option to stick across reboots, allow bypassing safetynet... If you install Google Services you need to install them.

    About :
    • ProjecTivy Launcher : displays details about this app
    • This device : displays many details about this device, and temperature sensors values is available.
    • This wallpaper : shows details regarding the wallpaper currently displayed


    Remarks :
    • Using any of the above features (even [ROOT] ones) should be safe and shouldn't prevent you from installing stock OTA updates afterwards (no system file is modified). If anything goes wrong, don't hesitate to tell me, but anyways, at worst, factory reset or flashing the full stock ROM will fix any issue, so there isn't any risk of bricking your device.
    • Except if you have stock launcher or leanback launcher installed (which will force you to use them if installed), if multiple other compatible launchers are installed, a popup will ask your choice at each boot and home button press.
    • Concerning the (un)freeze apps/launcher, if your device is not rooted, this app currently can't do it automatically, but you can do it manually by connecting a computer to your device with ADB and executing a few command lines :
      1. enable "usb debugging" in your device's "Developer" options (in settings) (to enable "developer options", see here)
      2. Download adb for your OS (check here)
      3. Start command line (terminal)
      4. type adb connect IP_OF_YOUR_DEVICE:5555 to connect through the network
      5. type adb shell to open a shell console
      6. to freeze an app type : pm uninstall -k --user 0 PACKAGE (replace PACKAGE with com.mitv.tvhome for Xiaomi stock launcher, cn.formovie.fengos.desktop for FengOs launcher and com.google.android.leanbacklauncher for Google Leanback launcher)
      7. to unfreeze an app type : cmd package install-existing PACKAGE (replace PACKAGE with the same value as above)
      8. to get a list of manually uninstallable apps, check the rainman.v2.json file on my github
    • Evolution : If you have another device and want this app to support it (meaning using another list of installable/uninstallable apps), don't hesitate to make a PR on my github.

    Known issues
    - HDMI 1 and HDMI 3 swapped (FengOS, Vava on AmLogic devices) : on recent firmwares, HDMI1 and HDMI3 inputs are swapped in PL. This is a bug in the OS low level libs that send HDMI1 input id when HDMI3 is requested (and the opposite). Can't be easily detected (thus fixed) on my side unfortunately. Just select HDMI1 when you need HDMI3 and vice-versa.
    - long press on volume buttons doesn't work on FengOs : there's a bug on FengOs -> as soon as an accessibility service is enabled (Projectivy Launcher, but also Button Mapper for example), the long press volume buttons doesn't work anymore. Worse : unlike any other button, the accessibility service is not notified that a volume button has been pressed, preventing me from developping a workaround :/ Disabling the accessibility service fixes this behavior (but this disables several Projectivy Launcher features)

    Download / Installation

    This app can be downloaded here or installed from Google Play.
    Install the apk as usual :
    - copy the apk to an usb thumb drive
    - plug it into your device
    - browse and select apk to install it (you may need to enable "unknown sources installation" from your device's settings)

    Not for commercial use. If you want to redistribute it, please contact me.


    Changelog
    4.02:
    - added support for most Tvs HDMI inputs (using their stock app)
    - added ability to show mediatek hidden settings in the calibration screen
    - added ability to hide the startup reminder when the accessibility service is not enabled
    - added translations for FengOs/FengMi engineering menus (now, you'll find your way to the autofocus setting) (requires the accessibility service)
    - added ability to start apps/inputs from their contextual menu (with 2 different entries for inputs : using internal tv view or not)
    - fixed HDMI input randomly visible on MiTV devices
    - fixed volume level display timeouts after 20s on FengOs
    - fixed settings not opening on Oreo
    - fixed internal Tv View not working on old Android versions
    - fixed Google Play might lose connection while purchasing
    - fixed crash on some Sony Bravia Tvs
    - fixed out of memory errors in calibration screen
    - fixed stock launcher might not be overriden in rare cases
    - fixed toast messages might crash the app when navigating to the accessibility service
    - fixed internal Tv View might use a previous input if the current one is not found
    - fixed crash happening on some rooted devices
    - fixed crash at startup on some chinese Tv brands
    - fixed noise reduction/deinterlacing/zoom not always working on some MiTV devices
    - fixed app setting in contextual menu not always working on some conditions
    - other misc fixes and improvements
    4.01:
    - fixed a bug preventing permission to be granted to "install 3rd party apps"
    - improved image picker intent compatibility
    4.00:
    - *** UI / Design ***
    - rebranded to "Projectivy Launcher" as this app is now first and foremost a launcher for any Android Tv device (luckily there's no marketing department or they would have made a heart attack by now ^^)
    - refreshed the general app design
    - improved customizability (change cards size, enable or disable section title display, app name display, opacity...)
    - added ability to create/manage/reorder categories
    - each card (app, setting, input) can be managed through its contextual menu
    - display randomized wallpapers (changes each 60s)
    - user-defined wallpapers [Premium]
    - a randomized wallpaper can be defined as the user-defined one [Premium]
    - dynamic colors based on your current wallpaper (à la "Material You" on Android 12)
    - apps are now correctly sorted by name by default
    - HDMI inputs can be renamed and hidden
    - added languages : German (thanks Stefan), French (thanks Spocky :p) - contact me if you want to help translating to your language. If your android settings don't allow you to choose this language (ex : on most chinese Xiaomi projectors), install MoreLocale from "Install 3rd party apps" section
    - each feature/setting is now available in a side panel menu, that can be opened with your remote control's "menu" button or by clicking on the menu icon in the top right corner of the screen

    - *** Compatibility / Performance ***
    - vastly improved startup time
    - optimized for smoothness/reactivity in general
    - hugely decreased memory used
    - added compatibility with old mitv3 (and more generally Android 5.1.1)
    - many bugs fixed

    - *** Features ***
    - added ability to override the current launcher (the preferred way is still to freeze/uninstall it). This app will then automatically launch on boot and intercept calls to the stock launcher so as to start itself above it
    - added parental control management (=requiring a code to start an app/input). This is by no means hacker proof, but kids/random guests should be stopped. [Premium for more than 1 app]
    - parental control can be active only for a period of the day.
    - prevent automatic system power off when idle
    - added an internal idle detection with ability to shutdown after a specific inactivity time
    - added ability to automatically shutdown if the HDMI input display app stops by itself (meaning no more HDMI signal). While not foolproof, this can handily replace a missing CEC shutdown function on your device
    - added HDR / DV calibration patterns
    - added an internal tv viewer to replace the vendor one. It doesn't support CEC (android limitation) but will allow more customization in the future
    - "about / this device" now shows information regarding which display range is supported (HLG, HDR10, DV...)
    - added a direct link to configure the accessibility service
    - added ability to autostart on the "last used input"
    - added ability to reinstall/unfreeze frozen packages/launchers [root]
    - added remote control shortcut to change the current source input (double tap menu, then left/right)
    - app self update support
    - [FengOS] added a direct link to a second engineering menu (useful to get temperature logs)
    - [FengOS] added a link to the input source popup
    - [Mediatek] added a link to advanced configuration (advanced picture settings, MEMC with DV, and more...)

    - fix : fixed a bug in the display profiles structure binding them to the tools version they were created on (causing a reset of the profiles on each new release of the tools) :eek:
    Warning : this version will reset your display profiles (even if you're coming from 3.55). Please make sure you've noted the values so that you can recreate them. Sorry for the inconvenience, this won't happen again.
    - feature : set sharpness step to 1 instead of 10 in display profile manager on MiTv devices
    - feature : third party remote control buttons HDMI 1/2/3 and keyboard keys F1/F2/F3 are directly bound to HDMI input change (side effect : for home automation systems, sending adb keyevent KEYCODE_TV_INPUT_HDMI_3 will start input HDMI3 for example).
    - feature : added ability to disable auto power off on user inactivity when cold booted (MiTv) [root]
    - feature : display profile manager can now display HDMI inputs in calibration preview
    - fix : "android" display profile incorrectly applied on projector startup
    - fix : some apps were not available in autostart app dropdown menu
    - fix : crash when no display profile available
    - fix : crash when starting some activities
    - fix : autostart app not always working on FengOs
    - fix : "install 3rd party apps" option not always available when it should
    - rebranded app (yes, again :D) to "ProjecTivy Tools". No more "Mi" because it's not dedicated solely to Xiaomi products anymore.
    - availability in Google Play
    - redesigned some UI parts (and no more transparent background as per Google Play Android Tv requirement)
    - feature : ability to start an app on boot
    - feature : ability to block Google Play updates (for zodiac and maybe other devices)
    - feature : access to native zoom UI from MiTv when available (zooms the whole UI, not just video, from 80 to 100%, no root needed)
    - feature : accessibility service features (remote control shortcuts, mic button binding) can be enabled individually
    - feature : information display relative to current source input (resolution, dynamic range)
    - feature : launcher shortcuts (hdmi inputs, media explorer) can now be hidden if not used
    - feature : app can fully replace a launcher (optimisations, lists all Android Tv and Mobile apps)
    - feature : can replace launcher even when security measures prevent it (FengOs)
    - feature : added english translations to FengOs settings app
    - fix : long press back to improve input lag restored
    - fix : improved stability of the accessibility service (notably on Android 8+)
    - fix : better management of the direct downloads in "install 3rd party apps" (errors correctly managed, cancelation possible, support for android 8+)
    - fix : added support for magisk 20+
    - fix : improved overall compatibility with android 8.1/9
    - feature : added compatibility with FengOs for most features
    - feature : display profiles management (premium feature for more than 1 profile)
    - feature : display profiles can be set automatically on input and/or dynamic range change
    - feature : display profiles can be switched manually from the remote control
    - feature : display profile editor displays multiple calibration helper screens
    - feature : display profiles can manage : contrast/brightness/hue/saturation/sharpness, color temperature gain AND offset (not available in stock projector UI), dynamic color/contrast switches, noise reduction and interlacing switches (to reduce input lag), video zoom, backlight (more options than on the stock UI), tv backlight (for tvs)
    - did I mention display profiles don't require root on Android 6 ?
    - ...and should work on most amlogic devices (xiaomi, vava, xgimi...), at least on android 6 devices ?
    - rebranded app to "Mi ProjecTivy Tools" because why not.
    - stability : added a screen resolution check at boot. If a wrong resolution is set in the Android tv settings, the device won't be locked on the chessboard screen anymore, it will switch back to the default resolution (rainman and batman supported)
    - stability : set this app as a Tv Launcher, so if all launchers are mistakenly disabled, the device will boot on it so that a launcher can be reinstalled
    - UI : made menu buttons dynamic, so they won't show on your device if the feature is not supported
    - UI : rewrote all submenu interface to use Android Tv UI. This vastly improved look and usability
    - UI : changed menu icons
    - UI : if accessibility service is running, the app can be opened by double pressing the "menu" button
    - feature : added an option to change the zoom in/out factor for video display (external input and all media players)
    - feature : added option to switch window manager to 4k (interface will likely not be totally fluid, though)
    - feature : rewrote the option to decrease input lag so that you can disable "noise reduction" and "deinterlacing" individually
    - feature : added a shortcut (qrcode) to MiReCo, the Web Remote Control
    - feature : made the shortcuts section dynamic : it will now display all installed apps not natively compatible with Tv launchers (like the "Tv App Repo" app)
    - feature : added "about this device" section that displays many details as well as the temperature sensors values
    - improvement : made the hdmi input shortcuts compatible with international (android tv 8+) devices
    - improvement : rewrote code to automatically start on a selected external input. This brings support for international models. IT WON'T USE the stock device settings anymore to select the input. Use the included parameter in "Input Settings"
    - feature : added a shortcut to the stock "media explorer" directly in Tv launchers
    - feature : added a warning if accessibility service is not enabled
    - fix : fixed compatiblity with Netflix (not the Tv version, unfortunately, but the interface is totally usable). Due to missing DRM support, resolution is limited to SD.
    - internal : many fixes and improvements (and bugs :D ?)
    - added ability to reduce input lag and disable noise reduction by long pressing "back" button.
    - added auto start to hdmi (as stock launcher), so that users who changed launcher won't miss this feature.
    2
    Thanks for the new version.
    Just a question, for the user defined randomized wallpaper, how does it work ? Can a URL be entered and it will scrap the page and start displaying them as wallpapers every 60 sec ?

    (Awaits for future updates where I can purchase without Google service installed on my MiTV3. If it's somewhat along how Tivimate Companion works, that would be great.)
    I admit I haven't thought about entering a url, because it seemed laborious.
    You need to copy the file to a USB drive and plug it into your device.Then, I tried to keep it simple, but it depends on how your device is handling some intents :
    - in the settings, click on "select a wallpaper". If your device handles it correctly, it will display a file browser to select the image you want
    - or you open a file browser (you can install one if your stock firmware doesn't have one), select the picture and then select the contextual action "open with Projectivy Launcher"
    On FengOs, a file browser has to be installed, there's no stock component to do it.

    I don't have another device - not sure what to do here - I'm wondering if a full factory reset from rom, OTA and then re-install fresh would do the trick
    As this behavior is not expected, maybe this will fix your issue. If not, don't hesitate to tell me.
    @spocky12 Installed Projectivy-launcher today on my Fengmi T1 in hopes of using the Web Remote Control. Is that a premium feature, or did I miss something?

    Thanks!
    Sorry, I updated the app's features on the first page : for now, this is only supported on MiTv devices (I'm using one of their lib on "server" side), but I'll probably build my own implementation in a future release.
    Hi @spocky12, update looks great!

    I wanted to circle back to an old topic about remapping one of the buttons or alternate button actions on the standard remote.

    I have a chromecast attached and HDMI-CEC works, but due to the limited buttons on the remote, it's missing play/pause, which is the only function I really need.

    I'd like to remap the mic/google assistant button as I don't use it. I was going to mess around with /system/usr/keylayout but I'm not sure if this is the right place, and since you have an option to replace the Mi voice assistant with Google assistant, I thought that maybe changing this button was going to have other problems.

    pressing and holding the center button is another option left on the remote if you can point me in the direction of secondary button actions.

    Thanks in advance.
    If I remember correctly, you can disable the Google assistant shortcut in Projectivy settings (which is only present if supported, which means on miTv with Google services manually installed), so there shouldn't be any issue with it.
    Then, you should probably install button remapper to define the behavior you need (for now, I don't plan on developing a full UI to remap buttons to custom behavior, as external apps do it well).
    1
    Updated to 4.01 to fix a bug preventing the "install 3rd party apps" section to be accessed.
    1
    Big thanks, this is really excellent! Great to see the continued development into Projectivy.

    I am running it on a rooted Wemax Pro. I have a few questions:

    * Is Projectivy meant to replace ATV launcher? Or do both co-exist? How to select, which launcher to use?

    * What's the latest on Youtube? Best to use the one that can be downloaded under 3rd party app or directly from the Google Play store? I tried to do via Productivy and get the error message "incompatible device. Please download another version of the application and try again, error code (-113)"

    * I also tried to download PLEX from Google Play store and see the following error message: "Can't install app: Plex [...{ can't be installed. Try again, and if the problem continues, get help troubleshooting (error code: 910)"

    Thanks for any help you may have for me!
    Projectivy is a complete launcher replacement. I suppose you can still use ATV if you prefer, there's nothing in Projectivy preventing the execution of any other launcher. How you choose which one you want depends on your OS. On mitv (and probably any stock Android tv device), if the stock launcher is disabled, Android asks which one you want.
    On FengOs, they disabled this behavior, so if the stock launcher is disabled and no launcher is started, Projectivy starts automatically.
    Regarding YouTube, if you have Google play, it is probably the best way to install it.
    On Chinese devices without any Google services, installing from Aptoide usually works. However, I couldn't understand the compatibility issues between Aptoide and Xiaomi app installer : sometimes, a specific version of YouTube will install fine and others won't. And in the future it might stop installing correctly. The one I link to from Projectivy is the latest version that is allowed too install on my device without any error message (at least it was, 2 months ago). If it doesn't work, chances are that another one will install fine, just browse the available versions in Aptoide.
    As for Plex, is probably an incompatibility with Xiaomi's app installer, no idea why it did this though.
    Please add Vava Chroma triple laser to the list of currently supported devices - it is a mediatek based device. Thanks.
    Did you test Projectivy on this device ? If so, what are the problems you encountered ?
    One odd thing: "Input" is greyed out in "launcher settings". So, I cannot add the HDMI sources to the main screen. Anything I am missing?
    This is probably a bug.
    To prevent HDMI input section from being displayed on devices that don't have such inputs (ex: tv boxes), I hide this section when the Android tv framework is unavailable or when no HDMI input (plugged or not) is returned by the system.
    I will test again on mitv devices, I might have overlooked something.
    Hi @spocky12 great job on the new app.

    I've installed it on my Wemax One Pro, an issue that I am having is with Google Play store, which i cannot get to launch. When I click the icon the screen goes blank for a second and just returns to the launcher.

    I also had the issue on the previous incarnation of the app.

    I'm also running Magisk 24.3 and rooted.

    I've deleted cache and also tried re-installed, still the same thing.
    I'll have a look at it, thanks for the bug report.
    Great job. The only problems I see is missing option to select HDMI input and a option to restore hidden application. Maybe I can't find it
    As written above, the hidden HDMI input section is a bug I need to explore (works fine on FengOs).
    As for restoring a hidden app, you can do it : open the settings panel (contextual menu button on your remote control or select the settings icon next to the hour) and select the first entry (manage categories), then select the category where you want to restore an app.
    1
    I’ve managed to get out of Factory test.

    One thing that I’ve noticed are that settings that i chsnge in PL is not reflected in Vava Chroma when i exit the PL UI. Do i need to root the device?
    Hi,
    Could you give me examples of settings that are not reflected in Chroma ? Does it only hapen in the engineering menu or in the main PL settings as well ?
    having some problems with the vava chroma too

    Projectivy seems to confuse between HDMI 1 and 3

    When shutdown and try to boot up again, it says HDMI Search time out and it hangs there. Have to Force shut down with the mains to resolve this

    Another user confirmed same issue.
    Hi,
    I had the exact same issue (HDMI1 and 3 swapped) with my Fengmi Cinema 4k Pro : I suppose it's related to Appotronics code which is probably present on all devices built by them (Vava, Xiaomi, Fengmi...).
    Unfortunately, I can't fix it : it's a bug on their side : the Operating System is giving me HDMI3 id when I request HDMI1 input, and there's no way for me to know if it's right or wrong.
    I could hardcode it for each device that is known for mismatching HDMI inputs, but earlier firmwares are not affected, so that would really be a pain to maintain a compatibility list.

    However I don't understand the HDMI search timeout :
    - HDMI 1 should give ou HDMI3 and the opposite, so the easy fix should be to ask it to boot on the other one (at least that's how I "fixed" it on my previous projector).
    - When I have a HDMI search timeout on FengOS, it automatically falls back on the launcher. Does it act differently on Vava ? At worst if it stalls there, you should still be able to use the "home" button on your remote control to get back on PL. Does it fail too ?
    Your memory is correct about disabling Google assistant, which is why I thought you might know how to intercept this button.
    Unfortunately button mapper doesn’t work for this button. It’s not pre mapped and it doesn’t capture it.
    Any other suggestions on hire I might capture this button press?
    Thanks
    Hi,
    You're right, on MITV, the Voice Assist keycode is "wrong" : in the keypress function, it should respond with "KEYCODE_VOICE_ASSIST" (=231) but it fails to be identified and comes back as "KEYCODE_UNKNOWN" (=0).
    I've hardcoded PL to guess that the remove button pressed is "KEYCODE_VOICE_ASSIST" whenever it received "KEYCODE_UNKNOWN" (specifically on MITV devices). This probably has a side effect : on these devices, usung another button which is not recognized will also be interpreted as KEYCODE_VOICE_ASSIST, but that's the best I could do.

    I don't know it Button Mapper lets you define an action for KEYCODE_UNKNOWN (or enter the keycode identifyer yourself (in this case 0). If not, perhaps you can request this feature to the dev ?
    Ive tried resetting multiple times, cleared the cache of the FactoryTest app but its still showing on the boot along with some other test which is in Chinese so not sire what is saying
    Hi,
    Coud you please send me a screenshot of the engineering menu that fails to exit on your device (and if you know it its package name) ? I'll try to reverse engineer it to check how to exit (on my devices, engineering menu don't stay activated on exit).
    is it possible to have more then one row of apps? I have more then 40 apps, and they’re all listed in one long row under “TV Apps”. Would like to see it all at once.
    Hi,
    That's on my todo list.
    Unfortunately, it's not that simple : the component I use to display apps listing (from Google) doesn't natively support multiline (to be more precise : I can hardcode a number of rows, but it will not autoadapt to it : if I define 4 rows, there will always be 4 rows even if there are only 2 apps).
    I'll try to find a user acceptable workaround if I can.
    In the meantime, you can define as many "categories" as you want in the main settings menu, and move apps there (ie : "Games", "Tools", "Streaming apps"...).
    But I admit it needs to be perfected for your use case.
    Edit:

    Hello

    Thanks for your work. I just installed the launcher on Mi Box S 4K and like it already. It's simplistic and advanced at the same time.

    I red through the pages here and tried it on the launcher, but can't figure out how to re-arrange categories. Just looking at 'Edit categories' where I added a new category. May be this isn't possible as of now. No problem. Glad I got rid of the default launcher.
    Hi,
    You can do it from the left hand side menu (if you didn't hide it in the settings) : on the left of the category name, there's a button (with up/down arrows). When clicked, it allows to reorder categories.