2015年12月11日金曜日

XcodeでEXC_BAD_ACCESS

Xcode 7.0.1でXCTestを実施した際、EXC_BAD_ACCESSでハマったのでメモしておきます。
add exception breakpointしてもわかりませんでした。

結論としては、テストクラスのメソッド数が多すぎたようです。
XCTestのリファレンスにも乗っていなかったので、詳しいことは不明ですが、メソッド数が70を超えると発生するようです。
※直接の原因は他(メモリ等)にあり、メソッド数が増えることにより、発生する可能性もあります。

2015年12月2日水曜日

UbuntuのLauncherにアプリを追加する方法

eclipseなどをインストールした際に、Launcherに追加する方法です。

1. Desktop entry fileを作成する

~/.local/share/applications/eclipse.desktop
[Desktop Entry]
Encoding=UTF-8
Version=1.0
Type=Application
Name=eclipse luna
Icon=/home/sample/bin/eclipse-jee-luna-SR2-linux-gtk-x86_64/icon.xpm
Path=/home/sample/bin/eclipse-jee-luna-SR2-linux-gtk-x86_64
Exec=/home/sample/bin/eclipse-jee-luna-SR2-linux-gtk-x86_64/eclipse
Actions=Clean

[Desktop Action Clean]
Name=Clean
Exec=/home/sample/bin/eclipse-jee-luna-SR2-linux-gtk-x86_64/eclipse -clean
※パスは適切に変更して下さい。

2. Launcherに追加する

「search your computer and online sources」からeclipseを検索し、Launcherにドラックする。

2015年9月5日土曜日

UbuntuにOracle JDK8をtar.gzからインストール

Ubuntu 12.04にOracle JDK8をtar.gzからインストールしてみました。

環境:Ubuntu 12.04.1 32ビット

Oracleからtarをダウンロード
     
解凍
$ tar zxvf jdk-8u60-linux-i586.tar.gz
     
適当な位置に配置する
$ sudo cp -r jdk1.8.0_60 /usr/lib/jvm
     
JAVA_HOME
$ sudo vi /etc/profile

下記を追記
export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_60
export PATH=$PATH:$JAVA_HOME/bin:

PCを再起動

確認コマンド
$ java -version
java version "1.8.0_60"と表示されれば成功です。

2015年7月28日火曜日

Android StudioでHello World

Create Sample Project


Android Studioを起動し、[Start a new Android Studio project]を選択
※Application name、Packageなどは、とりあえすデフォルト値を使用。


















今回は、Phone and Tablet Minimum SDK API 10のアプリを作成します。
※なぜ、API 10:Android 2.3.3(Gingerbread)なのかは別途ブログで書きます。














追加するActivityはBlank Activityを選択
※Activity Name等はとりあえずデフォルト

Install SDK Packages


[Tools] -> [Android] -> [SDK Manager] でSDK Managerを起動
※起動時にチェックが付いているもとAndroid 2.3.3のPackageをインストール
















Create AVD


[Tools] -> [Android] -> [AVD Manager] でAVD Managerを起動し
Android 2.3.3のVirtual Deviceを作成













Launch Application


[Run] -> [Run 'app']で先ほど作成したAVDを選択し、アプリケーションを起動

2015年7月26日日曜日

Ubuntu 64bit環境でAndroidをantビルドする際の注意点

Ubuntu 64bit環境(14.04.2)で、Androidをantビルドする際に
下記のようなエラーが出る場合があります。

android-sdk-linux/tools/ant/build.xml:694: Execute failed: java.io.IOException: Cannot run program "/home/ubuntu/android-sdk-linux/ build-tools/23.0.0-preview/aapt"

その場合は、下記のライブラリをインストールして下さい。

sudo dpkg --add-architecture i386
sudo apt-get update
sudo apt-get install libncurses5:i386 libstdc++6:i386 zlib1g:i386

参考:https://developer.android.com/intl/ja/sdk/installing/index.html?pkg=tools

2015年7月20日月曜日

Android StudioのDownloadとInstall (Windows)


Download

Android Developersからexeをダウンロード

事前準備

Android Studioを使用するにはJDK 6以上が必要となります。

※Android 5.0以上の開発にはJDK 7が必要となります。
※JAVA_HOMEの設定が推奨されています。

Install

Downloadしたexeを実行して下さい。

トラブルシューティング

初期起動じに下記のエラーが発生した場合

The environment variable JAVA_HOME does not point to a valid JVM installation.

JAVA_HOMEを下記の通り変更して下さい。

C:\Program Files\Java\jdk1.7.0_71\bin;

C:\Program Files\Java\jdk1.7.0_71

2015年7月9日木曜日

ADT in Eclipseのサポート終了

Android Developer Tools (ADT) in Eclipseのサポートが2015年末で終了となります。

※Android Ant buildも終了となります。

本格的に、Android Studioへの乗り換えが必要となるようです。

参考:Android Developers Blog

2015年6月3日水曜日

Androidでorg.json.JSONObjectを使う際の注意点

Android標準(5.1現在)のorg.json.JSONObjectには、MapとListをputできません。

正確には、入れても想定通りのエンコードができません。(valueにtoStringしたような値が入ります)

MapやListはJSONObjectやJSONArrayへの詰め替えが必要となります。


補足:JSONObjectのput関数には、valueの型にMapおよびListのものがなく、put (String name, Object value)のvalueにはMapおよびListが含まれない。

2015年5月10日日曜日

2015年1月13日火曜日

gitでブランチを作成する際の注意点

gitで新しくブランチを作成する際、

 git checkout -b newBranch origin/baseBranch

としていませんか?

これは危険です。


上記の場合、作成されるnewBranchの追跡ブランチはorigin/baseBranchとなります。

※追跡ブランチとは、リモートブランチとつながりを持つローカルブランチのことです。
※追跡ブランチの確認は「git branch -vv」で行えます。


例えば、「git push」(オプションなし)を行った場合は、newBranchの修正が、リモートのbaseBranchにpushされます。

また、「git push origin newBranch:newBranch」(リモートにnewBranchを作成)とした場合でも、その後「git pull」(オプションなし)を行うと、リモートのbaseBranchの修正がnewBranchにマージされます。


新しくブランチを作成する際は、

 git checkout -b baseBranch origin/baseBranch

の後(ローカルのbaseBranchで)に

 git branch newBranch

を行うことをお勧めします。