>>> WELCOME. WE'RE GOING TO GET
STARTED. I AM A PROGRAM MANAGER
ON THE XAMARIN FORUMS TEAM. I HAVE
WITH ME TO THE SIDE THE WONDERFUL
JOHN DOUGLAS WHO OWNS OUR ANDROID
TOOLING AND ANDROID SDKs WHICH IS
A VERY TOUGH JOB AND HE DOES A GREAT
JOB AT IT. HOW MANY PEOPLE HERE
HAVE HEARD OF XAMARIN FORMS? HOW
MANY PEOPLE HAVE ACTUALLY FILED
NEW AND OPENED THE XAMARIN FORMS
APP? HOW MANY PEOPLE ARE SHIPPING
XAMARIN APPS TO THE STORE? VERY
COOL. GOOD SHOWING. SO FOR THOSE
WHO DON'T KNOW WHAT XAMARIN FORMS
IS OR XAMARIN IS IN THE FIRST PLACE,
BASICALLY XAMARIN IS THE ABILITY
TO USE C# AND USE . NET TO WRITE
MOBILE APPS FOR ANDROID AND iOS
AND WINDOWS. WITH XAMARIN NATIVE,
YOU CAN DO MAC AND WATCHES AND TVs.
IT'S FANTASTIC. BUT THE WAY XAMARIN
FORMS ITSELF WORKS IS YOU HAVE YOUR
SHARED C# LODGING. THE VIEW MODELS
AND YOUR SERVICES AND BUSINESS LOGIC
AND THE PROPRIORITY STUFF. AND SHARED
UCODE ON TOP. IT'S A DIFFERENT FLAVOR
THAN WITH UWP BUT IT'S XAMARIN FORM
AND THE SAME SYNTAX YOU'RE USED
TO. AND IT'S OPEN SOURCE. IT'S iOS,
ANDROID AND WINDOWS OUT OF THE BOX.
AND A SINGLE SHARE CODE IF YOU NEED
TO, YOU CAN DRILL DOWN INTO THE
iOS AND ANDROID SPECIFIC STUFF.
BUT WE HAVE PEOPLE WRITING APPS
WITH 100 XAMARIN FORMS AND SHIPPING
TO THE STORE. 4. 0 IS COMING OUT
IN A COUPLE WEEKS. THE FIRST FEATURE
MAKES IT EASY TO GET STARTED STYLING
YOUR APPS AND DOING YOUR NAVIGATION
AND SEARCHING. IT'S CALLED SHELL.
SO IF YOU KNOW DAVID NOW, HE HAS
BEEN AT THE BOOTH THIS WEEK. THIS
IS HIS BABY. HE'S BEEN WORK ON IT
FOR A LONGTIME. AND SHELL LET'S
YOU SET YOUR TAB, FLY-OUT, BOTTOM
TABS, TOP TAB, IN A SINGLE FILE.
NO WEIRD CUST MYIZATION, NO FUNK
STUFF THAT HAPPENS IN ANDROID THAT
DOESN'T HAPPEN IN iOS. AND HELPS
WITH THE NAVIGATION SERVICE. ALL
THE NAVIGATION MAKES IT EASY TO
GO FROM PAGE TO PAGE AND GO BACK
WHEN THE USER HITS THE BACK BUTTON
AND SAVES. AND INTEGRATED SEARCH
HANDLER. AND THAT'S HELPFUL IF YOU
ARE DOING A DATA-HEAVY APP. THE
SECOND THING IS VISUAL. BUT WE'RE
GOING TO BUILD ON IN IT 4. 0. VISUAL
IS THE ABILITY TO SET A DESIGN SYSTEM
FOR YOUR APP. SO WHEN YOU GO AND
CREATE A NEW PAGE OR BUTTON OR A
NEW TEXT BOX, IT'S GOING TO LOOK
LIKE YOUR BRAND OR LOOK LIKE THE
SAME AS IT WOULD ON BOTH PLATFORMS.
XAMARIN WAS FOUNDED ON THE PRINCIPLE
THAT PEOPLE WANT APPS TO FEEL LIKE
THE PLATFORM THEY'RE ON. I HAVE
AN ANDROID PHONE BECAUSE I LIKE
HOW ANDROIDS WORK AND SOMEONE HAS
AN iPHONE BECAUSE THEY LIKE HOW
iPHONES WORK. BUT WE HAVE SEEN DESIGNERS
COME WITH ONE AND SAY GIVE ME THIS
ON BOTH PLATFORMS AND YOU DON'T
WANT THE NATIVE CONTROLS. SO WHAT
WE DID WAS BUNDLED VISUAL WITH MATERIAL
DESIGN FOR 3. 6. AND YOU CAN GO
IN AND JUST CHANGE EVERYTHING IN
YOUR APP TO GOOGLE'S MATERIAL DESIGN
LANGUAGE. DAVID GAVE A GREAT TALK
ABOUT THIS YESTERDAY. AND THERE'S
A LOT OF DOCUMENTATION ON IT ONLINE.
AND WE WILL TALK ABOUT IT MORE IN
THIS TALK LATER ON. THE FINAL THING
THAT'S COMING OUT AND A PREVIEW
WITH XAMARIN FORMS IS COLLECTION
VIEW. YOU MIGHT HAVE HEARD OF DO
ANDROID'S RECYCLER VIEW. IT'S VERY
SLOW. WHAT COLLECTION VIEW IS MORE
FLEXIBLE AND PERFORMANCE ALTERNATE
TO IT. SO WHAT WE'RE GOING TO DO
TODAY. >> JOHN CAME UP WITH A GREAT
APP IDEA. SO IT'S A TEXTING APP
FOR THE AVENGER, NO SPOILERS I PROMISE
IF HAVEN'T SEEN END GAME YET. BUT
WE GO FROM A BASIC XAMARIN FORMS
TEMPLATE AND BUILD SOME OF THE APP.
SO BASICALLY, YOU CAN HIT THE SNAP
BUTTON AND GETS RID OF HALF THE
LIST. AND WE HAVE A COLLECTION VIEW
WHICH I TALKED ABOUT. THIS IS THE
SHELL APP. SO ALL THIS BOTTOM TAB
AND EVERYTHING COMES FOR FREE. VERY
EASY TO CHANGE. AND THAT BUTTON
IS MATERIAL DESIGN. IT'S NOT THE
STANDARD ANDROID BUTTON YOU GET
WHEN BUILDING A NATIVE APP. SO GETTING
STARTED, IF YOU HAVE NEVER USED
XAMARIN FORMS BEFORE OR XAMARIN
IN GENERAL, INSTALL AS A VISUAL
WORKLOAD. CLICK THE BUTTON. WE REDUCED
THE INSTALL SIZE FROM SOMEWHERE
OVER 20 GIGS TO ABOUT SEVEN. WHICH
IS A HUGE IMPROVEMENT. BASICALLY
YOU GO IN, TYPE XAMARIN OR MOBILE
OR XAMARIN FORMS OR ANDROID AND
MOBILE APPS POPS UP. YOU GET A BUNCHING
OF TEMPLATES. SO DIFFERENT STYLES,
MASTER DETAIL IS YOUR FLY REASON
OUT TAB, YOUR TABBED OUT. BLANK
GIVES YOU NOTHING. JUST ONE PAGE
WITH NOTHING IN IT WHICH IS GREAT.
AND SHELL, WHICH IS WHAT WE WILL
BE USING TODAY. YOU ALSO HAVE THE
OPTION TO PICK THE PLATFORMS YOU
WANT TO TARGET AND INCLUDE ASP.
NET CORE WEB APIs WHICH WILL WIRE
EVERYTHING UP TO A API PROJECT FOR
YOU. AND JAMES WILL BE GIVING A
GOOD TALK ABOUT THAT TOMORROW AFTERNOON.
THREE TEMPLATES, THREE TARGET PLATFORMS
AND WE HAVE INCREASED INSTALLATION
TIME, SOLUTION CAV CREATION TIME
AND THE SOLUTION LOAD TIME. SO FASTER
THAN EVER TO GET STARTED. YOU HAVE
NO EXCUSES. AND WE HAVE THE NEW
SHELL TEMPLATE FOR 4. 0. SO THE
WAY A XAMARIN FORMS APP IS STRUCTURED
IS YOU HAVE A . NET STANDARD PROJECT
AND EVERYTHING EXCEPT FOR THE BLANK
FORMS APP, WE GIVE YOU THE VIEW
MODEL SETUP. SO YOU ARE WELCOME
TO USE ANY OTHER FRAMEWORK YOU HAVE
USED BEFORE IN WINDOWS. BUT WE WILL
GIVE YOU A BASIC ONE. THE APP SHELL
FILE IS WHERE ALL THE SHELL STUFF
HAPPENS SO. IT'S ALL IN ONE PLACE.
AND YOU STILL HAVE ACCESS TO THOSE
ANDROID AND iOS NATIVE PROJECTS
IF YOU NEED THEM. THE OUT OF THE
BOX SHELL APP IS VERY SIMILAR TO
THE APP WE'RE BUILDING SO I DID
CHEAT BECAUSE THE TEMPLATE IS SO
GOOD. AND YOU GET A LIST VIEW. YOU
CAN SWITCH TO DIFFERENT PAGES USING
THE TABS. AND GET THAT BASIC STRUCTURE
THAT WE SAW. SO ALL OF THIS DATA
IS THROUGH A MOCK DATA STORE THAT
COMES THROUGH A DATA INTERFACE.
BUILDING THIS APP IS REALLY EASY.
THIS IS THE MUCH NICER UI THAT JOHN
HAD GIVEN ME. I CAN'T DO THAT IN
20 MINUTES BUT WE WILL GET HALFWAY
THERE. THE MOCK DATA IS JUST GOING
TO BE THE CHATS HERE. JUST GOING
TO SWITCH FROM ITEM ONE TO CAPTAIN
AMERICA. SO FOR THOSE WHO ARE USING
XAMARIN FORMS AND LIST VIEW RIGHT
NOW, I'M GOING TO SHOW YOU HOW EASY
TO SWITCH THAT OUT FOR COLLECTION
VIEW. WE'RE GOING TO ADD A BUTTON,
MAKE IT MATERIAL. AND WE'RE GOING
TO TALK ABOUT HOW WE CAN OPTIMIZE
THE BUILD AND DEPLOY PIPELINE AND
10 MINUTES SO YOU WILL SEE HOW FAST
IT IS. THE FIRST THING IS, CHANGING
THE MOCK DATA IS AS EASY AS CHANGING
A STRING. THERE'S A FILE. MOCK DATA,
IN YOUR SERVICES FOLD WE ARE THE
NEW TEMPLATES. AND YOU CAN LITERALLY
CHANGE OUT FIRST ITEM FOR CAPTAIN
AMERICA. HIT SAVE. AND NEXT TIME
YOU RUN IT, THE CORRECT INFORMATION
IS GOING TO POP UP. THE OTHER THING
THAT'S REALLY EASY TO DO WITH THE
TEMPLATES IS WITH THE DATA STORE
INTERFACE FILE, WE HAVE, YOU KNOW,
FIVE OR SIX FUNCTION GET ITEM, GET
ITEM, SET ITEM, ALL THAT. SUPER
EASY TO WIRE THAT BACK UP WITH THE
DIFFERENT DATA INTERFACE TO WHATEVER
YOU HAVE RUNNING IN AZURE. YOUR
CORE WEB API PROJECT, ALL THAT STUFF.
THAT'S STEP ONE. TOLD YOU IT WAS
GOING TO BE QUICK. THE NEXT THING
IS COLLECTION VIEW WHICH IS MORE
COMPLICATED. SO COLLECTION VIEW
IS SIMPLE. SO YOU CAN SEE THIS,
YOU CAN DELETE, YOU DON'T NEED IT
ANYMORE. COLLECTION VIEW PULLS TO
REFRESH FOR YOU. GO AHEAD, YOU TAKE
THE VIEW CELL. SO CELLS AND XAMARIN
FORMS ARE JUST CONTAINERS OF OTHER
ITEMS. VERY EASY TO USE, BUT WE
DON'T NEED IT ANYMORE. COLLECTION
VIEW IS SMART ENOUGH TO LIVE WITHOUT
IT. SO WITH COLLECTION VIEW, YOU
CAN HAVE MULTIPLE OR SINGLE ITEMS
SELECTED. OR NONE. SO YOU REALLY
CONTROL WHAT THE USER IS ABLE TO
SCREW UP IN YOUR APP OR NOT. AND
THEN ALL YOU HAVE TO DO IS CHANGE
A COUPLE PROPERTIES BECAUSE THE
API IS SLIGHTLY DIFFERENT. AND THAT'S
IT. THAT'S ALL YOU HAVE TO DO TO
GET COLLECTION VIEW GOING. SO I
THINK THE VIDEO IS LIKE 40 SECONDS.
THAT'S ALL IT WILL TAKE YOU. NEXT
YOU HAVE TO ADD AND STYLE THE BUTTONS.
BEFORE I START THE VIDEO, LET'S
TALK ABOUT THE UI TOOLS WE HAVE
IN XAMARIN FORMS SO. THE FIRST ONE
RIGHT HERE IS THE XAMARIN FORMS
PREVIEWER. I KNOW THERE'S A LOVE/HATE
RELATIONSHIP WITH IT. AND THE IDEA
OF IT IS YOU CAN DO ANDROID AND
iOS PREVIEW RIGHT IN THE IE. YOU
DON'T HAVE TO HIT BUILD, WAIT TO
DEPLOY TO YOUR DEVICE. WE PUT A
LOT OF EFFORT INTO MAKING IT QUICK
AND REALLY SUPPORT A LOT OF CUSTOM
CONTROLS. SO NOW WE'VE GIVEN YOU
THE POWER TO TURN OFF CUSTOM CONTROLS
IF THEY BREAK THE PREVIEWER. AND
THE OTHER THING WE SHIPPED IN VISUAL
STUDIO 2019 IS THIS PANEL RIGHT
HERE. EXACTLY WHAT YOU EXPECT FROM
THE UWP DESIGNER. AND YOU CAN SCROLL
THROUGH AND GO AHEAD AND CHANGE
PROPERTIES VISUALLY. SO YOU DON'T
HAVE TO REMEMBER THEM OR GOOGLE
THE API DOCS WHEN YOU GET STUCK.
IT POPS UP IN THE PREVIEWER. CHANGES
COLOR. THIS IS PURPLE. TOTAL GUESSTIMATE.
CHANGE YOUR LAYOUT OPTIONS. SO,
YOU KNOW, XAMARIN FORM, YOU USE
HORIZONTAL OPTIONS AND STACK LAYOUTS
TO CHANGE WHERE IT'S POSITIONED
SO I JUST CHOSE END. IT DIDN'T WORK
FOR ME. SO SWITCHED TO END AND EXPAND.
SO I REALLY WRAPS THE TEXT NICELY.
I'M GOING TO CHANGE THE TEXT COLOR,
MAKE IT BRIGHTER. SO IT STANDS OUT
IN A NICE PURPOSE. AND I'M GOING
TO CHANGE THE MARGINS AS WELL. VERY
EASY. I'M JUST TABBING THROUGH AND
SCROLLING. AND THEN I'M GOING TO
ADD A CLICK HANDLER. THIS IS GOING
TO LINK TO WHAT I CALL THE ALGORITHM.
AND BECAUSE YOU HAVE ALL THE POWER
OF C# WITH XAMARIN FORM, YOU CAN
DO CLICK HANDLERS, YOU CAN DO WAIT
WITH THE DISPLAY ALERTS. SO THIS
IS THE SAME THING WHEN YOU HIT A
BUTTON AND POPS UP, NO, CAN'T DO
THAT, SORRY AND YOU CLOSE OUT. YOU
KNOW, THE SAME SYNTAX YOU'RE FAMILIAR
WITH. JUST C# UNDER THE HOOD. AND
I'M GOING TO GO AHEAD AND WIRE THAT
UP. SO THAT WILL BE THE SNAP. ALL
RIGHT. GOOD. SO THE ONE THING THAT
I ALSO TALKED ABOUT WAS MATERIAL
DESIGN. SO ALL YOU HAVE TO DO IS
ON YOUR PAGE, ADD VISUAL EQUALS
MATERIAL. AND YOU CAN DO THIS AT
THE APP LEVEL. SO IN SHELL, OR AT
THE APP LEVEL, YOU CAN DO THIS ON
THE ELEMENT. SO SAY YOU ONLY WANT
A PARTICULAR BUTTON TO BE MATERIAL.
SO YOU CAN SEE THAT THE ANIMATIONS
ARE DIFFERENT. THE BORDERS AND THERE'S
A LITTLE DROP SHADOW THAT'S NICE.
THAT'S ALL DIFFERENT. AND YOU CAN
SEE ON THE RIGHT HERE, THIS IS iOS
MATERIAL, AND ON THE RIGHT OF THOSE
TWO, THAT'S ANDROID MATERIAL, THE
SAME BUTTON. SO THE iOS DEFAULT
LINE HAS MUCH LESS PADDING AND BRIGHT
BLUE TEXT WHICH IS TERRIBLE IF YOU
DO BACKGROUND COLORS ON ANYTHING.
AND NOW LOOKS THE SAME ACROSS THE
TWO PLATFORM WHICH IS HUGE. SO THAT
IS ALL IT TOOK TO BUILD THIS UI
THAT WE TALKED ABOUT AT THE BEGINNING.
PRETTY SIMPLE. THE TEMPLATES ARE
VERY HELPFUL AND GIVE YOU A LOT
OF STUFF RIGHT OFF THE BAT. AND
YOU CAN SNAP AWAY HALF YOUR CHATS
JUST LIKE THAT. WHEN IT COMES TO
ACTUALLY BUILDING AND DEPLOYING
YOUR APP, WE PUT WORK INTO MAKING
WHAT WE CALL YOUR INTERDEV LOOP
AS FAST AS POSSIBLE. YOU MAKE A
CHANGE AND HIT RUN. WAIT TO BUILD,
WAIT TO DEPLOY, SEE THE CHANGE,
OH, I NEED TO TWEAK THAT AND THEN
YOU GO BACK INTO THE CODE AND YOU
GO THROUGH THE WHOLE THING AGAIN.
THAT IS THE INTERDEV LOOP. AND WE
STARTED WITH JUST HAMMERING AWAY
AT ANDROID BUILD AND DEPLOY TIMES.
THAT'S BEEN A PAIN POINT. AND WE
HAVE REDUCED THEM A BUNCH. JOHN
CAN TALK ABOUT IT FOREVER. HE PUT
A LOT OF WORK OVER THE LAST YEAR
OR SO. AND EVEN FASTER BUILD. AND
SMALLER APKs SO SMALLER AN ANDROID
APP SIZES WITH THE ANDROID AND HR
SHRINKER SO IF YOU'RE BIG IN THE
ANDROID WORLD, PROBABLY HEARD OF
THESE ALREADY. THERE'S A GREAT BLOG
POST ON THE XAMARIN BLOG FOR ALL
THE GOODIES THAT GO INTO THIS. THE
NEXT THING IS, WE'RE REALLY HAPPY
BECAUSE ANDROID EMULATES SUPPORT
HYPERV. SO YOU CAN MANAGE INSIDE
VISUAL STUDIO. YOU DON'T NEED ANDROID
STUDIO INSTALL. MANAGE YOUR SDKs,
YOUR TOOLS. YOU JUST CLICK ON THE
BUTTONS AND TELLS YOU WHAT YOU NEED
TO INSTALL TO GET EVERYTHING TO
WORK. SO WITH IT ENABLED EVEN ON
SERVICE BOOK, THE EMULATORS ARE
WAY FASTER. AND IF YOU DON'T HAVE
AN ANDROID DEVICE, IT'S QUICKER
AND DEPLOY. AND THE OTHER THING
DEVELOPERS LOVE AND NOT NEW FOR
2019 BUT I WANTED TO CALL IT OUT,
IF YOU HAVE A MAC THAT YOU SHARE
WITH, YOU KNOW, YOUR FAMILY MEMBERS
OR, YOU KNOW, YOU KEEP IN THE CLOSET
SOMEWHERE, YOU DON'T HAVE TO GIT
PUSH YOUR CODE UP AND GIT CODE DOWN
TO RUN ON iOS. IF YOU CONNECT TO
THE MAC OVER THE NETWORK WITH XAMARIN,
AND THIS IS ALL IN VISUAL STUDIO,
HIT PLAY ON WINDOWS. IT WILL CALL
THE MAC, BUILD YOUR APP FOR AND
YOU SPIN UP A SIMULATOR FOR iOS
ON THE WINDOWS MACHINE. SO IF YOUR
MAC IS AT HOME AND YOU VPN TO IT,
YOU CAN STILL BUILD AND DEPLOY AND
SEE YOUR iOS APP ON AN iOS SIMULATOR
ON WINDOW WHICH IS A HUGE DEAL.
VERY EXCITING. WE HAVE OTHER IMPROVEMENTS
THAT DIDN'T FIT INTO THE TALK. BUT
XAMARIN, WE HAVE DONE WORK WITH
THE ANDROID DESIGNER LIKE OUR DRAG
AND DROP WAY TO BUILD UIs. AMY OVER
HERE WORKS ON VISUAL STUDIO FOR
MAC. THEY PUT WORK IN THE C# EDITOR
FROM VISUAL STUDIO FOR WINDOWS.
NOW BROUGHT OVER TO MAC. SO ALL
THE CODE REFACTORING YOU EXPECT
WITH XAMARIN AND WITH, IS AP. NET.
AND WORKED ON STABILITY. IT'S REALLY
FUNK I CAN BECAUSE EVERYONE ELSE
IS ON THE CORPORATE NETWORK, IT
WORKS MORE RELIABLY NOW. AND THE
XAMARIN PREVIEWER WHICH I MENTIONED
EARLIER. LOTS OF RELIABILITY WORK
ON THAT AS WELL. SO WE'RE ALWAYS
LISTENING AND ACTIVE ON TWITTER.
WE'RE HERE AT BUILD. SO FEEL FREE
TO STOP BY AND EL US THE WHAT YOU
WANT TO SEE IN XAMARIN FORM, IN
VISUAL STUDIO. WE HAVE A COUPLE
MORE TALKS GOING ON THIS WEEK. SO
YOU MISSED TWO UNFORTUNATELY OR
MAYBE YOU GOT TO SEE THEM LIVE.
THEY'RE BOTH ONLINE. YOU CAN SEE
THE RECORDINGS OF THEM. THE VISUAL
ONE I MENTIONED, DAVID DID A GOOD
DEEP DIVE ON THAT YESTERDAY. RIGHT
NOW, AFTER THIS, I BELIEVE 6A OR
6B UPSTAIRS, THE FOUNDER OF XAMARIN
AND THE ORIGINAL CREATOR OF MONO
WAY BACK, THEY'RE TALKING ABOUT
THE FUTURE OF MOBILE DEV AND GOING
ON FOR ANOTHER 40 MINUTES SO POP
UP AFTER THIS AND HEAR THE END OF
THAT. JAMES IS ALSO INTERVIEWING
MIGUEL TONIGHT AT THE BUILD LIVE
STAGE IN THE BACK. SO THEY'LL BE
TALKING ABOUT ALL THINGS MOBILE
DEV WHICH IS COOL. AND THEN TOMORROW,
JAMES IS GOING TO DO A DEEP DIVE
ON THE ASP. NET CORE API PROJECT
YOU CAN ADD TO THE XAMARIN FORM
TEMPLATES. WE HAVE STICKERS AND
PENS. WE HAVE 50 MONKEYS GOING OUT
IN THE MORNING TOMORROW. SO IF YOU
WANT A XAMARIN MONKEY, YOU HAVE
TO COME BY EARLY. AND UP ON THE
SIDE HERE, A BUNCH OF LINKS. SO
XAMARIN. COM IS HOW YOU GO AND FIND
EVERYTHING ELSE. BASICALLY. BUT
YOU CAN GO INTO THE DOCS, GET STARTED
AND MICROSOFT LEARN WHICH WE'RE
EXCITED TO ANNOUNCE. MICROSOFT LEARN
NOW HAS A BUNCH OF XAMARIN COURSES.
SO FREE TO GET STARTED AND LEARN,
I BELIEVE THERE'S NINE, OVER NINE
HOUR OF CONTENT FOR XAMARIN FORMS
RIGHT NOW. SO YOU CAN DO AS LITTLE
OR AS MUCH AS YOU WANT. BUT TOTESLY
FREE. THE CODE FROM TODAY IS UP
ON THE GITHUB. SNAPCHAT. AND XAMARIN
FORMS ITSELF IS OPEN SOURCE AND
ALWAYS LOOKING FOR CONTRIBUTORS,
PEOPLE, FILE SHOWN THE REPO ALL
THE TIME AND VERY ACTIVITY IN THE
COMMUNITY. SO THANK YOU. [ APPLAUSE