Practices to avoid in Android Development
Change to Android Studio
We prefer Android Studio for the following reasons:
- Refreshed occasionally
- Gradle support
- Devoted Emulator
- Not managing Eclipse
- Clean format dependent on IntelliJ IDEA
- Android Studio 3.0 accompanies versatile symbol support for Android 8.0+
- New APK Analyzer
- Committed order line
- Simple association and joining with devoted collaborators with Firebase, Kotlin, and Google Cloud
- Profound code analysis
- Assemble apps at the same time for Mobile, Wear, TV, and so forth.
Incorporate resources for xxxhdpi screens
Numerous gadgets (and launcher apps) use launcher symbols from the xxxhdpi drawable organizer. In addition, the LG G3 and Nexus 6 utilize all assets from xxxhdpi envelopes. There will be numerous xxxhdpi gadgets later on. In this way, you should begin building up a propensity for including them. It makes it simple for portable mobile development
Spot launcher symbols in mipmap-organizers
When building separate apks for various densities, drawable envelopes for different densities get stripped. This will cause the symbols to appear hazy in gadgets that utilization launcher symbols of higher thickness. Since mipmap envelopes don’t get stripped, it’s in every case best to utilize them for including the launcher symbols which is vital for android development.
Utilize separate resources for debugging and discharge
Gradle permits designing to custom form types. As a matter of course, two form types, debug and discharge are given. We can give separate documents (source, assets, and resources) for each building sort by making their comparing organizers, neighboring the primary envelope, in the undertaking structure. These envelopes pursue a similar structure as fundamental and ought to contain just the abrogating documents. A case of its convenience is the point at which you have to have a design document for Google Analytics. Separate XML documents containing the Tracking ID can be made for both form types. During accumulation, the record comparing to the assemble will consequently be pulled.
Try not to include the entire Google Play Services library bundle
The customer library contains the interfaces to the individual Google services and enables you to acquire approval from clients to access these services with their accreditations. It additionally contains APIs that enable you to determine any issues at runtime, for example, a missing, incapacitated, or outdated Google Play services APK. The customer library has a light impression on the off chance that you use ProGuard as a component of your fabricate procedure, so it won’t adversely affect your app’s document size. The Google Play Services library is a bundle that contains all the local Google libraries for Android. Google additionally gives these libraries independently with the goal that we can abstain from including the entire Google Play Services bundle. They can be included build.gradle. A rundown of the accessible libraries can be found here.
Utilize an HTTP library like Volley, Retrofit
Libraries are significant distinct advantages in software development regardless of stage or stack. With libraries, we influence the endeavors of different engineers to perform activities/works quicker, increasingly compelling, and with lesser standard codes. In this article, we will take a gander at different classes in Android development and the normal libraries utilized in them. When fabricating a major application, our systems administration code can get enormous in view of standard code. Not exclusively does that make it hard to keep up yet it likewise makes debugging more earnestly? Libraries like Volley and Retrofit lessen a ton of standard code and we have fewer things to stress over.
Utilize the Parcelable class rather than Serializable when passing information in Intents/Bundles
In Android, on the off chance that we need to pass the items to exercises, at that point there is a need to actualize the Serializable or Parcelable interface. Parcelable interface sets aside more effort to actualize in contrast with Serializable in view of the code size. In any case, it performs quicker than Serializable and utilizes fewer assets. The serialization of an article that actualizes the Parcelable interface is a lot quicker than utilizing Java’s default serialization. A class the executes the Serializable interface is set apart as serializable and Java serializes it utilizing reflection (which makes it moderate). When utilizing the Parcelable interface, the entire article doesn’t get serialized consequently. Or maybe, we can specifically add information from the article to a Parcel utilizing which the item is later deserialized.