よしだメモ このページをアンテナに追加 RSSフィード

2011-10-14

[android][scala] ScalaAndroid アプリ作成する環境を作る

Ubuntu 11.10 リリースということで思い切ってクリーンインストールした結果、Scala + sbt で Android アプリを作る環境も作り直すことになりましたので、その時のメモを公開します

JDKインストール

$ sudo apt-get install openjdk-6-jdk

Scalaインストール

$ cd /tmp
$ wget http://www.scala-lang.org/downloads/distrib/files/scala-2.9.1.final.tgz
$ sudo tar -C /opt -zxvf scala-2.9.1.final.tgz
$ cd /opt
$ ln -s scala-2.9.1.final scala
$ echo 'export SCALA_HOME=/opt/scala' >> ~/.zshrc
$ echo 'export PATH=$PATH:$SCALA_HOME/bin' >> ~/.zshrc
$ source ~/.zshrc
$ scala -version
Scala code runner version 2.9.1.final -- Copyright 2002-2011, LAMP/EPFL

Android SDKインストール

$ cd /tmp
$ wget http://dl.google.com/android/android-sdk_r13-linux_x86.tgz
$ sudo tar -C /opt -zxvf android-sdk_r13-linux_x86.tgz
$ echo 'export ANDROID_SDK_HOME="/opt/android-sdk-linux_x86"' >> ~/.zshrc
$ echo 'export PATH="$PATH:$ANDROID_SDK_HOME/tools"' >> ~/.zshrc
$ source ~/.zshrc
$ sudo /opt/android-sdk-linux_x86/tools/android
[Available Packages] 
↓
[Android Repository] のすべてのSDK、[Third party Add-ons] のGoogle API をチェック
↓
[Install Selected]
↓
[All accept] 
↓
[Install] #だいぶ時間かかります
$ sudo mkdir -p /opt/android-sdk-linux_x86/.android/avd
$ sudo chmod 777 /opt/android-sdk-linux_x86/.android/avd
$ android avd
[Virtual devices]
↓
[New]でEmulatorを作成する。作成したEmulatorは[Start]で起動しておく

sbt のインストール

$ cd /usr/local/bin
$ sudo wget http://typesafe.artifactoryonline.com/typesafe/ivy-releases/org.scala-tools.sbt/sbt-launch/0.11.0/sbt-launch.jar
$ sudo vi /usr/local/bin/sbt
java -Xmx512M -jar `dirname $0`/sbt-launch.jar "$@" 
$ sudo chmod 755 /usr/local/bin/sbt
$ sbt about | grep This
[info] This is sbt 0.11.0

android-plugin のインストール

$  curl https://raw.github.com/n8han/conscript/master/setup.sh | sh
$ ~/bin/cs n8han/giter8
$ cd /tmp
$ git clone https://github.com/jberkel/android-plugin.git
$ cd android-plugin
$ sbt publish-local

sample アプリを作る

$ cd /tmp
$ ~/bin/g8 jberkel/android-app -b sbt-0_11
Template for Android apps in Scala

package [my.android.project]: com.android.test
name [My Android Project]: Test
main_activity [MainActivity]: #ブランクのままEnter
api_level [10]:                    #EmulatorのAPIレベルに合わせる
$ cd test
$ sbt
> android:package-debug
> android:start-emulator #Emulator 内で Hello world と表示するだけのアプリが立ち上がれば成功

Android アプリScala で作っててうれしい点というのはまず何といっても Scala が使える点でありEclipse を使わなくてもいい点です。

ただ、Android 端末はなんといってもモバイル端末でメモリCPUもそれほど潤沢ではないので速度的な問題で関数型言語恩恵はなかなか受けられません。Better Java として Scala を使っている感じです。

はいえ数値化されにくい「書いていて気持ちいい」という点でJavaを使うより生産性が高いように思います。この辺は僕がrubyプログラマだからというのもあるでしょうけど。

あと emacs の ensime なんかが意外に強力ですし一度やってみられてはいかがでしょうか?

ももんがーももんがー 2011/11/09 02:05 > Ubuntu 11.10 リリースということで思い切ってクリーンインストールした
どうせならインストール後に行ったセットアップをまとめて欲しいももんがー

ももんがーももんがー 2011/11/09 02:06 ももんがーだよー

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証

トラックバック - http://d.hatena.ne.jp/rudeboyjet/20111014/p1
リンク元