Category: develop

  • Aptana Studioをアップデートしたら起動しなくなったときの対応の要点だけ

    OSXで、Aptana Studioをアップデート後に起動しなくなるときがある。
    こんな具合のエラーが出る時:


    “The AptanaStudio3 executable launcher was unable to locate its companion launcher jar.”

    このときは以下のような手順を取れば起動するようになる。

    1. AptanaStudio3.appを右クリック
    2. 「パッケージの内容を表示」する
    3. 以下のファイルをテキストエディタで開く:
      Contents/MacOS/AptanaStudio3.ini
    4. 以下の行を探す(たぶん最初の2行)
      -startup
      ../../../plugins/org.eclipse.equinox.launcher_1.1.1.R36x_v20101122_1400.jar
    5. org.eclipse.(中略).jarが見つかってないことが起動しない(unable to locate)な原因。これを、plugins/org.eclipse.equinox.launcher(略).jarの存在するファイル名に書き換える。
    6. ファイル保存してAptanaStudio3.appを再起動。

    以上で起動するようになります。
    (ちなみに僕のケースでは、Aptana Studio 3を3.0.6にアップデートしたときに発生しました)

  • Windowsでgitの使い方の要点だけ

    Windowsからgitを利用するには、TortoriseGitを利用するのが吉みたい。
    TortoiseSVNがベースになっていてExplorerから利用できるので、良さそう。

    以下のGoogle CodeからDLできる。
    http://code.google.com/p/tortoisegit/

  • OSXでgitの使い方の要点だけ(インストール編)

    Android自体のソースコードもそうだけど、最近いろんなオープンソースプロジェクトがSubversionから移行していたり、githubを使う機会もなんだか増えて来たのでgitの使い方を整理してみる。当方Subversionはまあまあ使っていて、OSX Snow Leopardという環境です。まずはインストールから。

    (more…)

  • Androidアプリから外部ブラウザに連携するときのsnippet要点だけ

    すぐ忘れるのでメモ書き。要するにintentを使う。

  • Androidレイアウトの要点だけ: LinearLayoutでパーツを均等に配置したい

    Androidレイアウトの要点だけ: LinearLayoutでパーツを均等に配置したい

    AndroidのUI制作で、LinearLayoutを使って画面の横幅のちょうど2等分にしたいときがあります。このようなときは、LinearLayoutされているパーツ(ボタンとか)にたいして”android:layout_weight”プロパティを設定します。これの使い方のちょっとしたコツのメモ。

    (more…)

  • AndroidでLayoutからイベントリスナの設定方法の要点だけ

    どうやらAndroid 1.6かららしいんだけど、Layoutファイルにandroid:onClickというプロパティを指定することができます。例えばOK/Cancelボタンを配置した場合は、以下みたいなLayoutファイルになります。
    <Button android:text=“@string/label_button_cancel” android:layout_height=“wrap_content” 
    android:layout_width=“wrap_content” 
    android:id=“@+id/cancelButton”
    android:onClick=“onCancelClicked”/>
    <Button android:text=“@string/label_button_ok”
    android:layout_height=“wrap_content” 
    android:layout_width=“wrap_content” 
    android:id=“@+id/OKButton” 
    android:onClick=“onOKClicked”/>

    こういう記述のあるlayout.xmlファイルをActivityの中でsetContentView()してやると、OKまたはCancelボタンをタップしたときに、そのActivityの中にあるandroid:onClickに指定した名前のメソッドを読んでくれます。listenerの設定とかが必要ないので、非常に便利。

    メソッドのシグネチャは、public void aHandler(View v)なので、上記の例だとそれぞれ

    public void onOKClicked(View v) {
    Log.d(“DEBUG”, “ok clicked”);
    }
    public void onCancelClicked(View v) {
    Log.d(“DEBUG”, “cancel clicked”);
    }
    みたいなメソッドだけを記述しておいてやればOK。

  • AndEngineのはじめかたの要点だけ


    p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica}
    p.p2 {margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica; color: #144fae}
    p.p3 {margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica; min-height: 14.0px}
    span.s1 {text-decoration: underline}
    span.s2 {color: #000000}

    Android用の2Dゲームフレームワークみたいなものを探してて、iOS界隈だとcocos2dがメジャーなんだろうけど、cocod2dのAndroid版というのはプロジェクトが分裂してる上に、どうも更新が止まってるか、凄く遅いっぽい。色々調べてたらAndEngineというのが有望に見えたし類似と言って良いっぽいので、調べてみることにした。OpenFeintとの連携もOKみたい(調べてないけど)。とりあえずはAndEngineを始めるに有用なポインタを簡単に整理してみます。

    (more…)

  • Android Bazaar & Conference Summer 2011に行ってきた所感要点だけまとめ

    Android Bazaar and Conference Summer 2011というAndroidのイベントに参加してきました。2011年7月17日@早稲田大学。

    細かいことは置いておいて、気付いたことの要点だけ書く。聞いたセッションは以下。
    主にDeNA、GREE、CyberAgentのセッションを聞いてきて、DeNAは2セッションあってどちらもngCore関係(2つ聞いたんだけど、ほとんど内容同じだった。)、GREEはGREE Platform、CyberAgentは自社の開発環境や体制についての話。

    (more…)

  • 外部のActivityを明示的Intentで開始するやりかたの要点だけ

    Androidアプリの開発で、パッケージ名およびActivity名が分かっているアプリを、自分のアプリから起動したい時がある。たとえばプリインストールのGoogle製アプリとか。

    この場合も、自パッケージ内の明示的インテントと同様に起動することができる。具体的には以下みたいにする。

    Intent i = new Intent();
    i.setAction(Intent.ACTION_MAIN);
    i.setClassName(“com.example.external.package”, “com.example.external.package.SomeActivity”);
    //i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); //外部Activityを自分のActivityスタックとは別に立てたいとき。
    startActivity(i);

    注意点として、setClassName(String packageName, String ActivityName)するときに、ActivityName側もフルパッケージ名で指定する必要があること。これをしないとClassNotFoundExceptionになる。

    あと、setFlags(Intent.FLAG_ACTIVITY_NEW_TASK)しないと、例えば起動したアプリをHOMEボタンで終了した後にもう一回自分のアプリを立ち上げた時、自分のパッケージから起動したSomeActivityの方の画面が出てよくわからない事になる。これを避けるにはIntent.FLAG_ACTIVITY_NEW_TASKフラグを指定した状態でstartActivity()する。

    このへんはTASKについて整理する必要がありそうだけど、別の機会にします。

  • OSX用のMercurial Binary Package

    Google Codeとかで使うMercurialのOSX用パッケージを探してたのでメモ。
    http://mercurial.berkwood.com/

    [追記]
    こっちのほうが良いのかな? http://mercurial.selenic.com/downloads/