A couple of weeks ago, this article by Radosław Piekarz got some tracktion on /r/androiddev. While I am a fan of RxJava myself we use it extensively in our apps at VG.no, I feel this example was not the best use case for it. As others point out in the comment field, this can easily be solved without RxJava. Here is how:
Apps are evolving to be more than just functionality available behind an app icon on a users home screen. Custom keyboards, widgets, notifications, 3D touch, extensions and siri integration are among the many ways developers can now engage with users outside the confines of the traditional smartphone app on the homescreen.
On a cold Thursday in December, we held our annual Hack Day on the top floor of the VG building in Oslo. 30+ eager developers, designers and product people huddled together in front of the fireplace, to experiment, create and have fun with VG’s products and technology.
Surrounded by soda cans and bags of snacks, and entangled in wires of all kinds, we sat for 18 hours, churning out lines of magical code and golden pixels. Continue reading to see some of the things we did.
New functionality available in the next version of both Apple and Googles mobile operating systems (iOS9 and Android M) will have dramatic consequences for publishers trying to get users to use their apps instead of the mobile web browser. The next version of the iOS and Android operating systems will take deep linking to a new level.
Both Apple and Google have worked simultaneously on improving app linking, and essentially blurring the lines between content displayed in an app and content in a mobile website.
The Model-View-Presenter-pattern (MVP) has been the dominating trend lately when it comes the UI-layer architecture of Android applications. Frameworks like Ted Mosby, Nucleus and Mortar have all talked about Presenters to help you achieving a clean architecture of your app. They also (to a varying degree) help you with the infamous issues of device rotation and state persistence on the Android platform. This isn’t directly related to the concept of MVP, but the pattern helps you isolate the boiler plate code.
At VG we have been experimenting with offering location based advertisements in our VG app.
The goal is to deliver relevant advertisements to the the users at the right time and in the right place. Smartphones have provided the opportunity to serve more relevant information based on a users current physical location or locations they have previously visited.
I’ve observed an increase in architecture-focused Android posts lately in channels such as /r/androiddev and Android Weekly. That’s great, but frankly it’s about time. When I transitioned from Windows Phone development to Android a couple of years ago I felt it was difficult to find good examples on how to architect a solid app. It didn’t help that Google’s examples violated most best practices either. I kind of went with my own version of MVVM (or MVPVM) which I had with me from the .NET platform and it sort of worked. Reading
Hannes Dorfmann’s post on MVP and his Mosby framework, I realize I’m not the only one who’ve been struggling with getting the established patterns working with Android (he spent 3 years). The Android SDK is not exactly leading you into a good architecture out of the box. Maybe Fragments is partly to blame, and why Square Inc is advocating against it. (more…)
Aggregator apps are changing the way news is discovered, consumed and packaged. The popularity of aggregator apps vary largely from country to country. A quarter of the top 20 apps in the news category on both Googles US Playstore and Apples US Appstore are aggregator apps.
More and more publishers have begun to understand the need to have a presence wherever their readers or potential readers are consuming content. Some have chosen to work together with aggregator apps like Flipboard, Smartnews and Yahoo news digest so as to capitalize on this relatively new distribution channel.
Many publishers have developed mobile apps that deliver a better user experience than their mobile websites. Getting people to use your app instead of your mobile website can increase user engagement with your publication. Using different deep linking techniques to link to content within your app is one way of increasing traffic to your mobile apps and establishing app reading habits with your users.
In an ideal world there should be no difference between an ‘app link’ and a ‘web link’, links should simply work no matter what device or platform you are using. The device should know whether to open the link in an app or in a website depending on the users preference. It should be possible to link from one app to another app or from a website to an app without knowing if the user has the app installed. There is currently no standardised way to do this but there are a number of ways this can be implemented.
Google, Facebook and Apple are among the many companies that have developed initiatives to improve deep linking and tackle some of these challenges. Here are some of the others mobile.deep.linking, SPARQ, AppURL, mURL.cc, appsfire, URX, Facebook applinks, Cellogic, Branch, Tapstream.