Machine learning has quickly become an important bedrock for a variety of applications. Its mobile implementation, however, has been out of reach for many in the mobile app development community. The training and implementation processes for machine learning libraries require dedicated processing power, which is outside the purview of mobile devices. That processing power requirement and existing frameworks usually mean that a server-side component is necessary for even the smallest, machine learning-backed apps. Finally, training a machine learning model requires a good deal of knowledge that lies outside the normal developer spectrum.
Blog Posts Related to 'iOS'
Another WWDC keynote has come and gone. 2017 saw Apple focus on six particular areas, including announcements for the Apple TV, Apple Watch, Mac, iPad, the new HomePod, and of course, iOS 11. All of these impact the work we do at Savvy Apps, but the most significant of all is iOS 11.
Designing for apps is a fluid process. As time passes, system updates and new design conventions mean we have to master new techniques to ensure our apps remain in the forefront of the industry. As we evolve, so do our resources. Since releasing the Savvy Sketch iOS Wireframe Kit in June 2016, we've noticed a few opportunities to update the kit to meet designer expectations. These changes also come from our experiences using the wireframe kit on new projects.
How we think about design at Savvy Apps encouraged us to develop a new animation technique that mixes old-school view animations with Auto Layout. Our technique bypasses the restrictions placed on developers when they try to animate using Auto Layout. Most Auto Layout animation guides say basically the same thing: update constraints and animate. For more advanced animations though, just updating the constraints would be nearly impossible.
By relying only on constraints, you're restricting yourself on the types of animations you can achieve in your app. This article dives into how to get around the limitations of constraints. By using Auto Layout in new ways, we will show how to create more advanced animations.
Late last year, we decided to standardize on Sketch as our tool of choice for creating low-fidelity wireframes. Previously we were fans of Balsamiq, mostly because it had a number of pre-built app elements that could be dragged and dropped into a mockup. While we enjoyed the polish and precision of Sketch, not having a similar feature required us to spend valuable time on creating and recreating the same elements in our wireframes.
Last year we started working on a framework that was initially inspired by an animation in a podcasting app we crafted for The Cato Institute called CatoAudio. Our work with CatoAudio helped us realize that we wanted an animation framework that would allow us to create a simple, smooth animation that could easily be paused, resumed, and reversed. So far we've used this framework we call SAAnimationView on a number of projects. We decided to release it outside of Savvy Apps so other developers can take advantage of the way it makes it easy to create and iterate on animations.
Animations in iOS offer functional context to users and provide developers with a simple way to bring designs to life. While Apple provides two common methods for animations, `UIView.animateWithDuration:animations:` and CAAnimations, they either sacrifice flexibility or create a lot of boilerplate code. That’s why at Savvy Apps we advocate learning the components and concepts of animations. This approach allows developers the freedom to find new ways to do animations. In this post, we define the components of an animation, as well as provide tips for creating and experimenting with interactive animations.
Development doesn't stop once a v1.0 app is live. Your newly launched app will need to have regular app updates to thrive. Whether it’s a new feature or a bug fix, it will be important to continue to develop and test these updates prior to shipping them to app stores. This can be challenging, however, as you need to develop these updates and distribute them to testers without interrupting the experience of users who are interacting with the live app.
If all you've ever done in the past is iOS development, looking to build an app on Android might make you feel like you're entering the Wild West. Things seem more fragmented, more dangerous, more complex, more green. In 2016 though, Android isn't necessarily more difficult than iOS. The majority of your domain knowledge and expertise of building mobile apps on one platform can be applied to the other with ease. You may even find yourself enjoying some of Android's development components more than iOS. Here's a Savvy Apps guide to the top considerations for developers making the move from iOS to Android, including a list of how the main iOS components are laid out in Android.