5 ms·
>one of the main
by albemuth 14y ago
>one of the main
- bornhuetter 14y agoiOS developers frequently cite differing screen sizes/resolutions as a problem with Android app development (an issue of fragmentation).
- huxley 14y agoThe term fragmentation gets thrown around but its worth unpacking the rationale, because it becomes too simplistic as a epithet. When iOS developers talk about fragmentation they generally mean that it is hard to predict the target size (buttons and other UI elements), the layout of the screen, and the PPI in terms of generating screen elements. The iPhone 5's new screen does add another row to the matrix of iOS combinations, but Apple worked to minimize the impact on developers since they only added vertical pixels without changing the PPI or the target size relative to the iPhone 4/4s. So if you target the iPhone 5, the cell for screen size and number of pixels is different, but the PPI is the same as the iPhone 4/4s (and double the older iPhones) and target size is the exact same as all iPhones before it. If you want to build a Universal App (for both iPad and iPhones) you now need to think of 2 target sizes (for iPads and iPhones), 4 PPI (2x iPhone and 2x iPad), and 5 screen resolutions (iPhone 5, iPhone 4/4s, older iPhones, iPad1/2, new iPad). Before the iPhone 5, it was 2 target sizes, 4 PPI, and 4 screen resolutions. Before the Retina iPad, it was 2 target sizes, 3 PPI, and 3 screen resolutions. Before the iPhone 4/4s, it was 2 target sizes, 2 PPI, and 2 screen resolutions. And so on. Effectively developers who want to add iPhone 5 support only need to consider the extra vertical space without worrying that buttons are suddenly going to get too small or the balance of items on the layout will get stretched or squashed or oddly distributed (if you do some sort of auto-layout). If the iPad Mini comes along, it's widely believed that the resolution will likely match the iPad 2 but the target sizes will be the size matching the iPhone and PPI matching older iPhones. Again, keeping things relatively predictable by only changing some factors. The matrix of combinations is still manageable even when adding two different devices, whereas if you tried to create a similar matrix of combinations for Android, it would be gigantic. An Android developer might reply, well once the combinations get complicated enough, you just accept that nothing will stay consistent and just target some commonalities. And that may be perfectly fine. Is the Apple approach worth it? Not worrying about the combination matrix gives Android phone makers far more flexibility in form factors than Apple has. Apple has effectively entered into a contract with iOS developers that changes will be limited and Android developers are already used to having little control over target size, screen ratio, or resolution. When you think about it, the whole thing is a fascinating controlled experiment in different approaches to hardware and software development philosophies.
- digitalengineer 14y agoThank you for the highly detailed comment!
- bornhuetter 14y ago> When you think about it, the whole thing is a fascinating controlled experiment in different approaches to hardware and software development philosophies. Indeed. I'm really curious to see how this pans out. The iOS approach is clearly easier for everyone in the short term, but it remains to be seen whether the Android's approach will give them a significant longer-term advantage. Pixel perfect fitting vs. Wide range of options, and ability for manufacturers to "mess with the formula"