We have developed quite a few Canvas Apps which are all embedded in a model driven app. Running the Canvas App outside of the context of the model driven app does not make sense in our scenario. We would thus like to hide the Canvas App from the Power Apps player, the office portal, etc. Just like you have the ability to "mark an app as hero" we would like to the opposite, "hide" the app.
It seems that the Canvas App entity in Dataverse has a property "Is Hidden" which might seem exactly for our purpose. See docs. However I am not sure if it is supported to change the value using the API? Unlike the "mark as hero", there is no PowerShell command available.
Side-question: would changing the value of the property "IsHeroApp" in Dataverse be supported/sufficient? Or always need to go via Power Apps admin API/PowerShell?
Anyone has any experience or guidance?
Thanks!
We have a number of apps that are designed to only be launched from a model app (none of them are embeded on a model app form). All run inside the model app or the open a new browser tab. Since canvas apps, when launched via player, have no context to the host dataverse/CDS environment they are installed into they are unusable (broken?) apps by default. By launching them from a model app you can provide the needed Dataverse info context to the canvas app.
Since there is no way to stop someone from launching the app via the player, you might consider this:
1. Add a screen to your app that says it can't be launched from the player. Without navigation, they can't get to any other part of the app.
2. When launched by the player, the URL will have a param called "source" and it is set to "portal".
In your App OnStart code, get the param and check it for portal. If found, force the screen navigation to your bad launch page.
Here is a code example from our D365 event registration canvas app with a screenshot:
/// In start up of app, check URL for param of where it was launched from
Set(_evxThisAppSource, Lower(Param("source")));
//// SET STARTING SCREEN
Set(_evxGoToStartScreen, If(!IsBlank(_evxThisAppSource), _evxThisAppSource, _evxThisAppStartScreen) );
Switch( _evxGoToStartScreen ,
"businessappdiscovery", Navigate('Failed Launch Screen', ScreenTransition.None),
"portal", Navigate('Failed Launch Screen', ScreenTransition.None),
Navigate('Registration Screen',ScreenTransition.None)
);
Hopefully this will give you some ideas.
Fun Fun!
-Art
No, we haven't looked further into this one yet. I was hoping for some guidance from the community.
Anyway, I've upvoted your idea.
Hi Wauters,
I am also interested in this functionality. Did you find a way to hide embedded canvas from Power Apps mobile ?
Here is the posted idea : https://powerusers.microsoft.com/t5/Power-Apps-Ideas/Hide-embedded-canvas-app-in-Power-Apps-mobile/idi-p/825789
If you'd like to vote.
Thanks.
Sébastien.
WarrenBelz
109
Most Valuable Professional
Michael E. Gernaey
82
Super User 2025 Season 1
MS.Ragavendar
72