Fast Resume Headaches

Cheeky Ghosty

New member
Jul 23, 2013
108
0
0
Visit site
Has anyone else updated their app to a WP8.1 project and then been bitten by the enforced fast resume?

It makes dealing with secondary tiles an absolute chore. I'm jack of it, had to pull my app Swipe Tunes down from the store for WP8.1 as a result and MSFT won't let me revert o the working WP8 XAP :unhappy:
 

Im_Q

New member
Nov 26, 2012
119
0
0
Visit site
You can't revert to an old 8.0 xap because there's no upgrade or downgrade path that goes from 8.1 (either WinRT or SL) apps to 8.0. 8.0SL apps operate under a different runtime just like it did in 8.0 even in WP8.1 OS version. 8.1SL apps operate on what they call "the Modern Context" which I assume is the same way WinRT apps work but exposing a different set of API for existing Silverlight devs. One of the easiest changes to point out when downloading and updating an 8.0SL to an 8.1SL app is that the isolated storage data is migrated to the WinRT local app data folder. Going back to 8.0 would cause issues in data storage in that case. Basically, the plumbing is different for WP8.1SL and going back would cause problems.

What is the issue you're having specifically? I haven't done much work in 8.1SL apps after upgrading with secondary tile launching but I've done it in WinRT. Maybe I can draw parallels and offer some advice if you provide more details.
 

Cheeky Ghosty

New member
Jul 23, 2013
108
0
0
Visit site
There is obviously an upgrade path because WP8 apps persist on the phone after you update to WP8.1 and then when you connect to the store it prompts you to update the WP8.1 XAP if it is available.

I just want to remove the WP8.1 XAP all together and leave just the WP8 one up, that way people can still get the WP8 XAP just as if I had never published the WP8.1 XAP. If I had not have published the WP8.1 XAP it would have sent the WP8 XAP just fine to WP8.1 phones, but as it detects there is a WP8.1 XAP, it pushes it. I think installing the WP8 XAP from having a previous WP8.1 XAP will not affect much because as the app installs it sets up it's own storage etc and the app itself overwrites the WP8.1 version.
 

Im_Q

New member
Nov 26, 2012
119
0
0
Visit site
Please read my previous post again. I meant there's no upgrade/downgrade path TO 8.0 FROM 8.1. Of course there's a path from lower to higher version. That's not the issue. Going to a lower simply isn't supported by the OS I don't think. That's why there isn't the option to remove higher version Xaps from the store. Installing an app usually doesn't affect data neither does it normally overwrites anything from the store. Existing data should be available for use after updates unless the app was written to wipe out modify data. But again, this is only one consideration after a 8.0 to 8.1 xap update. Other things might happen that makes it effectively irreversible so Microsoft didn't allow it.

I assume you've already tried this but have you tried updating (replacing) the 8.1 xap package to an 8.0 package that just has a higher version number? So you end up with two 8.0 packages in the store. If the certification is dumb enough you might fool it that way.
 

Cheeky Ghosty

New member
Jul 23, 2013
108
0
0
Visit site
Oh I see, I just wouldn't have called going WP8.1 to 8.0 an upgrade that is why I misinterpreted what you said.

Yea but what I mean is if the IsolatedStorage folders are not there when it installs an 8.0 XAP, surely the installer then just builds the folders for the app. It does overwite the .dll of the application, you are correct it doesn't touch app data but the app itself is overwritten. You can see this because if you deploy WP8 version on a test device then deploy the WP8.1 version it overwrites it and vice versa when you go back to deploying the WP8 version so if the SDK can swap between WP8.1 and WP8 XAPS I can't see why the store can't as it should be using the same installer!

Yep the people at support told me to do so I tried it, but the store is smart enough to know it isn't an WP8.1 XAP and it rejects it when you try to 'replace' the XAP unfortunately.
 

Im_Q

New member
Nov 26, 2012
119
0
0
Visit site
Yeah, sorry for the confusion. It's technically and upgrade since there's no "downgrading" from the store's point of view but in reality, we're trying to downgrade to the previous version. I should've been more clear. And maybe deploying from the computer/visual studio is different than the store deploying it? I'm not sure, I've only done it between 8.0SL and 8.1 WinRT so it just places both packages side by side when deployed from VS. And yes, it does overwrite the app.

Maybe elaborate on what's going that fast resume is causing you headaches? Maybe we can fix that since it doesn't look like you can downgrade your app.
 

Cheeky Ghosty

New member
Jul 23, 2013
108
0
0
Visit site
Well my app when it resumes it refires the context of my secondary tile.

So say foe example I have a Secondary time with ?do_playlist=MyPlaylist and when they tap the tile it loads the playlist MyPlaylist and plays it. If they leave the app and then go back into it via holding the back button, so resuming the app rather than starting afresh from the app list/tiles which I catch and kill the loading of the new page instance appropriately as per the MSDN example, it fires the context again so in my case resuming the app starts playing MyPlaylist again from the beginning :(
 

Im_Q

New member
Nov 26, 2012
119
0
0
Visit site
So let me make sure I'm understanding this correctly: Launch app via secondary app (which naturally has a query strong to play playlist), leave app, resume app via task switcher, app automatically tries to navigate to mainpage, app cancel navigation since it's actually resuming so it returns to the playlist page, app tries to play playlist again. (More or less)

If that's correct is it because the navigation context has the query string every time you navigate to that page? It doesn't clear out the "?do_playlist=MyPlaylist" from the uri I don't think in subsequent navigation. How is the context being start (automatically?) I assume the page that plays the playlist sees the query string, processes it, and starts playing the correct playlist. Can't you check for NavigationMode.New and only start playing the playlist then?
 

Cheeky Ghosty

New member
Jul 23, 2013
108
0
0
Visit site
Hi, sorry for the late response I wanted to try this before getting back to you and it is a chore making time ATM. I think this will work, I restructured a few things and from what I can see trapping anything but New page seems to work. I will do a bit more testing. Thanks for your help.
 

Members online

Forum statistics

Threads
326,611
Messages
2,248,633
Members
428,522
Latest member
BarkerJarrod