{"id":2109,"date":"2021-12-30T12:00:58","date_gmt":"2021-12-30T20:00:58","guid":{"rendered":"https:\/\/devblogs.microsoft.com\/surface-duo\/?p=2109"},"modified":"2021-12-23T11:14:00","modified_gmt":"2021-12-23T19:14:00","slug":"2021-year-in-review","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/surface-duo\/2021-year-in-review\/","title":{"rendered":"2021 dual-screen year in review"},"content":{"rendered":"<p>\n  Hello Android developers!\n<\/p>\n<p>\n  2021 was a big year for dual-screen devices with the release of <a href=\"https:\/\/www.microsoft.com\/en-us\/d\/surface-duo-2\/9408KGXP4XJL\">Microsoft Surface Duo 2<\/a>. It has also been a busy year for developers with Jetpack Window Manager \u2013 Google\u2019s common API for foldable device info \u2013 graduating from alpha to beta and then release candidate, the SlidingPaneLayout control was enhanced for foldables, and we also expanded our platform support to Jetpack Compose and Flutter.\n<\/p>\n<p>\n  With the year quickly coming to a close, this week we\u2019re going to revisit some of the most popular content from the Surface Duo developer blog.\n<\/p>\n<h2>Popular blog posts<\/h2>\n<p>\n  Throughout 2021 we have shared samples and updates to help enhance your apps for dual-screen and foldable devices. Here are some of the more popular posts worth re-reading:\n<\/p>\n<table>\n<tr>\n<td>\n<p><strong>Kotlin and Java<\/strong>\n<\/p>\n<\/td>\n<td>\n<p>\n  22<sup>nd<\/sup> April \u2013 <a href=\"https:\/\/devblogs.microsoft.com\/surface-duo\/sample-code-quality-continuous-integration-delivery\/\">CI\/CD code quality<\/a>\n<\/p>\n<p>\n  13<sup>th<\/sup> May \u2013 <a href=\"https:\/\/devblogs.microsoft.com\/surface-duo\/foldable-slidingpanelayout-preview\/\">Foldable SlidingPaneLayout<\/a>\n<\/p>\n<p>\n  15<sup>th<\/sup> July \u2013 <a href=\"https:\/\/devblogs.microsoft.com\/surface-duo\/jetpack-compose-twopanelayout-preview\/\">Jetpack Compose TwoPaneLayout<\/a>\n<\/p>\n<p>\n  12<sup>th<\/sup> August \u2013 <a href=\"https:\/\/devblogs.microsoft.com\/surface-duo\/dual-screen-navigation-rail\/\">Navigation Rail<\/a>\n<\/p>\n<p>\n  7<sup>th<\/sup> October \u2013 <a href=\"https:\/\/devblogs.microsoft.com\/surface-duo\/pen-ink-sdk-sample\/\">Updated Pen SDK<\/a>\n<\/p>\n<p>\n  4<sup>th<\/sup> November \u2013 <a href=\"https:\/\/devblogs.microsoft.com\/surface-duo\/jetpack-compose-navigation-rail\/\">Jetpack Compose Navigation Rail<\/a>\n<\/p>\n<p>\n  16<sup>th<\/sup> December \u2013 <a href=\"https:\/\/devblogs.microsoft.com\/surface-duo\/dual-screen-reference-app\/\">Dual Screen Experience app on Google Play<\/a>\n<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p><strong>Web<\/strong>\n<\/p>\n<\/td>\n<td>\n<p>\n  21<sup>st<\/sup> January \u2013 <a href=\"https:\/\/devblogs.microsoft.com\/surface-duo\/dual-screen-react-web\/\">Dual-screen ReactJS<\/a>\n<\/p>\n<p>\n  1<sup>st<\/sup> April \u2013 <a href=\"https:\/\/devblogs.microsoft.com\/surface-duo\/dual-screen-web-angular\/\">Dual-screen Angular<\/a>\n<\/p>\n<p>\n  15<sup>th<\/sup> April \u2013 <a href=\"https:\/\/devblogs.microsoft.com\/surface-duo\/dual-screen-pwa\/\">Build dual-screen PWAs<\/a>\n<\/p>\n<p>\n  24<sup>th<\/sup> November \u2013 <a href=\"https:\/\/devblogs.microsoft.com\/surface-duo\/foldable-css-javascript-edge-96\/\">Foldable CSS &amp; JavaScript update<\/a>\n<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p><strong>Flutter<\/strong>\n<\/p>\n<\/td>\n<td>\n<p>\n  3<sup>rd<\/sup> March \u2013 <a href=\"https:\/\/devblogs.microsoft.com\/surface-duo\/flutter-dual-screen-foldable\/\">Flutter Engage<\/a>\n<\/p>\n<p>\n  3<sup>rd<\/sup> June \u2013 <a href=\"https:\/\/devblogs.microsoft.com\/surface-duo\/flutter-foldable-hinge-angle\/\">Hinge angle support<\/a>\n<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p><strong>Xamarin<\/strong>\n<\/p>\n<\/td>\n<td>\n<p>\n  6<sup>th<\/sup> May \u2013 <a href=\"https:\/\/devblogs.microsoft.com\/surface-duo\/dual-screen-xamarin-forms-animation\/\">Beautiful Xamarin.Forms apps<\/a>\n<\/p>\n<p>\n  17<sup>th<\/sup> June \u2013 <a href=\"https:\/\/devblogs.microsoft.com\/surface-duo\/xamarin-jetpack-window-manager-preview\/\">Jetpack Window Manager support<\/a>\n<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p><strong>Unity<\/strong>\n<\/p>\n<\/td>\n<td>\n<p>\n  9<sup>th<\/sup> September \u2013 <a href=\"https:\/\/devblogs.microsoft.com\/surface-duo\/unity-jetpack-window-manager-beta\/\">Jetpack Window Manager support<\/a>\n<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p><strong>Uno<\/strong>\n<\/p>\n<\/td>\n<td>\n<p>\n  2<sup>nd<\/sup> December \u2013 <a href=\"https:\/\/devblogs.microsoft.com\/surface-duo\/uno-platform-android-foldable\/\">UnoConf and Jetpack Window Manager support<\/a>\n<\/p>\n<\/td>\n<\/tr>\n<\/table>\n<p>\n  We also shared a case study from the <a href=\"https:\/\/devblogs.microsoft.com\/surface-duo\/outlook-dual-screen\/\">Outlook team<\/a>.\n<\/p>\n<h2>Surface Duo Emulator<\/h2>\n<p>\n  The Surface Duo Android emulator was updated for Surface Duo 2 and Android 11, and the team improved support for <a href=\"https:\/\/devblogs.microsoft.com\/surface-duo\/android-emulator-pen-support\/\">pen<\/a> and <a href=\"https:\/\/devblogs.microsoft.com\/surface-duo\/android-emulator-multi-touch-support\/\">multitouch<\/a> interactions in QEMU. The download and installation instructions for the emulator are in the <a href=\"https:\/\/docs.microsoft.com\/dual-screen\/android\/emulator\/\">documentation<\/a>.\n<\/p>\n<h2>User experience<\/h2>\n<p>\n  We introduced the Design Kit at the start of the year, and progressively expanded it with new guidance and updates for Surface Duo 2.\n<\/p>\n<table>\n<tr>\n<td>\n<p><strong>Design Kit<\/strong>\n<\/p>\n<\/td>\n<td>\n<p>\n  7<sup>th<\/sup> January \u2013 <a href=\"https:\/\/devblogs.microsoft.com\/surface-duo\/figma-design-kit-preview\/\">Design Kit preview 0.1<\/a> \n<\/p>\n<p>\n  8<sup>th<\/sup> April \u2013 <a href=\"https:\/\/devblogs.microsoft.com\/surface-duo\/design-kit-docs\/\">Localized design guidance<\/a> \n<\/p>\n<p>\n  10<sup>th<\/sup> June \u2013 <a href=\"https:\/\/devblogs.microsoft.com\/surface-duo\/design-kit-pen-update\/\">Pen, video, and other updates<\/a> \n<\/p>\n<p>\n  11<sup>th<\/sup> November \u2013 <a href=\"https:\/\/devblogs.microsoft.com\/surface-duo\/design-kit-2-1\/\">Design Kit 2.1<\/a>\n<\/p>\n<\/td>\n<\/tr>\n<\/table>\n<p>\n  Visit the <a href=\"https:\/\/aka.ms\/SurfaceDuoDesign\">Design Kit<\/a> and <a href=\"https:\/\/docs.microsoft.com\/en-us\/dual-screen\/design\/kit\">user experience docs<\/a> for the latest updates.\n<\/p>\n<h2>Resources and feedback<\/h2>\n<p>\n  We\u2019d love to hear what opportunities you see for dual-screen apps in the year ahead. Please reach to out to the team using our\u00a0<a href=\"http:\/\/aka.ms\/SurfaceDuoSDK-Feedback\" target=\"_blank\" rel=\"noopener\">feedback forum<\/a>\u00a0or message us on Twitter <a href=\"https:\/\/twitter.com\/surfaceduodev\">@surfaceduodev<\/a>.\n<\/p>\n<p>\n  We look forward to working with you to enhance your apps for dual-screen devices in 2022. Have a happy and safe new year \ud83c\udf89<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Hello Android developers! 2021 was a big year for dual-screen devices with the release of Microsoft Surface Duo 2. It has also been a busy year for developers with Jetpack Window Manager \u2013 Google\u2019s common API for foldable device info \u2013 graduating from alpha to beta and then release candidate, the SlidingPaneLayout control was enhanced [&hellip;]<\/p>\n","protected":false},"author":18491,"featured_media":67,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1],"tags":[31,706,46],"class_list":["post-2109","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-surface-duo-sdk","tag-dual-screen-development","tag-jetpack-window-manager","tag-surface-duo"],"acf":[],"blog_post_summary":"<p>Hello Android developers! 2021 was a big year for dual-screen devices with the release of Microsoft Surface Duo 2. It has also been a busy year for developers with Jetpack Window Manager \u2013 Google\u2019s common API for foldable device info \u2013 graduating from alpha to beta and then release candidate, the SlidingPaneLayout control was enhanced [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/surface-duo\/wp-json\/wp\/v2\/posts\/2109","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/surface-duo\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/surface-duo\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/surface-duo\/wp-json\/wp\/v2\/users\/18491"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/surface-duo\/wp-json\/wp\/v2\/comments?post=2109"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/surface-duo\/wp-json\/wp\/v2\/posts\/2109\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/surface-duo\/wp-json\/wp\/v2\/media\/67"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/surface-duo\/wp-json\/wp\/v2\/media?parent=2109"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/surface-duo\/wp-json\/wp\/v2\/categories?post=2109"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/surface-duo\/wp-json\/wp\/v2\/tags?post=2109"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}