<?xml version="1.0"?>
<oembed><version>1.0</version><provider_name>Xamarin Blog</provider_name><provider_url>https://devblogs.microsoft.com/xamarin</provider_url><author_name>Pierce Boggan</author_name><author_url>https://devblogs.microsoft.com/xamarin/author/pierce/</author_url><title>Podcast: Previewing Xamarin.Forms 3.0 - Xamarin Blog</title><type>rich</type><width>600</width><height>338</height><html>&lt;blockquote class="wp-embedded-content" data-secret="Uh7USzOAZ6"&gt;&lt;a href="https://devblogs.microsoft.com/xamarin/podcast-previewing-xamarin-forms-3-0/"&gt;Podcast: Previewing Xamarin.Forms 3.0&lt;/a&gt;&lt;/blockquote&gt;&lt;iframe sandbox="allow-scripts" security="restricted" src="https://devblogs.microsoft.com/xamarin/podcast-previewing-xamarin-forms-3-0/embed/#?secret=Uh7USzOAZ6" width="600" height="338" title="&#x201C;Podcast: Previewing Xamarin.Forms 3.0&#x201D; &#x2014; Xamarin Blog" data-secret="Uh7USzOAZ6" frameborder="0" marginwidth="0" marginheight="0" scrolling="no" class="wp-embedded-content"&gt;&lt;/iframe&gt;&lt;script type="text/javascript"&gt;
/* &lt;![CDATA[ */
/*! This file is auto-generated */
!function(d,l){"use strict";l.querySelector&amp;&amp;d.addEventListener&amp;&amp;"undefined"!=typeof URL&amp;&amp;(d.wp=d.wp||{},d.wp.receiveEmbedMessage||(d.wp.receiveEmbedMessage=function(e){var t=e.data;if((t||t.secret||t.message||t.value)&amp;&amp;!/[^a-zA-Z0-9]/.test(t.secret)){for(var s,r,n,a=l.querySelectorAll('iframe[data-secret="'+t.secret+'"]'),o=l.querySelectorAll('blockquote[data-secret="'+t.secret+'"]'),c=new RegExp("^https?:$","i"),i=0;i&lt;o.length;i++)o[i].style.display="none";for(i=0;i&lt;a.length;i++)s=a[i],e.source===s.contentWindow&amp;&amp;(s.removeAttribute("style"),"height"===t.message?(1e3&lt;(r=parseInt(t.value,10))?r=1e3:~~r&lt;200&amp;&amp;(r=200),s.height=r):"link"===t.message&amp;&amp;(r=new URL(s.getAttribute("src")),n=new URL(t.value),c.test(n.protocol))&amp;&amp;n.host===r.host&amp;&amp;l.activeElement===s&amp;&amp;(d.top.location.href=t.value))}},d.addEventListener("message",d.wp.receiveEmbedMessage,!1),l.addEventListener("DOMContentLoaded",function(){for(var e,t,s=l.querySelectorAll("iframe.wp-embedded-content"),r=0;r&lt;s.length;r++)(t=(e=s[r]).getAttribute("data-secret"))||(t=Math.random().toString(36).substring(2,12),e.src+="#?secret="+t,e.setAttribute("data-secret",t)),e.contentWindow.postMessage({message:"ready",secret:t},"*")},!1)))}(window,document);
//# sourceURL=https://devblogs.microsoft.com/xamarin/wp-includes/js/wp-embed.min.js
/* ]]&gt; */
&lt;/script&gt;
</html><thumbnail_url>https://devblogs.microsoft.com/xamarin/wp-content/uploads/sites/44/2019/03/swimlane-xamarin-cross-platform-1.png</thumbnail_url><thumbnail_width>636</thumbnail_width><thumbnail_height>300</thumbnail_height><description>In this episode of the Xamarin Podcast, I&#x2019;m joined by Xamarin.Forms PM David Ortinau to walk through the early preview of Xamarin.Forms 3.0 announced at Microsoft Build 2017. Learn about new ways you can use Xamarin.Forms in your apps, speed and performance enhancements, and what new platforms are coming to Xamarin.Forms. Be sure to download [&hellip;]</description></oembed>
