Artykuły dla tagu Xamarin

videopoint.pl
kwi 23 2017
0

Platforma Xamarin - recenzja kursu video

Dzięki ubiegłorocznej decyzji Microsoftu, Xamarin stał się rozwiązaniem, które w standardowym scenariuszu nie wymaga już więcej płatnej subskrypcji. Taki ruch giganta z Redmond znacznie zwiększył dostępność tego produktu dla przeciętnego programisty. Pozytywną wiadomością jest również nieustanny rozwój tego produktu, zarówno w wymiarze Xamarin.Platform oraz Xamarin.Forms (o różnicach między tymi produktami pisałem w moim wprowadzeniu teoretycznym dla Xamarina).

Wszystkie te pozytywne wiadomości oraz ciągły wzrost udziału rynku sprawiają, że niewątpliwie warto się zainteresować tym tematem bliżej. Pomóc w tym może kurs video wprowadzający do nauki Xamarina, który dziś mam dla Was przyjemność zrecenzować.

freeimages.com
sty 17 2017
0

Xamarin.Forms - pół roku komercyjnej pracy

Od jakiegoś pół roku pracuję zawodowo z Xamarin.Forms. Początki zapowiadały się naprawdę obiecująco. Przykładowe aplikacje z Xamarina w większości działały. W UI jest XAML, którego już wcześniej poznałem m.in. przy okazji Universal Apps. Na pokładzie nie mogło zabraknąć również C#. Ponadto bardzo pozytywnie rokowały pierwsze PoC z naszej strony oraz zapewnienia producentów w których to mówiło się o bardzo wysokim procencie współdzielonego kodu, czego dowodem miała być aplikacja Xamarin.CRM. Życie jednak zweryfikowało te realia i pokazało kilka wyraźnych rys na tym pięknym obrazku.

freeimages.com
sty 03 2017
0

Visual Studio Mobile Center - jedno miejsce do obsługi aplikacji mobilnych

Obecnie w świecie mobile królują dwa systemy - Android oraz iOS. Każdy z nich cechuje się zupełnie inną filozofią działania, sposobem wytwarzania aplikacji (wspominałem o tym sporo przy okazji wpisów o Xamarin), a także całym zestawem usług wykorzystywanych w trakcie procesu developmentu oraz późniejszego utrzymania. Niesie to ze sobą oczywiście spory narzut w kosztach wdrażania oraz stabilizacji projektu.

Stosując technologie pokroju Xamarin, React Native itp. jesteśmy w stanie częściowo zminimalizować problem związany z developmentem. Wciąż jednak pozostaje kwestia różnych usług, które są integralnie powiązane z wybranymi systemami operacyjnymi. Przykładowo żeby zbierać informacje o wyjątkach, czy statystyki użycia, musimy logować się do usług dla dedykowanych systemów. Na szczęście również w tym przypadku istnieją rozwiązania, które mogą nam ułatwić pracę. Jednym z nich jest tytułowy Visual Studio Mobile Center, który uznawany jest za następcę popularnego swego czasu HockeyApp.

freeimages.com
gru 09 2016
0

Jak sprawnie budować aplikacje w Xamarinie

Xamarin może rozwiązać wiele problemów technologicznych związanych z samym procesem pisania aplikacji, ale może również wygenerować sporo nowych tematów m.in. w obszarze budowania programów, czy też obsługi tzw. błędów runtime. Proces buildu jest w tym przypadku dość złożony, ponieważ najpierw musi nam się udać kompilacja kodu napisanego w C#, a dopiero później powstaje wynikowy kod natywny upakowany do pliku apk w Androidzie czy pliku ipa w iOS. Jeśli dodamy do tego temat obfuskacji kodu, to szybko może się okazać, że temat budowania może nie pójść tak gładko, jak reklamowane jest to na stronie Xamarina.

Dlatego też warto poznać kilka reguł, które mocno zredukują prawdopodobieństwa wystąpienia błędów na etapie kompilacji, czy też testowania wersji debug.

freeimages.com
lis 29 2016
0

Targetowanie paczek pod różne systemy w Xamarnie

Tworząc biblioteki do rozwiązań Xamarinowych, właściwie nigdy nie myślimy tylko o jednym systemie docelowym. To w końcu dlatego przecież wybraliśmy właśnie rozwiązanie Microsoftu, by nie ograniczać się do jednej platformy. I o ile twórcy Xamarina starają się reklamować to rozwiązanie jako takie, w którym odsetek współdzielonego kodu jest niezwykle wysoki, to w praktyce nawet we wdrożeniach opartych o Xamarin.Forms nie da się uniknąć rozwiązań dedykowanych pod konkretne platformy.

Na szczęście nie jest to wielkie wyzwanie. Wystarczy tylko odpowiednio przygotować projekt oraz plik nuspec naszej wynikowej paczki:)

freeimages.com
paź 20 2016
0

DataTemplateSelector w Xamarin.Forms

ListView to jedna z najważniejszych kontrolek w Xamarin.Forms. Jak sama jej nazwa wskazuje, jest ona odpowiedzialna za ogarnięcie tematu listy. Listy można spotkać w praktycznie każdej aplikacji, począwszy choćby od najprostszych programów typu TODO poprzez rozbudowane aplikacje wyświetlające video, obsługujące naszą pocztę, czy dbające o temat komunikacji.

Kontrolka którą dostarcza Xamarin.Forms, posiada wiele przydatnych elementów (temat na inny wpis to historia jak w praktyce działa ta kontrolka, a warto dodać że wymaga ona sporej dawki cierpliwości od programisty..), a jedną z nich jest możliwość ustawienia szablonu elementu wyświetlanego na liście.

Domyślnie na ListView, możemy wyświetlać elementy tylko w jednym layoucie, który oczywiście można modyfikować odpowiednimi wartościami modelu i dobrze napisanym XAMLem. W praktyce jednak, nie zawsze jest to najlepsze rozwiązanie. Dużo lepszą opcją będzie zastosowanie klasy DataTemplateSelector, która na podstawie właściwości zawartych w modelu, jest w stanie dostarczyć odpowiedni układ, dopasowany do aktualnych danych.

freeimages.com
wrz 18 2016
0

.Net Standard Library - sposób Microsoftu na uporządkowanie swoich API

Świat technologi działających w oparciu o .Net Framework jest ostatnimi czasy niezwykle bogaty. Mamy tutaj kilka rozwiązań mobilnych, webowych, a także wsparcie dla desktopów. Można by powiedzieć - czysta sielanka. Pewne problemy zaczynają się jednak w sytuacji, w której rzeczywiście chcielibyśmy pracować z kilkoma rozwiązaniami naraz.

W takiej chwili, naturalne stają się próby współdzielenia raz napisanego kodu, w różnych rozwiązaniach. Microsoft udostępnia w takim celu choćby tzw. Class library. Jednak jeśli kiedykolwiek próbowaliście użyć tego rozwiązania dla różnych targetów, to z pewnością już wiecie, że jest to po prostu technicznie niewykonalne.

Rozwiązaniem tego problemu, miały być tzw. portable class library. W praktyce rzeczywiście za ich pomocą można przygotować bibliotekę, która będzie mogła być skonsumowana na różne sposoby, o ile tylko odpowiednio wybierzemy jej profil. Tych jest całkiem sporo, a każda zmiana wymagana ponownej rekompilacji wszystkich elementów w naszej układance. Zmiana profilu powoduje również zawężenie, bądź też rozszerzenie zestawu dostępnych API. Ogólnie jest to rozwiązanie na tyle problematyczne, że tęgie głowy postanowiły wypracować nowe, bardziej uniwersalne rozwiązanie.

freeimages.com
wrz 08 2016
0

Klasa Device w Xamarin.Forms

W poprzednich wpisach sporo pisałem o różnych sposobach obsługi poszczególnych systemów wspieranych przez aplikację. Odradzałem wykorzystywanie projektów typu Shared, zachęcałem zaś do bibliotek portable.

Rozwiązanie w wariancie portable niesie swoje ograniczenia, ale tak na dobrą sprawę wymusza na programiście bardziej przemyślane podejście i zwiększa przejrzystość tworzonego kodu. Okazuje się jednak, że nawet w takiej sytuacji, można skorzystać z pewnych specjalnych rozwiązań przygotowanych przez twórców Xamarina. Konkretniej chodzi o klasę Device, która wystawia dwie istotne właściwości oraz udostępnia kilka przydatnych metod, które pozwalają na uruchamianie kodu specyficznego dla poszczególnych systemów.

freeimages.com
wrz 01 2016
0

Efekty w Xamarin.Forms

Kilka tygodni temu na łamach bloga, opisywałem CustomRenderery. Rozwiązanie daje to ogromne możliwości i pozwala na zapewnienie stricte natywnych wrażeń w sytuacji gdy korzystamy z Xamarin.Forms i nie wystarczają nam standardowo dostępne kontrolki i właściwości. Wykorzystując CustomRenderery, możemy w miejsce wskazanej kontrolki (czyli dowolnego elementu, który w Xamarin dziedziczy z View) wstawić natywną implementację dla wybranego, bądź też dla wszystkich obsługiwanych systemów. Jest to bardzo kompleksowe rozwiązanie, które czasem może jednak przytłaczać mnogością dostępnych opcji. Na szczęście Xamarin zapewnia również inne narzędzia.

Jednym z nich są tytułowe efekty, które możemy aplikować do kontrolek. I choć podejście to pozwala częściowo uzyskać podobne efekty jak CustomRenderery, w praktyce funkcjonuje w zgoła innych realiach.

freeimages.com
sie 23 2016
0

Autofac w Xamarin.Forms

Mechanizm DependencyService zaprezentowany w poprzednim wpisie, daje sporo możliwości już na starcie pracy z Xamarin.Forms. Dzięki zastosowaniu specjalnego atrybutu, możemy korzystać z funkcjonalności opisanych w paradygmacie IoC praktycznie bez żadnego wysiłku i mamy ten mechanizm dostępny out-of-the-box.

Prostota rozwiązania niesie za sobą też pewne skutki uboczne. Mechanizm jest niezwykle łatwy w użyciu, ale zarazem bardzo ograniczony funkcjonalnie. Jeśli kiedykolwiek pracowaliście z kontenerami IoC typu Autofac, czy Ninject, to szybko przekonacie się, że DependencyService tak naprawdę oferuje nie wiele.

Nie możemy w prosty sposób określić czy usługa ma być rejestrowana jako pojedyncza instancja, na żądanie, czy może też ma zawsze zwracać ten sam obiekt w określonym obszarze aplikacji. Nie mówię już tutaj również o bardziej złożonych operacjach, typu rejestracja usługi ze zdefiniowanymi wartościami parametrów itp. itd.

Czy zatem warto korzystać ze standardowego rozwiązania? Być może w prostych aplikacjach może i tak, ale ogólnie zachęcam do wyboru bardziej zaawansowanych bibliotek. Na szczęście takowe można bardzo łatwo podpiąć do Xamarin.Forms:-)

1 2