Friday, September 30, 2022
HomeiOS DevelopmentActual-World Android by Tutorials | raywenderlich.com

Actual-World Android by Tutorials | raywenderlich.com


Earlier than You Start

This part tells you a number of issues it’s essential to know earlier than you get began, comparable to what {hardware} and software program you’ll want, the place to search out the venture recordsdata for this e book and extra.

Part I: Growing Actual World Apps

On this part, you’ll discover ways to design and implement PetSave for example of knowledgeable, actual world app. You’ll discover ways to select the suitable architectural sample and how one can construction the code to make the app testable and maintainable.

To make your app simpler to vary, it’s apply to outline totally different layers with particular obligations. Specifically, you’ll discover ways to design and implement the area layer for the PerSave app. You’ll additionally see how one can entry the community effectively, by implementing the repository sample within the information layer.

On the finish of this part, you’ll have a transparent thought about how one can construction the code of your app.

The Android platform is greater than 10 years outdated and the variety of frameworks, libraries and instruments you need to use to develop your app are numerous. This e book covers the applied sciences and practices it’s essential to comply with in the true world if you wish to create a profitable Android app.


Constructing Android apps is not only a matter of writing code. You additionally want to make use of one of the best structure and construction your recordsdata in a method that makes it straightforward to use modifications. Retaining excessive cohesion and low coupling is simply one of many principal rules you may study on this chapter, the place you may begin engaged on the PetSave app.


The area layer is a set of entity objects and associated enterprise logic, designed to symbolize the enterprise mannequin of any app. Right here, you may study what a website layer is and how one can create one. You may see the variations between entity and worth objects together with some great benefits of utilizing the repository abstraction. Lastly, you may check the area logic of your app.


Each helpful app permits customers to entry info that is both saved regionally or fetched from the community. That is what a knowledge layer helps you do. On this chapter, you may study what the information layer is and what decisions you might have while you want one. You may be launched to the repository sample and discover ways to implement it from the design to the testing section.


Most apps entry information from the community, which introduces totally different sorts of issues, like latency and connectivity prices. To enhance efficiency and scale back prices, it is a good apply to retailer information regionally. Subsequently, it’s essential to implement the repository sample as a cache or easy native retailer. On this chapter, you may discover ways to implement and check the repository sample within the PetSave app utilizing Room and Hilt.


PetSave permits customers to search out animals near them based mostly on sure standards. There are a number of architectural design patterns you need to use to create this function. Right here, you may use MVVM and Unidirectional Information Stream to implement the “Animals Close to You” function. You may even have the chance to discover ways to use basic libraries like StateFlow, ViewModel and ViewBinding.


PetSave’s principal function is to allow you to seek for pets based mostly on sure standards. On this chapter, you may use a top-down method to implement the search, from defining the UI to fetching the information.


Part II: Modularizing Your App

As you add new options to your app, the code turns into extra complicated and tough to keep up. Because of this, it’s necessary to separate your app into totally different libraries to make your code each maintainable and reusable. This additionally improves the app’s construct time, which is an important metric to your CI.

On this part, you’ll discover ways to cut up your app into totally different modules. Specifically, you’ll discover ways to use the dynamic function possibility, which optimizes the scale of the code your customers need to obtain to make use of your app.

Modularization is without doubt one of the most difficult issues you face with large apps. Splitting the app into totally different modules allows you to scale back construct time whereas creating code you possibly can reuse in different apps. On this chapter, you may discover ways to create a function module for PetSave, specializing in the navigation.


This chapter covers the basic ideas of dynamic options. Dynamic options allow you to cut up the app into totally different modules to cut back the APK dimension and the obtain time and value.


Cellular apps, particularly video games and apps with a lot of graphic property, usually have massive APKs. Google’s dynamic function possibility allows you to hold your app smooth by splitting it into elements that customers can load if and once they really need them. On this chapter, you may discover ways to use dynamic options to put in PetSave extra effectively.


Part III: Enhancing Your UI

The consumer interface (UI) is without doubt one of the most necessary facets of any actual world app. How your consumer interacts with the options of your app is what decides if the app is profitable or not.

While you construct your app, you might have three choices for creating your UI. More often than not you’ll use what the Android SDK offers. In different instances, you customise the present elements. Your third possibility is to create your individual customized elements.

On this part, you’ll discover ways to improve the consumer interface of your app. You’ll create and customise animation utilizing the brand new Animation Editor, which comes with latest variations of Android Studio. You’ll additionally discover ways to grasp themes and types and to create a customized view.

After studying this part, you’ll have a extra interesting app and happier customers.

Animations are very important to creating your app each straightforward and nice to make use of. The Android platform offers a number of APIs to implement several types of animations. On this chapter, you may discover ways to use each physics-based and Lottie animation.


Implementing animation within the Android platform could be tough and time-consuming. It is crucial to make use of the suitable instrument. In latest releases of Android Studio, the Movement Editor allows you to implement several types of animations in a easy and declarative method. On this chapter, you may discover ways to use Movement Editor and how one can combine MotionLayout into your app.


The Android platform offers totally different normal elements you need to use to create the UI to your app. More often than not, they’re sufficient. Generally, as within the PetSave app, you want one thing customized. To create customized UI components, you utilize the customized view, which you may study all about on this chapter.


Android offers types and themes to customise the feel and appear of the UI elements of any app. They will let you fully change any side of the UI of your app in a declarative method by offering a easy XML file. On this chapter, you may see how one can customise a UI that makes use of normal elements and how one can use types and themes with a customized view.


Part IV: Securing Your App

Making your app safer is a side of improvement that’s usually ignored, however, on the identical time, is completely very important. Think about what would occur if any person would hack your code, stealing necessary information and even the usernames and passwords of your customers. That may be a catastrophe.

On this chapter, you’ll discover ways to deal with safety from totally different factors of view. You’ll discover ways to shield consumer information and how one can securely connect with a server. Lastly, you’ll discover ways to make hackers’ lives harder, by utilizing totally different strategies to guard your code and your information.

On this chapter, you may study finest practices for securing an Android app. You may see how one can cope with permissions and how one can forestall the commonest safety dangers.


Accessing information from native storage has safety implications, so Android offers totally different APIs and instruments to keep away from undesirable entry to your information. Right here, you may discover ways to make your app safer by encrypting and decrypting information and by utilizing biometrics to implement the consumer login.


On this chapter, you’ll study to safe the community connections of your app by utilizing HTTPS for community calls, trusting a reference to certificates pinning and verifying the integrity of transmitted information.


Any cell app could be susceptible to several types of assaults from hackers. It’s normal to examine hackers breaking apps and stealing necessary info. Due to this, avoiding code vulnerability and validating the enter from the consumer are crucial subjects. On this chapter, you may discover ways to use a few of the most necessary strategies to make your app tough to hack.


Part V: Sustaining Your App

While you’re growing your actual world app, you would possibly assume that publishing is your finish aim. However actually, your work isn’t over simply since you’ve launched your app. You continue to want to grasp in case your app is working correctly and what issues your customers are experiencing.

On this part, you’ll study all the things it’s essential to learn about sustaining and controlling your app after it’s printed and out there to customers. Specifically, you’ll discover ways to use Firebase for logging crashes, how one can allow or disable sure options and how one can use A/B checks to grasp what answer is one of the best to your customers.

Lastly, you’ll see how one can optimize your app’s dimension and how one can use Android Studio as a profiling instrument.

After studying this part, you’ll be prepared to make use of all of the out there instruments for enhancing your app’s high quality.

Firebase is a strong instrument to handle necessary facets of your app. Right here, you may see how one can use Crashlytics to observe crashes and errors. Then, you may see how one can use Distant Config to manage your app remotely. Lastly, you may discover ways to use Check Lab to check your app on a variety of gadgets.


While you construct an app, it is not sufficient to implement its options and run checks. You additionally have to spend time enhancing your app’s high quality by way of optimization. For instance, lowering the APK’s dimension is necessary to help outdated gadgets and customers with sluggish web connections. On this chapter, you may discover ways to optimize your app earlier than launch.


While you implement an app or attempt to repair a bug, you want some instruments to test what’s taking place. For instance, you expertise a crash and do not know why, otherwise you obtain invalid info from the community and have to test the information. This chapter accommodates all the things it’s essential to learn about debugging, from reminiscence to community, from battery utilization to the definition of the UI and rather more.


Generally, your app has issues and you do not know why. To unravel the issue, it’s essential to do some deep investigation, not simply into your code but in addition into code you imported from third-party libraries. In different instances, the issue is not the code, however a corrupted file or database. On this chapter, you may discover ways to look at the bytecode of your app and the recordsdata it makes use of to search out bugs and safety issues.


RELATED ARTICLES

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Most Popular