Porting Phimpme Android to Kotlin
As we are going ahead in Phimpme Project we are now on verge to start our account manager which deals with sharing images to many platforms right from the app. The account manager will take care of logging In the user. Saving it's important credentials such access token, username etc as required by the API. Google IO ‘17 just passed, and we seen tons of new features, APIs and development tools. One of the them is official support for Kotlin in Android Studio. As stated by the developers at the conference that one best way to work on Kotlin is add today in your project. Because it is compatible with Java, we can work together on both languages in the same project. It is not mandatory for you to shift your entire code to Kotlin to build a project. So starting with the account manager we decided to bring this to our code. It helps in reducing the boilerplate code for example in Phimpme, I created a model for Realm database. open class AccountDatabase( @PrimaryKey var name: String = "", var username: String = "", var token: String = "" ) : RealmObject() That’s all I need to create a model class, no need to create getter and setter property This helps me to get details from getter methods and show on Account Manager Recycler View like below. Step 1 : Upgrade to Android Studio Preview 3.0 Android Studio Preview 3.0 comes up with all new features and Kotlin support. We all upgraded to that. It has a great Android Profiler with advance features for debugging and logcat is now moved separately. This step is not mandatory, you can work on older version of Android Studio as well. Step 2 : Configure Kotlin It’s easy in Android Studio Preview 3.0 to configure Kotlin. Go to Tools → Kotlin → Configure Kotlin in project. What in the configuration It added a classpath dependency in project level build.gradle file classpath"org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" Added Kotlin plugin apply plugin: 'kotlin-android' Added kotlin std lib in app level build.gradle compile "org.jetbrains.kotlin:kotlin-stdlib-jre7:$kotlin_version" Step 3: How to add Kotlin files Now your project is ready for Kotlin. In Android Studio Preview 3.0 you can create new Kotlin files from the file menu. Also by using Activity template you can select the source language as Java or Kotlin as per your preference. Step 4 : Work with Kotlin There are a lot new features in Kotlin to explore. Some of them are Null Safety : In Kotlin, the type system distinguishes between references that can hold null (nullable references) and those that can not (non-null references). For example, a regular variable of type String cannot hold null. var a: String = "abc" a = null // compilation error To allow nulls, we can declare a variable as nullable string, written String?: var b: String? = "abc" b = null // ok Val and Var are two keywords in Kotlin to declare variables. Val gives you read only variable which is same…
