What's The Point Of Settings - Background Tasks - Advanced

Joshua Jackson

New member
Nov 20, 2012
585
0
0
Visit site
So, I was disabling some background tasks and thought I would take a look at Advanced...
It was just a listing of the background tasks and I couldn't do anything with any of them.
What's the point of it being there?
JJ
 

I_am_beat

New member
Oct 25, 2013
51
0
0
Visit site
So, I was disabling some background tasks and thought I would take a look at Advanced...
It was just a listing of the background tasks and I couldn't do anything with any of them.
What's the point of it being there?
JJ
It does nothing. You are able to know which apps run in the background without permission and which you cannot disable.
 

manicottiK

New member
Nov 24, 2011
660
0
0
Visit site
What's the point of it being there?
The thing that Windows Phone calls "background tasks" is what what's called a "periodic task" from a programming perspective. The programming code behind it is wrapped up in an "assembly" that's part of the files installed with the app, but it sort of isolated from the main part that users interact with. The Advanced page shows you all of the installed apps that have such embedded periodic task assemblies.

The Background Tasks page shows apps with current requests for their periodic tasks to be run. Those requests are shown as "allowed" or "blocked." If an app has such a "periodic task assembly" and hasn't requested that Windows Phone schedule it, the app does not show up on the Background Tasks page, however, it does still appear on the Advanced page. This is the difference.

I work at a university with a mobile portal app for Windows Phone. For our DrexelOne app, we have a periodic task, but we don't turn it on by default. Because it's not on by default, DrexelOne does not normally appear on the Background Tasks page. If a user activates the periodic updates feature from the app's Settings page, the app asks Windows Phone to schedule the periodic task. Once it's scheduled, DrexelOne will be listed on the Background Tasks page as "allowed." If the user goes back in to the app and turns off the periodic update feature, the app asks Windows Phone to cancel the schedule and DrexelOne no longer shows on the Background Tasks page.

It's a pet peeve of mine that some apps submit their periodic tasks to Windows Phone without first asking me if I want them running every half hour. It's because they assume that they can run that we all have to occasionally look at the Background Tasks page to see which apps are scheduled and then block them.
 

rockstarzzz

New member
Apr 3, 2012
4,887
1
0
Visit site
Never understood them myself. Have asked the WP support a few times as well. It annoys me how apps can run in background and I can't even do anything about it! However, mostly those apps in advances option are the ones that take advantage of "run under lockscreen" API which is different to "wake up and perform task every 30 minutes" i.e. background task.

For examples - Nokia Mix Radio will appear under advanced background task the moment you open it first time because it by default runs under lockscreen when you start playing it. It NEEDS to run in background i.e. under lockscreen and hence is in advanced. However, when you choose to get updated of your favorite artist feeds i.e. their social networks, it will also be visible under background tasks i.e. every 30 minutes it pulls details of any new updates for you. Now you can block it whenever you want and hence your live tile won't update. This doesn't mean it won't have new updates for you because it will still be greyed out under "advanced background task" and may take advantage of it and update your newsfeed anyway.
 

hopmedic

Active member
Apr 27, 2011
5,231
0
36
Visit site
I haven't understood it, either. Two of my apps use background tasks. Both of them only do something if it is the first time that the task runs after midnight (changes live tile with information that relates to the day change). They can both be disabled, and if disabled, they do not run at all (I've tested with disabled). Yet they both appear in the advanced section saying that you can't disable. I have no idea what that section really is for, but I can tell you that if disabled, my apps do absolutely nothing in the background.
 

GerOrBa

New member
Nov 14, 2013
35
0
0
Visit site
Thanks for that response since that explains perfectly why I have check from time to time that some apps are "re-allowed" to run in the background to bock them again. most of the time the apps themselves ask permission to do this when they are run... but definitely some don?t.
 

Joshua Jackson

New member
Nov 20, 2012
585
0
0
Visit site
The Background Tasks page shows apps with current requests for their periodic tasks to be run. Those requests are shown as "allowed" or "blocked." If an app has such a "periodic task assembly" and hasn't requested that Windows Phone schedule it, the app does not show up on the Background Tasks page, however, it does still appear on the Advanced page. This is the difference.
Well, would you look at that...
I counted the number of apps in background tasks and the number in background tasks - Advanced and they are different.
Well described, indeed...
JJ
 

Mr Lebowski

New member
Dec 11, 2013
1,076
0
0
Visit site
Some on the Advanced ARE on the background tasks list and you can turn them off.
Facebook, Chase Mobile, Here City Lens...etc. On my phone more than a dozen appear on both.

It says "these apps can (not will) run in the background and you might not be able to block all of them.
It doesn't say you can not block these apps, because clearly you can.
 

Localhorst86

New member
Jun 8, 2012
272
0
0
Visit site
afaiu the advanced page will simply show you a list of apps that have background tasks in their manifest, i.e. all apps that could potentionaly run in the background, whereas the regular page only shows you apps that are actually running or were manually blocked.

sent from my MK808
 

jmerrey

New member
Dec 9, 2010
1,790
2
0
Visit site
As a side note on this, whenever my live tiles stop updating, I go into this advanced section to see if there are any apps listed that I don't use anymore, and then go to the app list and delete them. It has fixed my live tile issue every time. I remember someone had this tip in a thread a few months ago, and it has worked for me.
 

manicottiK

New member
Nov 24, 2011
660
0
0
Visit site
whenever my live tiles stop updating, I go into this advanced section to see if there are any apps listed that I don't use anymore, and then go to the app list and delete them.
This shouldn't make a difference as the ones that appear only in Advanced are the ones that are not current enabled and scheduled to run by the periodic task service.
 

manicottiK

New member
Nov 24, 2011
660
0
0
Visit site
Some on the Advanced ARE on the background tasks list and you can turn them off.
Facebook, Chase Mobile, Here City Lens...etc. On my phone more than a dozen appear on both.
Yes, the dozen that you talk of are the dozen that have asked the OS to run them every 30-ish minutes. The ones that appear only in Advanced do have a background/periodic capability, but haven't asked the OS to run them.
 

manicottiK

New member
Nov 24, 2011
660
0
0
Visit site
However, mostly those apps in advances option are the ones that take advantage of "run under lockscreen" API which is different to "wake up and perform task every 30 minutes" i.e. background task.
Actually, that's not quite right. Nokia Mix Radio and other such apps appear in Advanced because they contain a another form of specialized "assembly" like the one that I described for periodic (i.e., "background") tasks.

The more complete answer about the Advanced page is that it shows all installed apps that have one of more of the following specialized assemblies: Audio Playback Agent, Audio Streaming Agent, or Scheduled Task Agent (the periodic/background tasks). The two audio agent types lets audio continue to play (and stream, if necessary) even when a user switches away from the app to another.

Because it makes sense that a user might want to "block" certain periodic task from running every 30-ish minutes, Microsoft created the Background Tasks page. It doesn't really make sense to "block" an audio app from continuing to stream or play music (just press the Pause button). Although that doesn't make sense, I think that MS still wanted a page to show all installed apps that have agents, so they created the Advanced page. (Note: some apps contain multiple agent types -- Nokia Mix Radio probably contains two to handle audio and the third to periodically do tile and playlist updates ).

I agree that the wording atop the Scheduled Tasks and Advanced pages is not terribly helpful. (The confusion revealed by all of us in this thread shows that the text could be improved.) Here's a really fast attempt at different wording:
Background Tasks
: "These apps want to be run periodically, typically to quickly download data and/or update tiles. You can block this from happening."
Advanced: "These apps can run in the background and/or play music while you use other apps."

(That "and/or" may not translate well to other languages. This isn't great text, but it's something.)
 
Last edited:

Mr Lebowski

New member
Dec 11, 2013
1,076
0
0
Visit site
Why are tech writers so bad at explaining how things work ? that's what they're hired to do.
My Olympus Pen Micro 4/3 manual is almost unreadable it's so convoluted, repetitive and disjointed, but that's another story

This is what should have been written for Background Tasks / Advanced. Thanks to manicottiK

Background Tasks: "These apps want to be run periodically, typically to quickly download data and/or update tiles. You can block this from happening."
Advanced: "These apps can run in the background and/or play music while you use other apps."
 

lumia_steve

New member
Apr 21, 2012
13
0
0
Visit site
Specifically, for Windows App developers, I'm wondering about what would be the best wording for your app's Help page, when you have an app that has Live Tile updating,

I mean, you've got to convey to the User that all of a sudden, their Live tile may stop working, and what to do about it.

To be thorough, and to really cover all of the bases, you have tell the User that the Phone only has a certain number of allowable "background tasks" going on, and you can go into Settings > Advanced to block some unwanted apps, so that your app's Tile updating can work.

But then, (still talking to user), you still may need to go into Background Tasks > Advanced, to spot some apps where, you may have to either remove the app if the app doesn't have a Settings page, or go into the Settings page and turn off anything that looks like they're doing something regular in the background.

Otherwise many end users of apps ( as you can tell when you browse through windows store or apple store reviews) are kind of ruthless, and will give you a one star, if the slightest thing appears it doesn't work, and just write you off that way.
 

manicottiK

New member
Nov 24, 2011
660
0
0
Visit site
Specifically, for Windows App developers, I'm wondering about what would be the best wording for your app's Help page, when you have an app that has Live Tile updating.
Wow, this is a big question and all of the answers suck.

In response to another thread about confusion on background tasks, I decided that we needed to do a lot better for our app. Unfortunately, Microsoft makes this difficult because of inadequacies in the ScheduledAgent API.

Here's what we'll do in the next release of the app: 1) allow users to always show a task status on our "dashboard" page, 2) show the task status if the app detects that something is wrong, even if the user didn't ask for the status info, 3) upon request, provide lots of info on the status of the task, why it might not be running, and offer suggestions to users on how to get the task running again.

Here are some screen snapshots:
Page that lets users turn on periodic task, lets users
timestamp tiles, and lets users always see task status.
Example of the status info (at bottom) when the
task is working normally.
Tiles 1.png
Tiles 2.png
App noticed that the user blocked the task and
is letting the user know. User can tap it for info.
Here's the help info for "if task is blocked". We
have messages for 7 different task states.
Tiles 3.png
Tiles 4.png

One of the problems with the ScheduledTask API is that an app cannot request that Windows Phone reactivate a blocked/inactive periodic task. Instead, the app must removing its old request for background processing and then submit a new one. That means that if the app tries to restore things and fails (maybe because the user blocked the app or because there are too many other periodic tasks scheduled), the app no longer knows the reason why its old task was made inactive because the old task no longer exists.
 
Last edited:

lumia_steve

New member
Apr 21, 2012
13
0
0
Visit site
That is a pretty thorough approach I must say. I like it.

The challenge I'm facing is that my Live Tile functions as a daily countdown. So if the user does indeed go through several minutes of manual work, disabling other apps, they still won't know if my app's LIve Tile is allowed to run yet (i.e. the steps they ran through had an effect), until around midnight of the next day.

So what I'm thinking of, is having a "troubleshooting toast feature". From a menu on the settings page, they can start a "test toast" - which serves no other purpose - and then they'll at least know within 20 - 40 minutes (they'll see the toast ) whether or not they're good to go with agents on the app, and thus whether the daily countdown tile will work.

Extreme, yes.
 

manicottiK

New member
Nov 24, 2011
660
0
0
Visit site
@lumia_steve: If your periodic tasks expires, becomes unscheduled or becomes blocked, it never comes back to a working state without your app deleting and recreating the scheduled agent object. That is, if a user blocks a task and then unblocks it, your task is still inactive. The user must start your app, your app must check on the periodic task, if it finds it "off", the apps needs to take action. That action is usually to remove the scheduled agent object, resubmit a new one, and then check the success or error that it gets back.

That "dashboard" pano item is the first thing that the user sees in our app. We now always check the task status there. If there's a problem, we show it in the "Alerts" section. If there's no problem, we don't show it unless the user asked to see it and even then we only put it at the bottom of the "Notices" section.
 

Members online

Forum statistics

Threads
323,169
Messages
2,243,376
Members
428,035
Latest member
powerupgo