2chでのステマは効果がありそう

MorningBomb(モーニングボム)というスマホ用の目覚ましアプリを開発しています。1か月に1度くらいしか押されない公式サイトの「いいね!」ボタンが、昨日だけで数十回も押されたので、めったに開かないアクセス解析のページを開いてみて驚きました。

この1か月で1日のアクセス数が平均10くらいの公式サイトが、06/02(土)だけで23,046にもなっていました。

参照元は、2chの人気まとめサイトハムスター速報でした。ハムスター速報が13,113件、その新着記事サイトが6,074件、スレッドのURLをブラウザにコピペして開いたと思われる直接参照が3,270件です。

比較のため、大手ニュースサイトのGIGAZINEに掲載されたときは掲載された当日で632件でした。GIGAZINEの記事は使い方がとても詳しく書かれていて、Androidマーケットへの直接リンクも貼られていたので公式サイトを見る必要がなかったのかもしれませんが、2chはケタ違いです。

こうなると、よっぽど祭りにでもなったのかと思ったのですが、MorningBombが言及されているレスは、たったひとつだけ! 朝確実に一発で目が覚める方法

もちろん、この投稿をしたのは僕ではないのですが、人気スレにURLを貼り付けるだけでこんなにアクセス数が稼げるなら、うまく使ってみたいものだなと思いました。

参考:MorningBombは、家を離れるまで解除できないアラームアプリです(音は止められます)。制限時間内に家から離れられないと、Twitterやショートメッセージで反省文が送信されます。アラームが鳴った後は、アンインストールできず、電源を切っても反省文が送信されます。ただ、この仕組みは厳しすぎたため、最近はMorning+(モーニングプラス)というアプリの開発を行なっています。

LocalNotificationのメモ

iOSのLocalNotificationで調べたことをメモしておく。

通知の方法

1. [閉じる] [アプリを起動] のようなボタンが付いたダイアログを表示する方法

[閉じる] [アプリを起動] のようなボタンが付いたダイアログを表示するには、iOSの設定 > 通知画面からアプリケーションを選択して、「通知のスタイル」を「ダイアログ」にする。アプリケーションごとの設定でないことに注意。サンプルアプリのデフォルトでは「バナー」になった。アプリのデフォルトをダイアログ形式にすることができるかは未調査。

2. [アプリを起動]のようなアクションボタンを付ける方法

通知のスタイルをダイアログにして、UILocalNotification.alertAction プロパティを設定する。

できないこと

1. Cancelボタンが押されたときのイベントを取得することはできない

 can we get close event of local notification or can we get any midnight date change event

2. 通知ダイアログがiPhoneのスリープボタン(電源ボタン)で閉じられたときのイベントを取得することもできない

 アプリケーション本体がapplicationDidEnterBackgroundイベントで、すでにバックグラウンドに入っているときは、イベントは取りようにない。

LocalNotificationのサンプルアプリ

 村上幸雄さんのブログのサンプルアプリが、必要最低限でわかりやすかった。リンクのGitHubからダウンロードできる。
 Cocoa練習帳 iOS Local Notification

PHPFogをセットアップして、チームでソースコードを共有する(Mac編)

PHPFogを立ち上げてみたのでメモしておく。

PHP Fogでのセットアップ方法

公式サイト通りにやれば簡単
https://phpfog.com/apps/34421#/source_code

サーバーリポジトリを共有する方法

1.SSHの公開鍵をサーバーに登録する
  1. https://phpfog.com/account で、[SSH Keys]をクリック
  2. [+Add another SSH key]をクリックしてフォームを表示
  3. Nicknameにニックネーム、SSH Public Keyに、~/.ssh/id_rsa.pub の内容をコピペ
  4. [Save SSH Key]をクリックして保存
2.Gitでクローンする

Gitのリポジトリ名は、アカウントページ(https://phpfog.com/account )でShared Cloud をクリック、アプリアイコンをクリック、左側のSource Coceメニューをクリックすると表示される。

$ cd ~/workspace
$ git clone git@git01.phpfog.com:yourappname.phpfogapp.com
3.ファイルを編集してPUSHする

あとは、チームメンバーが普通にファイルを編集、コミットして、git pushするだけでサーバーが更新される。

$ git push origin master
(おまけ)DBにアクセスする

アカウントを持った本人以外でDBにアクセスするには、以下のようにする。

  1. アカウントページ(https://phpfog.com/account )でShared Cloud をクリック、アプリアイコンをクリック、左側のDatabaseメニューをクリックする
  2. Launch phpMyAdminボタンをクリックすると新しいページが開くので、そのURLとユーザー名、パスワードをメンバーで共有する

Android 2.XのアプリをAndroid 3.Xや4.0でも動くようにするときの注意点(オプションメニュー)

Android 3.Xや4.0の端末にはオプションメニューを表示するためのハードキーがない。代わりにAction Barというメニュー用の新しいコンポーネントを画面上に表示させることが推奨されている。Creating an Options Menu

しかし、Action Barは場所をとるし、Action Barに載せるほど強調したくないメニューがあったため、これまでと同じようにメニューボタンが押されたらオプションメニューを表示させる方法を調べた。

一番ラクそうだったのが、戻るボタン、HOMEボタン、タスクボタン(アプリ切替ボタン)の横に、ソフトキーでメニューボタンを表示させる方法。といっても、これはActivityにオプションメニューがあれば自動的に表示される。最大の注意点は、AndroidManifest.xmlのtargetSdkVersionが、11(Android 3.0)より小さい数字になっていること。SDKのバージョンを上げるからって張り切って15(Android 4.0.3)とかにするとオプションメニューが表示されない。ただし、この方法だとSDKのバージョンを上げることはできない。


のメニューボタン。


でメニューを開いたとき。


ではメニューボタンが出ない。

ちなみに、できればSDKを使いたいなと思い、android:targetSdkVersionを15にして、オプションメニューっぽいボタンを自分で作って、以下のようにActivity.openOptionsMenuメソッドを呼んでみたが、メニューが画面下部にしか表示されないので諦めた。

mPopupMenuButton.setOnClickListener(new Button.OnClickListener() {
    public void onClick(View v) {
        openOptionsMenu();     // プログラム的にオプションメニューを開く
    }
});


上部の自分で作った画像ボタンをタップして、Activity.openOptionMenu()を呼び出すようにしても、メニューは画面下部にしか表示されない。

あとはリフレクションを使ってSDKバージョン11以降のPopupMenuを使うことも試したが、MenuItemが選択されたことを判別するためのリスナーとして匿名クラスPopupMenu.OnMenuItemClickListenerをインスタンス化するあたりで複雑になりすぎて挫折。

デバッグ用のキーの期限が切れたためGoogle Mapが表示されないときの対処法(Android)

デバッグ用のGoogle Maps APIのキーを発行してから1年が過ぎると、有効期間が切れるようだ。
デバッグ実行しようとすると、eclipseのコンソールにログに以下のエラーメッセージが出て地図が表示されない。

Description Resource Path Location TypeError generating final archive: Debug Certificate expired on 12/03/13 16:30

以下の手順で証明書を再発行する。

(1) keytoolを使って証明書のフィンガープリントを生成する

$ keytool -list -alias androiddebugkey -keystore <debug.keystoreの場所> -storepass android -keypass android
 androiddebugkey, 2012/03/13, PrivateKeyEntry,
 ?&#1558;????&#771;t?B???K?[?v?????g (MD5): 87:53:EF:2D:14:D6:D7:B4:4E:41:C1:E2:FD:E9:03:B4

Mac OS Lionではコンソールの文字が化けたが、動作には影響なかった。

debug.keystoreの場所は、Mac OSの場合は「~/.android/debug.keystore」がデフォルト。Windowsでは以下の通り。

(2) Googleのページで証明書のフィンガープリントを入力してキーを発行する

次のURLにアクセスして先ほどのフィンガープリントを入力すれば、Android Maps APIのキーが表示される。
http://code.google. com/android/maps-api-signup.html

(3) これまで使っていたキーを置き換える

XMLファイルなどに書かれているキーを置き換える。

Mac OS X LionにJDK、eclipseをインストールする

Mac OS X LionにJDKeclipseをインストールしたときのメモ。JDKをインストールしてから、eclipseをインストールする。

1. JDKをインストールする

(1) AppleのDevelopersサイトにアクセス

Downloads for Apple Developersで、Apple IDとパスワードを入力する。Apple IDを持っていない場合は、「Join now」で新規登録してから再度アクセスする。

(2) Java for Mac OS X 10.7 Update 1 Developer Packageをダウンロード

Downloads for Apple Developersのページで、画面左の検索ウィンドウで「Java」と入力して検索実行。Java for Mac OS X 10.7 Update 1 Developer Packageを選択する。そして、.dmgをクリックしてダウンロードする。

(3) インストール

ダウンロードした.dmgファイルをクリックしてマウント後、.pkgファイルをクリックしてインストール。

(4) 環境変数を設定する

ホームディレクトリの.bash_profileを編集する。なければ新規作成する。

$ cd ~/ # ホームディレクトリを開く
$ ls -a # 隠しファイルも含めてすべてのファイルを表示する
.			.bash_history		Movies
..			Desktop			Music
.CFUserTextEncoding	Documents		Pictures
.DS_Store		Downloads		Public
.Trash			Library
$ vi .bash_profile # ファイルを編集する。なければ新規作成される。

JDKのパスを入力する。

# .bash_profile

JAVA_HOME=/Library/Java/JavaVirtualMachines/1.6.0_29-b11-402.jdk/Contents/Home
export JAVA_HOME

PATH=${JAVA_HOME}/bin:$PATH 
export PATH

[esc]:wqと入力して保存して編集を終了。設定を再読み込みして反映させる。

$ source ~/.bash_profile
$ java -version           # JDKにパスが通ったか確認
  java version "1.6.0_29" # インストールしたJDKとパスが同じ
  Java(TM) SE Runtime Environment (build 1.6.0_29-b11-402-11M3527)
  Java HotSpot(TM) 64-Bit Server VM (build 20.4-b02-402, mixed mode)
(5) システムのJavaを設定する。

アプリケーション>ユーティリティ>Java Preferences を開く。JDKJavaにパスを通したのに、「Javaをインストールしますか?」と言われる。仕方ないので、[続行]をクリックすると、JREが自動的にインストールされる。

その後、表示された設定ダイアログで、Java SE 6の「システム」の方のチェックボックスを外す。たぶん、チェックボックスは外さなくても、「システム」でない方が上に来ていればいいと思う。

2. eclipseをインストールする

(1) eclipseのダウンロード

公式のダウンロードページを開いて、「Eclipse IDE for Java EE Developers」のMac OS X 64 Bitを選択してダウンロードする。もし日本語化したければ、Mac OS X LionにEclipseをインストールして日本語化までのメモの記事が参考になる。

(2) eclipseのインストール

ダウンロードしてきたeclipse-jee-indigo-SR1-macosx-cocoa.tar.gzをクリックして展開して、出てきたeclipseフォルダをそのままアプリケーションフォルダに移動すればインストール完了。

(3) eclipseの起動

アプリケーションフォルダにコピーしたeclipse.appをクリックして起動。ワークスペースをどこに作るか聞かれるので、/Users/ユーザー名/workspaceなどと入力する。

ちなみに、先ほどダウンロードしたJavaには、ソースコードも添付されているので、Javaアプリケーションのデバッグのときも便利。

Mac OS X LionにRuby 1.8.7、Rails 3.0.10をインストールする

Mac OS X LionにRuby 1.8.7の環境を作ったときのメモ。今後、1.9.2も使いたいので、複数のバージョンのRubyを切り替えて使えるツール、RVMを先にインストールする。

公式ページのInstalling RVMに書かれている通りRVMをインストールしようとすると、いきなり失敗した。

$ bash < <( curl http://rvm.beginrescueend.com/releases/rvm-install-head )
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   184  100   184    0     0    221      0 --:--:-- --:--:-- --:--:--  1383
bash: line 1: html: No such file or directory
bash: line 2: syntax error near unexpected token `<'
'ash: line 2: `<head><title>301 Moved Permanently</title></head>
montecut:bin montecut$ bash < <(curl -sk https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer)
bash: line 154: git: command not found
bash: line 156: git: command not found

ERROR: Unable to clone the RVM repository, attempted both git:// and https://

エラーメッセージを見る限り、RVMはgitがないとインストールできないらしい。

gitをインストールするには、MacPortsが必要で、MacPortsをインストールするにはXcodeが必要なので、以下の一式を順番にインストールする。

  1. Xcode(Mac OSの開発環境)
  2. MacPorts(UNIX向けに開発されたツールをインストールするためのパッケージ管理システム)
  3. git
  4. RVM
  5. Ruby 1.8.7
  6. Rails 3.0.10

1. Xcode(Mac OSの開発環境)のインストール

AppStoreでXcodeと検索する。XCodeの紹介画面が表示されるので、インストールボタンをクリックしてインストールする。

2. MacPortsのインストール

公式サイトのMac OS X Package Installで、MacPorts download directoryのリンクからMacPorts-2.0.3-10.7-Lion.dmgをダウンロードする。.dmgファイルをクリックしてマウント、出てきた.pkgファイルをクリックしてインストールする。

3. gitのインストール

以下のページを参考にして、gitをインストールする。

最速で Git を Mac にインストールして基本的なコマンドを使う方法 WEBLE

実行したコマンドは以下の通り。Gitに関連するライブラリはたくさんあるが、全部自動でインストールしてくれる。(数十分はかかる。)

$ sudo port install git-core
  ...
  --->  Installing git-core @1.7.7.2_0+doc+pcre+python27
  --->  Activating git-core @1.7.7.2_0+doc+pcre+python27
  --->  Cleaning git-core

$ /opt/local/bin/git --version # Gitはここにインストールされる
  git version 1.7.7.2

$ echo $PATH                   # /opt/local/bin へのパスが追加されているか確認
  /opt/local/bin:/opt/local/sbin:/Library/Java/JavaVirtualMachines/1.6.0_29-b11-402.jdk/Contents/Home/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/Applications/android-sdk-macosx/tools/

4. RVMのインストール

準備ができたので、改めてRVMをインストール。Mac に rvm を使って ruby と rails をインストール id:itto100penさんの記事を参考にさせていただいた。

# cd ~/ # ホームディレクトリに移動
$ bash < <(curl -s https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer ) # インストールコマンド
$ vi .bash_profile # .bash_profileの編集# 以下を追記
  echo '[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # Load RVM function' >> ~/.bash_profile
  [[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # Load RVM function

$ source .bash_profile # 設定を再読み込み
$ type rvm | head -1   # これを入力して…
  rvm is a function    # これが出力されればテストOK
$ rvm requirements

5. Rubyのインストール

以下のコマンドを実行して、RVMでインストールできるRubyの一覧を出す。古いバージョンから最新のものまで対応しているのがわかる。それより、Rubyの派生バージョンがこんなにたくさんあったことにビックリ。

$ rvm list known # インストールできるRuby
  # MRI Rubies[ruby-]1.8.7[-p352]
  [ruby-]1.8.7-head
  [ruby-]1.9.1-p378
  [ruby-]1.9.1[-p431]
  [ruby-]1.9.1-head
  [ruby-]1.9.2-p180
  [ruby-]1.9.2[-p290]
  [ruby-]1.9.2-head
  [ruby-]1.9.3-preview1
  [ruby-]1.9.3-rc1
  [ruby-]1.9.3[-p0]
  [ruby-]1.9.3-head
  ruby-head
  …
  # GoRuby# JRuby# Rubinius# Ruby Enterprise Edition# Kiji# MagLev# Mac OS X Snow Leopard Only# IronRuby -- Not implemented yet.
  ...

1.8.7をインストールする。

$ rvm install 1.8.7-p352  # インストール
$ rvm use 1.8.7-p352      # 切り替え
  Using /Users/montecut/.rvm/gems/ruby-1.8.7-p352
$ ruby -v                 # バージョンを確認
  ruby 1.8.7 (2011-06-30 patchlevel 352) [i686-darwin11.2.0]

6. Rails 3.0.10のインストール

Rubyに続いて、Railsをインストールする。最新のRailsは3.1だが、手元の書籍とバージョンを合わせるため、3.0系では最新の3.0.10にする。

$ rvm gemset create rails3
$ rvm use 1.8.7@rails3
  Using /Users/montecut/.rvm/gems/ruby-1.8.7-p352 with gemset rails3
$ gem install rails -v 3.0.10
  /Users/montecut/.rvm/rubies/ruby-1.8.7-p352/lib/ruby/1.8/timeout.rb:60: [BUG]   Bus Error
  ruby 1.8.7 (2011-06-30 patchlevel 352) [i686-darwin11.2.0]
  
  Abort trap: 6

Railsをインストールと上記のようなエラーが出る。

調べてみると、Xcode 4でシステムのデフォルトコンパイラGCC 4.2 から LLVM GCC 4.2に変わったせいで問題が起きているらしい。以下のリンクによると、LLVMではないGCCを使えば問題が解決するとのこと。

で、GCC4.2とLLVM GCC4.2の違いは、LLVMをちょっと調べてみた id:wagavulinさんのページがわかりやすい(といっても僕にはむずかしいorz)。

僕の理解だと、たとえばC言語の場合、C言語機械語コンパイルする際、x86とARMなどのCPUのアーキテクチャごとに、別々の機械語を生成しなければならなかった。そうすると、一度機械語に変換されたアプリケーションは異なるCPU間で互換性がなくなる。LLVMがあれば、Javaのアプリケーションが複数種類のプラットフォームのVM上でも動くように、中間形式のバイトコードをひとつ作るだけで、複数種類のCPU上で動作するようになるのだと思う。(間違っていたらすみません…。)

Mac OS X Lion に gcc-4.2 をインストールするよのページを参考にGCCをインストールしてみる。

まずは、以下のコマンドでGCCを確認。/usr/bin/gccが、LLVM GCC 4.2を指していることがわかる。

$ ls -l /usr/bin | grep gcc
lrwxr-xr-x    1 root   wheel        12 11 20 15:42 cc -> llvm-gcc-4.2
lrwxr-xr-x    1 root   wheel        12 11 20 15:42 gcc -> llvm-gcc-4.2
lrwxr-xr-x    1 root   wheel        28 11 20 15:42 gcov-4.2 -> ../llvm-gcc-4.2/bin/gcov-4.2
lrwxr-xr-x    1 root   admin        52 11 20 15:42 i686-apple-darwin11-llvm-g++-4.2 -> ../llvm-gcc-4.2/bin/i686-apple-darwin11-llvm-g++-4.2
lrwxr-xr-x    1 root   admin        52 11 20 15:42 i686-apple-darwin11-llvm-gcc-4.2 -> ../llvm-gcc-4.2/bin/i686-apple-darwin11-llvm-gcc-4.2
lrwxr-xr-x    1 root   admin        32 11 20 15:42 llvm-cpp-4.2 -> ../llvm-gcc-4.2/bin/llvm-cpp-4.2
lrwxr-xr-x    1 root   admin        32 11 20 15:42 llvm-g++ -> ../llvm-gcc-4.2/bin/llvm-g++-4.2
lrwxr-xr-x    1 root   admin        32 11 20 15:42 llvm-g++-4.2 -> ../llvm-gcc-4.2/bin/llvm-g++-4.2
lrwxr-xr-x    1 root   admin        32 11 20 15:42 llvm-gcc -> ../llvm-gcc-4.2/bin/llvm-gcc-4.2
lrwxr-xr-x    1 root   admin        32 11 20 15:42 llvm-gcc-4.2 -> ../llvm-gcc-4.2/bin/llvm-gcc-4.2

先ほどインストールしたMacPortsで、GCCのインストールをしようとしたが、gcc42ではビルドに失敗する。

$ port search gcc # MacPortsでGCCの検索
  …
  apple-gcc42 @5666.3 (lang)
    Apple's version of gcc 4.2
  ...
  gcc42 @4.2.4 (lang)
    The GNU compiler collection

  Found 42 ports.

$ sudo port install gcc42 # GNUコンパイラのGCC 4.2はビルドできない。
Password:
--->  Fetching archive for gcc42
--->  Attempting to fetch gcc42-4.2.4_2.darwin_11.x86_64.tbz2 from http://packages.macports.org/gcc42
--->  Fetching gcc42
Error: gcc42 does not build on Snow Leopard or later.
Error: Target org.macports.fetch returned: unsupported platform
Log for gcc42 is at: /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_lang_gcc42/gcc42/main.log
Error: Status 1 encountered during processing.
To report a bug, see <http://guide.macports.org/#project.tickets>

今度はapple-gcc42で試してみる。

$ sudo port install apple-gcc42 # GCC42

$ which gcc-apple-4.2 # GCCのパスを調べる
  /opt/local/bin/gcc-apple-4.2

無事GCC 4.2が入ったので、Rubyコンパイルとインストールをやりなおす。RVMにGCCを手動で指定して実行する。

$ rvm uninstall 1.8.7-p352  # いったん削除
  /Users/montecut/.rvm/rubies/ruby-1.8.7-p357 has already been removed. 

$ CC=/opt/local/bin/gcc-apple-4.2 rvm install 1.8.7-p352 # gcc-apple-4.2を指定してインストール
Installing Ruby from source to: /Users/montecut/.rvm/rubies/ruby-1.8.7-p352, this may take a while depending on your cpu(s)...

ruby-1.8.7-p352 - #fetching 
ruby-1.8.7-p352 - #extracted to /Users/montecut/.rvm/src/ruby-1.8.7-p352 (already extracted)
Applying patch 'stdout-rouge-fix' (located at /Users/montecut/.rvm/patches/ruby/1.8.7/stdout-rouge-fix.patch)
ERROR: Error running 'patch -F 25 -p1 -N -f <"/Users/montecut/.rvm/patches/ruby/1.8.7/stdout-rouge-fix.patch"', please read /Users/montecut/.rvm/log/ruby-1.8.7-p352/patch.apply.stdout-rouge-fix.log
ruby-1.8.7-p352 - #configuring 
^[[Bruby-1.8.7-p352 - #compiling 
ruby-1.8.7-p352 - #installing 
Removing old Rubygems files...
Installing rubygems-1.8.10 for ruby-1.8.7-p352 ...
Installation of rubygems completed successfully.
ruby-1.8.7-p352 - adjusting #shebangs for (gem irb erb ri rdoc testrb rake).
ruby-1.8.7-p352 - #importing default gemsets (/Users/montecut/.rvm/gemsets/)
Install of ruby-1.8.7-p352 - #complete 

またエラーが出るが、--forceオプションを付けることで解決する。

$ CC=/opt/local/bin/gcc-apple-4.2 rvm install 1.8.7-p352 --force # 2度目なので--forceを付けないと失敗する
Installing Ruby from source to: /Users/montecut/.rvm/rubies/ruby-1.8.7-p352, this may take a while depending on your cpu(s)...

ruby-1.8.7-p352 - #fetching 
ruby-1.8.7-p352 - #extracting ruby-1.8.7-p352 to /Users/montecut/.rvm/src/ruby-1.8.7-p352
ruby-1.8.7-p352 - #extracted to /Users/montecut/.rvm/src/ruby-1.8.7-p352
Applying patch 'stdout-rouge-fix' (located at /Users/montecut/.rvm/patches/ruby/1.8.7/stdout-rouge-fix.patch)
ruby-1.8.7-p352 - #configuring 
ruby-1.8.7-p352 - #compiling 
ruby-1.8.7-p352 - #installing 
Removing old Rubygems files...
Installing rubygems-1.8.10 for ruby-1.8.7-p352 ...
Installation of rubygems completed successfully.
ruby-1.8.7-p352 - adjusting #shebangs for (gem irb erb ri rdoc testrb rake).
ruby-1.8.7-p352 - #importing default gemsets (/Users/montecut/.rvm/gemsets/)
Install of ruby-1.8.7-p352 - #complete 

$ rvm use 1.8.7-p352      # 切り替え
  Using /Users/montecut/.rvm/gems/ruby-1.8.7-p352
$ ruby -v                 # バージョンを確認
  ruby 1.8.7 (2011-06-30 patchlevel 352) [i686-darwin11.2.0]

続いてRailsをインストール。

$ gem install rails -v 3.0.10
$ which rails
  /Users/montecut/.rvm/gems/ruby-1.8.7-p352@rails3/bin/rails
$ rvm use 1.8.7@rails3 --default # このターミナル以外でも使えるようにする
  Using /Users/montecut/.rvm/gems/ruby-1.8.7-p352 with gemset rails3

うまくインストールできた。最後に、Railsでデモアプリを作成する。

$ rails new demo
$ bundle install # 足りないgemをインストール
$ rails generate scaffold Post name:string title:string content:text # 適当なスケルトンを作成
$ rake db:create
$ rake db:migrate
$ rails s # サーバーを起動する

ブラウザで、http://127.0.0.1:3000/postsにアクセスして、Railsのページが表示されればOK。