• Introducing XDA Computing: Discussion zones for Hardware, Software, and more!    Check it out!

Themes / Apps / Mods SamSprung Cover Screen Launcher

Search This thread

kowalskitg

Member
Jul 12, 2007
20
8
Thank you for keeping up with this, I enjoy seeing your posts in the morning and screwing around with the latest build. It's about the only interesting (to me) development that's actually happening with this phone.

Currently, I've gotten the smartride app to launch through Microsoft launcher, but the Bluetooth never actually connects, probably something to do with a power saving setting or something, will have to screw around with it more
 
Thank you for keeping up with this, I enjoy seeing your posts in the morning and screwing around with the latest build. It's about the only interesting (to me) development that's actually happening with this phone.

Currently, I've gotten the smartride app to launch through Microsoft launcher, but the Bluetooth never actually connects, probably something to do with a power saving setting or something, will have to screw around with it more

Thanks. I was looking through and couldn't find any obvious settings that might do that. You might want to make sure the app isn't getting moved to one of the sleep sections under the background usage limits. That keeps happening to a few apps I use regularly, which contradicts the explanation of the feature.
 
Added some changes to the initial startup that shouldn't matter, but may solve issues in some rare cases. The configuration activity design for a standard widget doesn't seem to work with the cover screen, but the flow was added to allow making configuration optional and defaults load.

There are also a few updates to the widget layout and the class info in the manifest that may improve refreshing. Much like the configuration changes, they are fundamentally useless. There may be those rare cases when they make a difference, though.

Also realized the update notice in the settings activity was a bit silly, since nobody is meant to be opening that regularly. The next update will be focused on moving that to the widget with as little hassle as possible.
 
Last edited:

crawls69

Member
Mar 29, 2015
29
11
Thanks. I don't know what happened to the xda links, but this was mine back when they appeared in my profile.
Prior to this phone I had the motorola razr 5g. You could do just about anything on the outer display - it had it's own native app launcher, it could display a third party launcher along with the third party launcher's custom widgets, it had full keyboard functionality, etc.. Of course it's easier to do more on the razr 5g cover display because it's larger than the z flip 3 cover screen. However, Samsung should have integrated a little more functionality into the z flip 3 cover screen.

That said, you definitely added value to my z flip 3 with this launcher widget.

I made a small donation. Keep up the good work.
 
Prior to this phone I had the motorola razr 5g. You could do just about anything on the outer display - it had it's own native app launcher, it could display a third party launcher along with the third party launcher's custom widgets, it had full keyboard functionality, etc.. Of course it's easier to do more on the razr 5g cover display because it's larger than the z flip 3 cover screen. However, Samsung should have integrated a little more functionality into the z flip 3 cover screen.

That said, you definitely added value to my z flip 3 with this launcher widget.

I made a small donation. Keep up the good work.

Thanks. I really have no idea why they limited this one so much beyond "dumbing it down" for their store to control the clocks and widgets. The requirements to sell on the Galaxy Store are stricter than Sony and that is saying something.
 

jakobxxl

Senior Member
Apr 1, 2012
106
28
Alanya
Hi twistedumbrella, thanks a lot for this special app. Can i ask you please for the previous version? I have one app for reading the glucose level and scanning a sensor on the body... and i don't remember exactly that the reading was working before the update. In both versions i must open samsprung launcher and start the app and then i can scan the sensor, when i scanning the sensor a new page was open and the reading was done. Now it doesn't open the second page and i don't remember was it working before the update. Thanks in advance
 
Hi twistedumbrella, thanks a lot for this special app. Can i ask you please for the previous version? I have one app for reading the glucose level and scanning a sensor on the body... and i don't remember exactly that the reading was working before the update. In both versions i must open samsprung launcher and start the app and then i can scan the sensor, when i scanning the sensor a new page was open and the reading was done. Now it doesn't open the second page and i don't remember was it working before the update. Thanks in advance

I don't keep older versions. Part of Github pushing out builds on its own was that each new one replaces the previous one. The app launching code hasn't changed across quite a few of them, so I would assume it would work the same in the previous one anyway. I will try a few apps that launch multiple pages and see if I can find a cause.
 

jakobxxl

Senior Member
Apr 1, 2012
106
28
Alanya
I don't keep older versions. Part of Github pushing out builds on its own was that each new one replaces the previous one. The app launching code hasn't changed across quite a few of them, so I would assume it would work the same in the previous one anyway. I will try a few apps that launch multiple pages and see if I can find a cause.
Thanks a lot, my app is LibreLink but without the sensor you can't go to the second page. The sensor get in touch with the nfc reader and open then the second page
 
I know i've been a little quiet with the updates, but I haven't given up. For anyone that doesn't follow what I do outside of this project (pretty much anyone), I took over TagMo not long ago. It's an app for making custom Amiibo tags. One of the big requests was supporting some specialty hardware that one of the generous users sent along for testing and it arrived Friday night. Much like any phone i've been donated over the years, the biggest thank you I can offer is swift progress. I should have that to a point where I can juggle projects again in the next day or two.
 
  • Like
Reactions: D4rk4 and DonMarek

anselmo884

Member
Dec 26, 2015
48
10
I know i've been a little quiet with the updates, but I haven't given up. For anyone that doesn't follow what I do outside of this project (pretty much anyone), I took over TagMo not long ago. It's an app for making custom Amiibo tags. One of the big requests was supporting some specialty hardware that one of the generous users sent along for testing and it arrived Friday night. Much like any phone i've been donated over the years, the biggest thank you I can offer is swift progress. I should have that to a point where I can juggle projects again in the next day or two.
I use both this and TagMo so your work on both is appreciated!!
 
  • Like
Reactions: twistedumbrella

crawls69

Member
Mar 29, 2015
29
11
I don't know how much more can really be done inside the limitations Samsung placed on the cover screen. It may be as close as it's going to get until they lighten up.
In my opinion, there's not much more that really needs to be done. This launcher has made the cover screen almost as functional as the larger Moto RAZR 5g cover screen. We can also use workarounds for some of the limitations. For example, I press and hold the power button, then release it while keeping my finger on the fingerprint scanner to unlock the phone. We don't have to remove the screen lock for the launcher (you already made us aware of the screen lock workaround). I also configured bixby dictate to initiate using the power button as a workaround to not having keyboard functionality on the cover screen. I use this method to "type" in any text field. So, for example, I can open my messaging app on the cover screen, and create a new text message or respond to a text message without opening the phone. This works in just about ANY text field in ANY app. This launcher delivered a huge jump in cover screen functionality.
 

Top Liked Posts

  • There are no posts matching your filters.
  • 3
    You can/might have Telegram but you don't want to have Telegram account.. Pity you!

    I don't have one and I don't want to sign up for something with my phone number that random people can also use to find me.
    1
    Somewhat surprisingly, the one ui 4 beta doesn't break samsprung. Nice! Maybe I won't regret doing the beta for once! Hopefully they fix the max hz app soon so I won't be missing anything

    If they didn't unlock full launchers for the beta, that's just as big of a disappointment as if they had locked it down more.
    1
    thank you how can i share a log with you so you can help me troubleshoot

    When you launch the app from the drawer, it's the button that has Logcat in the text.
    1
    It saves the file to /sdcard/Android/data/ in the app directory

    It saves the file to /sdcard/Android/data/ in the app directory
    Thank you sent LOGCAT TXT you requested to your email '[email protected]' hope you can figure it out
    1
    Could you email them to [email protected] as well, thanks - TwistedUmbrella is the creator of the SamSprung app, while I found the original trick to load custom widgets on the cover screen so I know quite well where the various components of the cover screen system are in these apps. If I can find out another way around the block, I'll open a pull request in TwistedUmbrella's repo for the app with a fix. Thanks again for your help!
  • 10
    In all fairness, I don't think i've explained why the limitations are what they are and should probably have done that a while ago.

    The cover screen is effectively like plugging in a second screen on a previous S or Note series phone. DeX is effectively a secondary home launcher. Since this screen is part of the phone, instead of connected by a cable, a second launcher is used instead of DeX.

    The outer screen supports a second launcher, such as Nova or Smart Launcher 5. It also supports a primary launcher having a secondary launcher activity. Samsung, on the other hand, has disabled this support in favor of a hardcoded launcher that's built into the firmware.

    Samsung's launcher has been broken into the home screen, which is the clock selection, and widget pages. It's been further limited by only allowing certain widgets to be available on the widget pages.

    Being a system app signed by Samsung, they've gone a step further. The widgets allowed must system apps or signed by Samsung, as well. One loophole exists, which is Samsung Health. It does not need to be a system app, since you can install it from Google Play. It also doesn't need to be signed by Samsung for whatever reason. It does, however, still need to match up with the expected widget inside the expected app.

    This app takes advantage of the loopholes by using the specific component name (package / package.activity) of the Samsung Health widget and the package for Samsung Health. Because of this, the app must also be a widget, though. It cannot be a full launcher.

    Widget functionality is limited, but can support launching apps. This is another loophole that uses the widget list support to act as a fake launcher. Since the core launcher behind the widgets is still a launcher, it will launch apps on the cover screen.

    Like a normal Android screen, configuration changes are handled by the current activity being displayed. In this case, that would be whatever app is launched. The widget gets taken along for the ride. To minimize the impact of the launched app, the widget is designed to ignore any configuration changes, which would usually trigger the list to refresh.

    A few unique problems exist because of the cover screen being composed of widgets. One is that they do not follow the expected life cycle of a widget. They are not refreshed when they appear, which is why a swipe is sometimes needed to make list items clickable. Another is that they cannot perform any of the prep an activity provides, such as handling the lock screen. When an activity requests overriding the lock screen, it only extends to the activity and not to any it launched.

    This leaves us with what you see. A widget that exploits a bunch of loopholes within the limitations of the widget framework.
    9
    This is a WIP launcher for the cover screen that allows you to run apps without opening the phone.

    This is primarily useful for checking recent messages, running background tasks, or performing actions that do not require a keyboard or the full screen.

    Current limitations:
    • Apps require Screen lock type set to None / Swipe in Settings -> Lock screen
      • Bixby unlock can be used as a workaround for other lock types

    • Keyboards will not open on the cover screen and some app functionality is limited
      • Firmware limitation by Samsung - Secondary IME support is disabled

    • Switching apps requires tapping power and waiting for at least two seconds to close the app before launching the widget again (turn on cover, swipe to widget). The app list, however, can be swiped closed.

    • Samsung Health must be uninstalled to free up the package name for the whitelisted widgets. Installing this app will then add it as an option in the cover screen widgets.
      • Firmware limitation by Samsung - Widget package name or signature




    This app replaces Samsung Health and will not work with any other app that requires uninstalling Samsung Health.​


    Thanks @CarudiBu for discovering the workaround to load a custom widget.
    5
    Done. Now you can hide / unhide apps for the widget with a long press on the item (in the app settings).
    5
    Widgets on the cover screen are granted Settings.canDrawOverlays without the need for permission approval from the user?

    With the option off in the app settings, the app never requested the permission and instead simply verified that it was already granted. That is interesting...

    and now the big news:

    Portrait apps may now be fully functional, if my testing is correct.


    The permission approval button when launching the app from the drawer shouldn't be required, but it exists in case it will help with any finicky apps / devices. It will request system settings and overlay permissions.

    System settings permission will allow the widget to temporarily disable the automatic rotation option, while the overlay permission creates a fake view over the widget that is locked in portrait and steals focus from the widget to avoid it forcing the layout back to landscape. This will not, however, prevent apps with landscape support from functioning normally.

    A new caveat I found is that, when charging, tapping power and waiting won't exit the current app. I do not intend to address this right now. The reason being that the controls to have the power button return to the widget also force a screen timeout to return to the widget and can cause issues with the app being displayed when opening the phone.

    A quick and dirty workaround to change apps when charging is to simply open the phone a bit. This will reset the widget without breaking the expected functionality.

    As it stands, the power button and a timeout will not kill the current app unless they exceed two seconds and will not kill the app at all when charging. This allows long-term use of a single app, which fits most use cases. Other options to switch apps, such as volume button overrides, are also being explored.

    @ChrisChoi314 it appears your list of incompatible apps was lost in the cleanup. If you still find any, you can post the list on the issue for it.

    3
    Also done. Now the switches work as they were intended and long press is no longer used.