Check out my new article about “How to setup your Android app to use Protobuf: with Kotlin flavor and ignoring Protobuf pros and cons!” @ medium.com:
Android
My first experiences with Kotlin: some quick notes that might comes handy for beginners
StandardCheckout my Article about “My first experiences with Kotlin some quick notes that might comes handy for beginners” @ medium.com:
My first experiences with Kotlin
Creating a quick fancy Android application prototype Using Framer
StandardCheckout my Article about “Creating a quick fancy Android application prototype Using Framer for Android prototyping” @ medium.com:
Creating a quick fancy Android application prototype
A useful memory debugger plugin for Android Studio
StandardCheckout my Article about “JetBrains JVM Debugger Memory View plugin: A useful memory debugger plugin for Android Studio” @ medium.com:
A useful memory debugger plugin for Android Studio
MVP — How to present different errors on View Layer using only one method?
StandardCheckout my Article about “How to present different errors on View Layer using only one method” @ medium.com:
MVP — How to present different errors on View Layer using only one method?
Yet another MVP article…
StandardCheckout my 5-part Article about MVP methodology in Android development @ medium.com:
Part 1: Lets get to know the project
Part 2: How Dagger helps with the project
Part 3: Calling APIs using Retrofit
Android Utils
StandardThis is a utils library for Android Applications containing useful methods.
AndroidUtils class help you to interact with different parts of android os without writing many codes and as simple as possible.
Github repo:
https://github.com/mirhoseini/android_utils
Grab via Maven:
<dependency> <groupId>com.mirhoseini.utils</groupId> <artifactId>utils</artifactId> <version>1.0.7</version> <type>pom</type> </dependency>
or Gradle:
compile 'com.mirhoseini.utils:utils:1.0.7'
How to setup CircleCI environment JAVA7_HOME, JAVA6_HOME for RetroLambda
StandardUsing retrolambda in Android application being built using circleci as continuous integration cause some issues:
> Building 10%When running gradle with java 8, you must set the path to the old jdk, either with property retrolambda.oldJdk or environment variable JAVA5_HOME/JAVA6_HOME/JAVA7_HOME
The problem is you have to configure environment variables for Java_Home, Java7_Home, Java6_Home and etc in circleci virtual machine.
this circle.yml file could help you in this regard:
# # Build configuration for Circle CI # general: artifacts: - /home/ubuntu/weather_app/app/build/outputs/apk/ - /usr/lib/jvm/ machine: environment: ANDROID_HOME: /usr/local/android-sdk-linux JAVA6_HOME: /usr/lib/jvm/java-6-openjdk-amd64 java: version: openjdk8 dependencies: override: - echo y | sudo apt-get update - echo y | sudo apt-get install libpango-1.0-0 - echo y | sudo apt-get install openjdk-6-jre - echo y | android update sdk --no-ui --all --filter tools,platform-tools,build-tools-23.0.3,android-23,extra-google-m2repository,extra-google-google_play_services,extra-android-support - ANDROID_HOME=/usr/local/android-sdk-linux ./gradlew dependencies test: override: - (./gradlew assemble): timeout: 360 - (./gradlew test): timeout: 360
How to add Vector image support to old Android versions using new AppCompat?
StandardFinally we had vector support for all Android versions,
- bye bye all different PNG size files in different drawable folders!
- bye bye FontAwesome!
- first of all add these dependencies to your module’s build.gradle:
dependencies { . . . compile 'com.android.support:appcompat-v7:23.3.0' compile 'com.android.support:support-vector-drawable:23.3.0'
- add this to your android defaultConfig tag in your module’s build.gradle:
android { . . . defaultConfig { . . . vectorDrawables.useSupportLibrary = true }
- replace all your ImageView with android.support.v7.widget.AppCompatImageView
and ImageButton with android.support.v7.widget.AppCompatImageButton in all your project’s xml layouts. -
replace all android:src attribute in all ImageView with app:srcCompat.
-
now import your vector image using New -> “Vector Asset” submenu by right clicking on your drawable folder…
That’s it!!!
Best practise for Logcat colours in Android Studio!
StandardI know that using solid black colour logcat in Android Studio is awful !!!
Here is my best practice colour codes that you can use for changing the face of you logcat in Android Studio to make it more useful. go to Android Studio Preferences and search for logcat and save as your own scheme:
Assert: 9C27B0
Debug: 2196F3
Error: F44336
Info: 4CAF50
Warning: FFC107
All colours are picked from material design colour pattern: https://www.google.com/design/spec/style/color.html