How to detect that your app is running in Kid’s Corner

How to detect that your app is running in Kid’s Corner

  • Comments 7
  • Likes

In Windows Phone 8, Microsoft introduced the Kid’s Corner feature that lets parents configure a separate Start screen for their children and populate it with only the apps, games, and content that they feel is appropriate. Because some features of the phone are disabled in Kid’s Corner, or because some actions might not make sense for a child to perform, apps are able to detect they are running in a Kid’s Corner session and adjust their behaviour appropriately.

For example, imagine your application allows users to upload photos or location data or other information to a website, or otherwise enables sharing of information with other users. Before enabling those features, you should check whether the application is running in Kid’s Corner or not:

  • If you are not running in Kid’s Corner, show the normal UX
  • If you are running in Kid’s Corner and the parent has chosen to permit the activity (see below), show the normal UX
  • If you are running in Kid’s Corner and the parent has not chosen to permit the activity, disable the feature and consider some UI such as “Please ask your parents to enable photo sharing in 'Settings'”

You also need to build a 'Settings' page (that only shows up when not running in Kid’s Corner) and here parents can set their preferences to allow (or disallow) sharing of photos or other information by their children. Since the application shares the same Isolated Storage when running in Kid’s Corner, once the parent has set their preference it can be easily retrieved when the child runs the app.

So how does your app detect that it is running in Kid’s Corner? Enter the ApplicationProfile class, and its single static Modes property. If the current mode is Alternate, that means your app is running in Kid’s Corner and you should disable any UX that would lead to a dead end (such as in-app purchases) or any other content or experiences that parents may want to control in Kid’s Corner. It’s also a good idea to disable ads when an app is running in Kid’s Corner (or change the type of ads you’re requesting), because if the child clicks on an ad it may take them to the browser experience, which is not fully regulated by Kid’s Corner.

One might ask why the API has such a non-intuitive name - why not call it IsKidsCornerMode or something similar - and the answer is that we try our best to avoid using brand terms in our APIs since those are subject to change over time. In particular, the name of this feature changed during Windows Phone 8 development, and so even if we had chosen the “friendly name” it would have been wrong (and look rather silly) by the time we shipped.

There have been cases in the past where we did put a brand term in our API, and it ended up causing problems: case in point, the map-related tasks. In a previous release, we added the BingMapsTask and BingMapsDirectionsTask classes so apps could display maps and directions using our built-in mapping experience. In Windows Phone 8, our map service is now provided by Nokia Maps, so we added the new un-branded MapsTask and MapsDirectionsTask classes which do exactly the same thing as the old ones (and of course we keep the previous class around for the purposes of backwards compatibility).

7 Comments
You must be logged in to comment. Sign in or Join Now
  • The features that were expected for long days have finally comes out mobileupdate24.blogspot.com/.../the-most-expected-upcoming-features-of_27.html

  • I could easily have hidden the secondary tile menu item from view when running in Kid’s Corner but decided that hiding the menu entirely would be a better option so I used the following code:

    1 if (ApplicationProfile.Modes == ApplicationProfileModes.Default)

    2 {

    3   CreateApplicationBar();

    4 }

    <a href="www.ascratech.com/mobile-app-development">iPhone Development</a>

  • have you see it today your stock has goon down 0.24 , from 26.46

    so iges by the end of the month you will be on a flat 20.00

    Michael

  • one more thing

    A grand total of 89.8 million PCs were shipped during the fourth quarter...2012

    20 million is windows 7 and 8

    the othere goes to apple, google chrome,unix,ubuntu

    so i ges apple has a bigger market share than you at the moment

    and google chrome not far behiend

    that is allso why your stock will start fall a bit ,, and as we get into quater 2 , it will fall more

    Michael

  • congratulations on sals ,, 60 million windows 8

    and you are unlock 45000 htc,nokia, and the othere brands,phones everyday in the windows ecosystem

    there is a long up to 1,3 million phones android nexus 7 60000 everyday

    apple 700000 phones, ipad 30000 everyday

    i just hope that the us do not run out of bandwidth for celuar

    about the 60 million i ges 20 million goes to user ugrade

    around 1,8 million surface and pro not sold yet

    the rest is in some displaywindows somevare or in a storege , in a warehouse

    so the look of this the stock will go down

    i no you are making profit , but this is not the point, you do not need to make profit in the ression of times

    you need MARKET SHARE , why

    when people first have boy into an ecosystem , it is verry deffecount to swicth to a nother ecosystem

    and this is the future

    allso i have read the news to ,,

    you alone are control the price of every windows 8 device

    this will backfire,, you quality is not there with the apple products exept the surface it is quality looking

    so your partners , is not making quality, they have not learn anything at all

    allso if you can produce a android tabelt for 199 dollars, scale of dollars over time

    you can do this as well,, think about this

    again congratulations on sals

    and when are we gonna see the surface in denmark,

    Michael

  • hopmedic
    13 Posts

    This could be handy indeed

  • Awesome info! Wondered where to get that since the SDK was released. Will be using it in the next app update.