{"id":423,"date":"2012-11-03T21:28:44","date_gmt":"2012-11-03T20:28:44","guid":{"rendered":"http:\/\/blog.ansuz.nl\/?p=423"},"modified":"2012-11-03T21:30:02","modified_gmt":"2012-11-03T20:30:02","slug":"device-fragmentation-by-robin-puthli","status":"publish","type":"post","link":"http:\/\/blog.ansuz.nl\/index.php\/2012\/11\/03\/device-fragmentation-by-robin-puthli\/","title":{"rendered":"Device Fragmentation by Robin Puthli"},"content":{"rendered":"<p>Notes from Robin Puthli\u2019s talk about Device Fragmentation\u00a0among Android devices on the 1st day of DroidCon UK 2012.<\/p>\n<p>Device fragmentation starts to become a big part of Android development as there are more and more Android devices available. As a result there are a lot of\u00a0different resolutions and screen sizes that need to be taken into account. <a href=\"http:\/\/opensignal.com\" target=\"_blank\">OpenSignal.com<\/a> has a very interesting <a href=\"http:\/\/opensignal.com\/reports\/fragmentation.php\" target=\"_blank\">report<\/a>\u00a0on their blog that illustrates this fragmentation.<\/p>\n<p>Luckily (device) fragmentation is a very old problem. It had to be solved on operation systems (Window, Mac, Linux, etc), browsers (Chrome, FireFox, Internet Explorer, etc), Java (ME, SE, FX, etc) and more before.<\/p>\n<p>There are roughly nine strategies you can pick from to deal with device fragmentation.<br \/>\n<strong>Multi-manual<\/strong>: Phone vs tablet, writing separate code for each.<br \/>\n<strong>Derive multi<\/strong>: <a href=\"http:\/\/qt.digia.com\/\" target=\"_blank\">QT<\/a> or <a href=\"http:\/\/www.enough.de\/products\/j2me-polish\/\" target=\"_blank\">J2ME Polish<\/a>, <a href=\"http:\/\/xamarin.com\/monotouch\" target=\"_blank\">Mono Touch<\/a>, writing pseudo code and then letting the framework generate the rest.<br \/>\n<strong>One (size) fits all:<\/strong> HTML5, <a href=\"http:\/\/phonegap.com\/\" target=\"_blank\">PhoneGap<\/a>. This approach is based on coding for the lowest common denominator.<strong><br \/>\nSingle adapt<\/strong>: Writing adaptive layouts, using 9-patches, fragments.<\/p>\n<blockquote><p>\u201cThere is no silver bullet. You have to pick and mix [from the available solutions].\u201d<\/p><\/blockquote>\n<p>The full presentation can be found at <a href=\"http:\/\/blogmobile.itude.com\/2012\/10\/25\/droidcon-uk-presentation-on-device-fragmentation\/\" target=\"_blank\">Itude Mobile&#8217;s blog<\/a>.<\/p>\n<!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons generic via filter on the_content -->","protected":false},"excerpt":{"rendered":"<p>Notes from Robin Puthli\u2019s talk about Device Fragmentation\u00a0among Android devices on the 1st day of DroidCon UK 2012. Device fragmentation starts to become a big part of Android development as there are more and more Android devices available. As a &hellip; <a href=\"http:\/\/blog.ansuz.nl\/index.php\/2012\/11\/03\/device-fragmentation-by-robin-puthli\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><!-- AddThis Advanced Settings generic via filter on get_the_excerpt --><!-- AddThis Share Buttons generic via filter on get_the_excerpt --><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[112],"tags":[114,113,115],"class_list":["post-423","post","type-post","status-publish","format-standard","hentry","category-android","tag-droidcon","tag-droidconuk","tag-uk"],"_links":{"self":[{"href":"http:\/\/blog.ansuz.nl\/index.php\/wp-json\/wp\/v2\/posts\/423","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/blog.ansuz.nl\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/blog.ansuz.nl\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/blog.ansuz.nl\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/blog.ansuz.nl\/index.php\/wp-json\/wp\/v2\/comments?post=423"}],"version-history":[{"count":3,"href":"http:\/\/blog.ansuz.nl\/index.php\/wp-json\/wp\/v2\/posts\/423\/revisions"}],"predecessor-version":[{"id":427,"href":"http:\/\/blog.ansuz.nl\/index.php\/wp-json\/wp\/v2\/posts\/423\/revisions\/427"}],"wp:attachment":[{"href":"http:\/\/blog.ansuz.nl\/index.php\/wp-json\/wp\/v2\/media?parent=423"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/blog.ansuz.nl\/index.php\/wp-json\/wp\/v2\/categories?post=423"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/blog.ansuz.nl\/index.php\/wp-json\/wp\/v2\/tags?post=423"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}