Has anyone had success developing a substantial Android app in Scala? Is it a viable option yet? Are there any mature development environments? Given the state of the Scala Eclipse plug-in, it looks as if there is no good IDE support at all other than possibly IntelliJ Ultimate.
A few people have posted tutorials describing how to fudge Eclipse ADT to sort-of support Scala, and how to to slim the Scala libraries using Proguard, but beyond that there has been worryingly little discussion about this topic.
Update 2011-08-01: An interesting article on Android+Scala from the developers behind the Bump app: Bump Dev Blog - How we use Scala in Bump for Android
Introduction. The Android platform runs on Android Runtime which is a virtual machine based on JVM and, although not identical, it's very similar to it. As a consequence, it is possible to write Android apps in Scala, and in fact it's possible to do it in more than one way.
1 Answer. Android development is complicated because Java is used for Android development and it is verbose language. If there are more lines, it will be more complicated to understand, debug, or maintain code. Also, the IDE used in android development is usually the Android Studio.
The heart of developing Android apps with Scala is sbt-android. This plugin provides a number of sbt tasks that allow you to easily build and run your application from an sbt console. It even downloads and updates the Android SDK for you automatically.
There are many challenges which are faced by an Android developer because using Android applications is very easy but developing and designing them is quite tough. There is so much complexity involved in the development of Android applications.
I'm programming my Android application project in Scala.
If you are interested, you may take a look at this:
Ya, it is a Chinese website, but you may just take a look at screenshots to get some idea about that Scala can do everything with Android SDK just like Java.
The source code of these two android application is hosted on GitHub: http://github.com/brianhsu/Maidroid
Currently I don't use any IDE, because Vim / SBT is far more convenient and lightweight then any IDE I ever used.
And if you are using SBT to build your Scala Android application, you don't need worry about those progruard stuff, just install the sbt android-plugin and setup your project.
You may read this blog entry to learn how to build your Android application with SBT.
BTW, I use my own handcraft sbt plugin called sbt-android in my project, instead of android-plugin metioned in that blog post.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With