Bristerna i Universal Apps

Lästid ikon 4 min. läsa


Läsare hjälper till att stödja MSpoweruser. Vi kan få en provision om du köper via våra länkar. Verktygstipsikon

Läs vår informationssida för att ta reda på hur du kan hjälpa MSPoweruser upprätthålla redaktionen Läs mer

Microsoft har börjat uppmuntra utvecklare att migrera sina appar till Universal-appar, men vissa utvecklare är fortfarande inte övertygade. Jag skrev en ledare som citerade utvecklare för ett tag sedan om genomförbarheten av universella appar och varför de inte sätter världen i brand ännu. Idag publicerade en annan utvecklare ett stycke om sina erfarenheter av universella appar (som vi ska återge här med tillåtelse)

 

Windows Phone 8.1 XAML och Universal Apps inkluderade WinRT API:er som har många problem, inklusive några som det inte finns någon lösning på. Men först, låt oss bara prata om namnet "Universal Apps". Jag tycker att det är ganska arrogant, att kalla universellt något som riktar sig till två plattformar, som ärligt talat inte så många användare använder eller bryr sig om. Om du bara tänker på Windows-plattformarna är dessa appar inte heller universella, eftersom de inte kan rikta in sig på de mest använda Windows-versionerna (7 och XP). Men jag avviker.

Han poängterar här, som jag gjorde för ett tag sedan. Varken WP8.1 eller W8.1 ger tillräckligt mycket värde för utvecklare att utveckla för någon av dem ännu eftersom, som jag sa "Windows HAR användare, men de användarna vill inte nödvändigtvis ha appar. Windows Phone-användare vill ha appar, men det finns inte särskilt många av dem” .

Användare är dock inte det enda som hindrar utvecklare från att flytta till 8.1 WinPRT-appar. Det finns också tekniska problem:

 

Mer trassliga API:er

Så bakgrundsljuduppspelnings-API för Windows Phone 8.1 är trassligt, något annat? Säker. BackgroundDownloader är ett annat exempel. I Silverlight fanns det en BackgroundDownloader som var ganska begränsad, men den fungerade. I Universal Apps finns det en ny BackgroundDownloader med några nya funktioner och några viktiga saknas. Till exempel, i Silverlight kan varje nedladdning ha en tagg, där du kan lagra vilken data som helst så att du vet något om nedladdningen när den är klar (till vilken företagsenhet den tillhör, etc.). Inte längre i Universal Apps. Det finns ingen tagg, så du måste bygga och hantera din egen typ av index för alla nedladdningar, så att du faktiskt kan matcha dem med dina företagsenheter. Ett irritationsmoment, men inget du inte klarar av, eller hur.

En kommentator på bloggen tillade också att Camera apis inte var lika bra som Silverlight och jag har fått höra att 8.1 apis saknar linsintegration.

Camera API på WP8.1 är också fruktansvärt dåligt. Det finns inget sätt att få förhandsgranskningsramar. Med Silverlight API kan du helt enkelt prenumerera på ett evenemang och driva lågupplösta ramar genom ZXing vid flera fps. I WinRT är det bästa du kan göra att ta många bilder efter varandra, med blixt ibland och scanna cirka 0.8 bilder per sekund.

Prestanda får också en törn eftersom mängden arbete som krävs för att få smidig rullning har ökat i 8.1 vs 8.0.

prestanda

I Silverlight använde jag ofta LongListSelector för att visa data och använde den med en WrapPanel när jag behövde skapa en layout med två kolumner. LongListSelector är borta, i Universal Apps måste du använda GridView även på Windows Phone. Eller så kan du använda ListView med en anpassad wrap-panel som du skriver själv eller laddar ner någonstans, men det tar lite ansträngning att få den att göra virtualisering ordentligt.

Så du använder GridView på både Windows Phone 8.1 och Windows 8.1 för att göra det konsekvent. Lägg till tiotals föremål med bilder till det och prestandan börjar bli riktigt lidande. Grå platshållare kommer att dyka upp och ännu viktigare, försvinner aldrig. Du behöver inga bilder från händelsebehov, lägg bara till cirka 300 textobjekt i GridView så börjar de grå platshållarna att visas när du rullar

Poängen med det här inlägget är inte att bash Microsoft, det är att förklara varför utvecklare kanske inte är villiga att skapa universella appar ännu. De är inte en absolut bättre metod, de är en uppgradering på vissa områden och en nedgradering på andra (Windows Phone-användare känner väl till den här känslan). Om Microsoft ska attrahera utvecklare måste de arbeta snabbare än vad de gör just nu, "snart" och "inom de kommande månaderna" är inte attraktiva för människor vars försörjning är beroende av att "snart" är "igår". Tack och lov finns det tecken på att detta kan förändras. WP 8.1.1 kom med några nya API:er (dock begränsade) och 8.1.2 sägs (i ett nu dolt inlägg) tillåta utvecklare att skapa nya fantastiska appar. Microsoft kan komma att förändras i framtiden och det är bra. Men för många utvecklare som pressas att skapa universella appar nu kan framtiden inte komma hit snart nog.

För mer än de utdrag du får här, läs hela stycket här.. För min mer detaljerade del, se här.

Mer om ämnena: utvecklare, Universal Apps, Windows 10

Kommentera uppropet

E-postadressen publiceras inte. Obligatoriska fält är markerade *