UWP: Nezobrazí se Share UI

Tenhle problém dokáže pěkně potrápit. V jedné aplikaci jsem generoval obrázek, spojoval ho s Inkem a následně přes Share contract nabízel ke sdílení třeba do mailové aplikace. V emulátoru i na skutečném telefonu všechno fungovalo, dokud byl připojený debugger, nicméně když jsem aplikaci spustil rovnou ze seznamu, Share UI se nezobrazilo a nevyskočila ani žádná chyba.

Bádání odhalilo, že oba režimy jsou různé v tom, kolik času aplikace dostává, aby dodala balíček, který se sdílí – informace je uložena v DataRequest.Deadline a liší se výrazně (kód jsem pouštěl včera – 11. 6. 2016):

image

Podle dokumentace to může být klidně jenom 200 ms. Moje aplikace tedy nestihla dát včas dohromady celý obrázek.

Rychlým řešením je přesunout získání obrázku ještě před vyvolání sdílení:

Výše odkazovaná dokumentace ale doporučuje použít metodu SetDataProvider, které předáte delegát metody, která poskytne data:

 

Napsat komentář

Vaše emailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *