2013-01-01から1年間の記事一覧

PHPのデバッグ時に起動57%で止まってしまう場合の確認ポイント

Eclipse + PHP + Xdebugという、参考書にもよく載っているモジュール構成でPHPのコードをデバッグしようとすると、起動後57%で処理が停止してしまう場面に出くわすことがあります。ネットで検索すると、この現象にぶつかる方も多いようです。私もしばらくこ…

VMware Playerがエラーで起動できない時の対応

VMware Playerが起動できない時があります。私の場合はWindows7にVMware Playerをインストールしているのですが、いつものようにVMware Playerのアイコンをクリックすると、エラーダイアログが出て起動できない時があります。初めて見たときは焦ります。この…

Androidアプリのソースコード公開

先月このブログでもお知らせしましたが、節電系ユーティリティアプリ「オート節電」をGoogle Playに公開しました。https://play.google.com/store/apps/details?id=com.kyakujin.android.autoeco&hl=jaAndroidアプリの入門書を読み終え、次により実践的なア…

節電系ユーティリティアプリをリリースしました

本日、Androidアプリを一つ、Google Playに公開しました。端末本体の節電系ユーティリティアプリです。https://play.google.com/store/apps/details?id=com.kyakujin.android.autoeco&hl=jaスクリーンショットの一部です。 よく知られているように、スマート…

AndroidアプリテストのためのJenkins設定 3

前回の続きです。今回は最後のステップ「3. プロジェクト毎の設定」の内容を記述します。 1. 実行環境の設定 Jenkinsを実行させるためのマシン環境の設定です。2. Jenkins共通設定 Jenkinsの実行全般に関わる設定です。3. プロジェクト毎の設定 (←今回) Jenk…

AndroidアプリテストのためのJenkins設定 2

前回の続きです。今回は以下のステップのうち「2. Jenkins共通設定」の内容を記述します。 1. 実行環境の設定 Jenkinsを実行させるためのマシン環境の設定です。2. Jenkins共通設定 (←今回) Jenkinsの実行全般に関わる設定です。3. プロジェクト毎の設定 Jen…

AndroidアプリテストのためのJenkins設定 1

今更ながらですが、個人的に作成しているAndroidアプリの作成プロセスにJenkinsを導入してみました。個人で行う小規模のアプリ作成であれば、とりあえずビルドしてエミュレータや実機でテストして、そして、ある程度の品質が確認できれば公開することは簡単…

Androidアプリのコード中にアサーションを使いたい

JavaでもC++でも、コードの中に成り立つべき条件があり、それを検証する場合はアサーションを活用することができます。例えばJavaならこのように書けます。 public testCompare(){ // 中略 int a = 0; int b = 1; assert isEqualNum(a, b); } private boolea…

TimePickerDialogのonTimeSet()が2回連続でコールされてしまう件の回避例

時間設定の便利なコンポーネントとしてTimePickerDialogがありますが、このダイアログはSDKバージョン4.1.x以降から想定外の動作をするケースがあります。今回はそれに対する回避策の例をメモ書きします。まず、TimePickerDialogというのはどういうものかと…

initLoader()とrestartLoader()のどちらを使うか

場合によってはrestartLoader()のみを使っても良さそう、というお話です。Androidアプリにおいて、例えばデータベースからデータを非同期で読み込み、ListViewなどへ読み込んだデータを反映するときなどは、ローダーという機構を使用することができます。そ…

VMware PlayerのゲストOSからネット接続をするための設定

このところ、仮想マシンにWebサーバを入れて色々と実験しておりまして、やはりというか数々の設定に苦慮することが多々あります。そこで、解決したことを覚書として記録に残しておきたいと思います。今回は、VMware Player上のゲストOSに固定IPを割り当て、…

XmlPullParserを使った処理が正常動作しない時の対処

RSSを読み込んでListViewに表示する処理を書いていたときのことです。Android 2.3.xでは問題なくXMLをパース出来ていたのに、Android 4.2.xではうまく動作しませんでした。その問題に対してどのようにコードを修正したのか、その具体的な方法をここに記録と…

AndroidでのSQL文発行でLIKE演算子を使う時のはまりポイント

Androidアプリ内でSQL文を発行する場合、LIKE演算子の使い方によっては例外が発生してしまいます。例えばメモ帳アプリの場合。「notes」というテーブルに、メモのタイトルを表す「title」列と、本文を表す「body」列が定義されているとします。ここで、中間…

Androidアプリ開発に役立った書籍 (2)

前回(Androidアプリ開発に役立った書籍(1))に引き続き、書籍の紹介です。前回紹介したのはAndroidアプリ開発を始めるにあたって必須となる知識が詰め込まれた書籍でしたが、今回紹介するのは可能な限り知っておいたほうが良いと思われる内容のものです。まず…

Androidアプリ開発に役立った書籍 (1)

スマホアプリでもWebアプリでも、最近ではエンジニアの方々がブログ上で技術的な情報を公開していたり、あるいはGitHubなどで直接ソースコードを見る(もしくは利用する)機会が増えたため、昔に比べれば開発することに対する参入障壁が低くなりました。基本、…

Android SDKのバージョンによってinsertWithOnConflict()の戻り値が異なる

追記: 2013/08/20 以下の記述はエミュレータで検証した結果です。実機の場合は挿入しようとしたROWIDがそのまま返却されるケースがあるようです。SQLiteでUNIQUE制約が設定されたカラムに重複データをinsertすれば一意制約違反になるわけですが、 insertWith…

RobotiumでisCheckBoxChecked()が機能しない件の回避策

最近、Robotiumを使ったアプリケーションの評価を試しているのですが、やはりというか一部不安定な機能があります。たとえば、isCheckBoxChecked()というメソッド。これは、任意のチェックボックスがONになっているかをテストするためのものですが、どのよう…

RobotiumでCursorアクセス

Robotiumを使ってCursorのデータを取得する方法のメモです。Androidアプリケーションのテストを実施する場合、通常ではJUnitを使用すると思いますが、ActionBarSherlockのライブラリを導入しているとJUnit実行時に例外が発生します。ActivityInstrumentation…