サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
パリ五輪
iti.hatenablog.jp
こんにちは。出石です。 今回は自動テストのSeleniumを複数環境で実行できる「Selenium Grid」を試してみました。 一つのテストスクリプトを複数ブラウザで並行して実行できる為、ブラウザテストまたは実行時間の短縮になります。 環境準備 node環境については、当ブログの記事「サーバサイドJavaScriptのツール:Node.js Express.js MongoDB mongooseを使ってみる -インストール編-」を参考にしてください。 node、npmが使える環境であればサンプルプログラムを取得して頂くだけで準備は完了です。 $ git clone https://github.com/hatena-iti/SeleniumGridSample.git 実行を確認した環境は以下になります。 OS : windows7 64bit SP1 node : 0.10.35 np
間藤です。 前回に引き続きAppiumです。今年のはじめにAppiumをiOS編として取り上げた際は、Safariでの動作確認が今一つでした。新しいAppiumではどうかということで試した結果をレポートします。前回とは違った問題が発生しています。 実行環境等 以前にも書いたように、Safariを起動するため、SafariLauncherを利用することに変わりはありません。今回もappiumのgithubリポジトリを利用することを前提に話をすすめます。 ホストPC OS X Mavericks v10.9.4 Xcode 5.1.1 Appium 1.2.0 iOS実機 7.1.1 テスト対象アプリ SafariLauncher、Mobile Safari テストスクリプト sample-code/examples/java/junit/src/test/java/com/saucelabs
こんにちは。中山です。 以前の「たったこれだけ!AndroidからNFCタグにデータを書き込む!」の記事では、ブラウザを起動して、指定のウェブページを表示するためのデータを、NFCタグに書き込む方法をご紹介しました。 今回は、その続編として、NFCタグを読み取って、ブラウザ以外の、いろいろなアプリを起動させるためのデータ書き込み方法を、いくつか紹介してみたいと思います。 1.サンプルアプリケーション 今回も、サンプルのAndroidアプリケーション「MyNFCWriter2」をGitHubに置きました。 このアプリケーションを実行すると、以下のような画面が表示されます。 例えば、NFCタグを読み取って、Googleマップアプリを起動させたい場合、上記のように「Googleマップアプリを起動する」をチェックした状態で、そのAndroidスマートフォン、またはタブレットをNFCタグにかざします
こんにちは。中山です。 先日、iOS8 が正式に公開されました。 いろいろと新しい機能が追加されているようですが、しかし、多くの iOS 開発者がいちばん気にしているのは、 「これまでつくったアプリは、そのまま動くのだろうか?!」 というところだと思います。 今回は、iOS8 で変更があったところを中心に、iOS7、iOS8 の両方で動作するアプリを作るためのテクニックを、いくつかピックアップして紹介してみようと思います。 変更その1:UIScreen の bounds、applicationFrame の size が、端末の向きに依存するように 例えば以下のような、UIScreen の bounds、applicationFrame プロパティを用いてスクリーンのサイズを取得する処理があるとします。 NSLog(@"bounds: width = %f, height = %f", [
櫻です。 PHPの癖のある挙動を知ったので、記事にしてみました。 以下のバージョンで確認してあります。 PHP OS インストール方法 5.3.3 CentOS 6.5 yum 5.3.28 Mac OS X 10.9.1 homebrew 5.5.8 Mac OS X 10.9.1 homebrew 元ネタは以下のサイトです。 PHPが糞言語なのはどう考えても参照をポインタだと思っているお前らが悪い - なんたらノート第三期ベータ PHPとかいう糞言語|いんまのブログ 2013-03-07 - bravewood の日記 PHPでは配列ではなくオブジェクトに状態を持たせよ - なんたらノート第三期ベータ なかなか直感を裏切ってくれる挙動なため是非、結果を推測して、実際に動作させてみると面白いと思います。 ↓を使うと簡単に確認できます。 PHPepl: The PHP REPL (webベ
こんにちは。中山です。 今日は、OCR機能(光学文字認識機能。つまり、画像から文字を識別して、文字データとして取り出す機能)を、iOS アプリに組み込んでみたいと思います。 しかも無料で。 サンプルアプリ ソースファイルの入手 今回も実際に動くサンプルアプリを作ってみました。 サンプルアプリのソースファイルは、こちらから取得することができます。 サンプルアプリの実行 XCode でソースファイルを開いて、iPad のシミュレータなどでアプリを実行します。 このサンプルアプリは、iOS 7.0 以降の iPad をターゲットにしています。 アプリを起動するとすぐに、画面上に表示されている画像の文字解析が始まります。 以下のような文字を含む画像を解析して、 このような文字抽出結果が出力されます。 ソースファイル内の ViewController.m の10行目あたりを少し編集して、 // kI
こんにちは。中山です。 Amazon Web Services(AWS) って、新規ユーザは最初の1年間、制限付きながら、いろいろな機能を無料で使えるみたいですね。(詳細はこちら。) これは試してみないといけない、と思い、早速実践してみました。 今回トライしたのは、 「EC2」インスタンスを作成 その上に「Ruby on Rails 4.1」の動作環境を構築 その環境で、Ruby on Railsのサンプルアプリを動作させてみる というところです。 それではさっそく試してみたいと思います。 1.アカウント作成 AWS のトップページから、「無料でお試しください」をクリックして、新しいアカウントを作成します。(一応、クレジットカードの登録が必要になります。) 登録完了後、「Console Home」ページを開くと、以下のように表示されます。 2.EC2 インスタンスの作成 2−1.インスタン
こんにちは、中山です。 前回の記事「Androidアプリ内でPDFを表示する - MuPDFの場合(その1) -」では、「MuPDF」ライブラリをビルドして、そのAndroid用サンプルアプリを実行するところまでをご紹介いたしました。 今回はさらに、この「MuPDF」ライブラリを、自作のAndroidアプリに組み込んでみようと思います。 必要な手順は、これから紹介する5つのステップだけです。 0.(準備) 前回の記事を参考に、「MuPDF」ライブラリをビルドして、そのAndroid用サンプルアプリを実行できる状態にしておきます。(詳細は割愛いたします。) 1.自作アプリの用意 Eclipseから、Androidアプリのプロジェクトを新規作成します。 もしくは、既存のプロジェクトを利用してもよいでしょう。 今回は、「MyMuPdfSample」という名前のアプリのプロジェクトを新規作成しまし
ストアアプリ内ではPDFを表示できない?! こんにちは。中山です。 ストアアプリからPDFファイルを表示したいなぁという場合、通常は 外部のビューアアプリ(標準の「リーダー」アプリなど)を起動して、そちらのアプリでPDFファイルを表示する。 という方法がまず考えられます。 たいていの場合は、これで解決するのですが、ときには、どうしても、アプリ内で独自にPDFを制御したい(拡大・縮小表示、ページ送り、手描き編集などなど)、というシチュエーションが出てくるかもしれません。 しかし、ここでひとつ問題が出てきます。 Windowsストアアプリの標準SDKでは、PDFを操作するための機能が提供されていないのです。 (※2013/10/29追記: Windows8.1からは、ストアアプリ内でPDFを表示するためのAPIが提供されているようですね。) やはり、ストアアプリ内部でPDFを表示する、というこ
はじめまして、出石です。 ふとwebアプリを作ってみようかと以前から気になっていたSocket.IOを使ってみましたのでご紹介します。 目新しい技術ではありませんが、簡単なリアルタイムチャットを作ってみたいと思います。 Socket.IO はじめにSocket.IOとはリアルタイムwebを実現するAPIです。 リアルタイムwebを実現するにはサーバ・クライアントの双方向通信が必要です。実現する為の技術としては「Comet」などの「long polling」がありますが、HTTPコネクションの維持によるオーバーヘッドがあるなどリアルタイム性のある処理には最適とは言えません。 リアルタイムな双方向通信の手段としてはwebsokcetがあります。 websocketとはブラウザ間の双方向通信を行う通信規格で、持続的接続(ソケット)を持つ為、同じく双方向通信を実現する「Comet」等でネックだった
こんにちは、間藤です。 Monacaに関していろいろと投稿を行うつもりでしたが、前回はWindowsストアプリの話に終始してしまいました。そして、今回もまた脇道に逸れます。 PhoneGap Buildは、Adobeが提供するハイブリットアプリ開発環境です。iOSやAndroid、Windows Phone、BlackBerryといったプラットフォーム向けのPhoneGapアプリをビルドする環境を提供しています。Monacaと競合するサービスと言ってもよいでしょう。PhoneGap Buildの特徴については、こちらのページが参考になると思います。 今回少しだけPhoneGap Buildを利用してみたので、Monacaとの違いも意識しながら、以下に利用レポートを書いてみようと思います。ただ、最初に断っておきますと、MonacaにしてもPhoneGap Buildにしても、「ほんの少し使っ
櫻です。 最近Dockerが流行の様なので少し触ってみました。 使い捨てに出来る環境が数秒で起動出来るのは素晴らしいですね。 sshd apache mysqld をsupervisorで起動する方式のコンテナの作成方法(Dockerfileの書き方)のメモです。 CentOS6.5のコンテナが出来上がります。 環境など docker 0.8からMacから操作出来る様になっているのですが、docker buildする毎にUploading contextの容量が以上に大きくなっていったのでMacから直接操作するのは諦めてCentOS6.5でコンテナの作成は行いました。 一つのコンテナ内で複数のサーバ起動する場合はsupervisorを使うのがお手軽らしいため、supervisorにお任せしています。CentOSではepelにパッケージがあるのですが、これを利用したところCPUの使用率が10
こんにちは、石尾です。 間藤からMonaca、PhoneGapBuildを投稿していますが、 石尾は、Herlockについて投稿していこうと思います。 ※ホームページでは「Herlock.」となっていますが、「Herlock」と記載します。 Herlockは、株式会社ソニックムーブが提供するAndroid・iOSネイティブアプリのクロスプラットフォーム開発環境です。JavaやObjective-Cを知らない方でもJavaScriptを知っていれば、アプリ開発が可能です。コーディングは、Monacaと同様に、ブラウザ上で開発、デバッグからビルドまでを行います。特徴は、JavaScript(Flashライクなコード)でOpenGLによる実装ができ、ゲームのような高精度なグラフィックが求められるアプリを作成することが可能なところです。 今回は、Herlockを利用した開発の流れと少し触った感想を
AndroidとNFCタグのある日常 ここは香川県にある、とあるオフィス。 「あ、もうこんな時間かー。」 「そろそろお昼ご飯にでも行くか。・・・そうだ、せっかくだから最新のおしゃれなランチスポットを探してみよう!Nexus7を、このNFCタグの上にかざして、と。」 ポポーン♪ 「お、出てきた出てきた。・・・あれあれー?、香川県のおしゃれなランチスポットを検索したのに、ほとんどうどん屋だぞー。おかしいなー。・・・ま、いいか、今日もうどんとちくわ天にするか!」 ・・・みなさんこんにちは。うどん県在住の中山です。 食べログで、香川県のランチランキングを見ると、本当にほとんどがうどん屋さんなので、今日もしかたなくうどんを食べています。 今回は、上でご紹介したような、Androidスマートフォン・タブレットに搭載されている「NFC」の機能を使って、 NFCタグに、ウェブサイトのURLを書き込む An
【追記2014/7/7】 記事中のAppiumのドキュメントへのリンク先は削除されてしまったようです。その代わりに公式サイトのドキュメントが整備されています。 【追記2014/7/16】 Appiumの新しいバージョン(1.2.0)に関する記事を書きました。 こんにちは、間藤です。 Appiumによる自動テストの第3弾です。今回はハイブリットアプリの自動テストです。UIWebViewをいかにして操るのかということがポイントです。 実行環境等 テスト対象のアプリは、付属のサンプルを利用します。このアプリに対するJavaで書かれたテストが提供されていないようなので、今回は自作しました。 ホストPC OS X Mavericks Xcode 5.0.2 Appium 0.12.0 iOSシミュレータ 7.0.3 iOS実機 7.0.4 テスト対象アプリ sample-code/apps/WebV
【追記2014/7/7】 記事中のAppiumのドキュメントへのリンク先は削除されてしまったようです。その代わりに公式サイトのドキュメントが整備されています。 【追記2014/7/16】 Appiumの新しいバージョン(1.2.0)に関する記事を書きました。 こんにちは、間藤です。 年跨ぎとなってしまいましたが、予告通りAppiumのテストを実際に試していきます。今回は、ネイティブアプリの自動テストについて、iOSシミュレータと実機で動作をさせてみたいと思います。 実行環境等 前回紹介したように、appiumリポジトリにはテストのサンプルが付属しています。テスト対象となるネイティブアプリも提供されており、それをテストするためのスクリプト(今回はJavaを利用します)も用意されています。 以下に示したパスは、リポジトリ内の相対パスになります。 ホストPC OS X Mavericks Xco
こんにちは、武村です。 前回の記事で、LeapMotionの情報をJavaScriptで取得するには、 「leap.jsが必要です」 とお伝えしました。今回は、そのleap.jsとアプリ側JavaScriptの関係について書いていきます。 最初に白状しておきますが、調べていくうちに実はleap.jsは必須ではないことが分かりました。申し訳ございません。ただあるとないとでは開発のしやすさに雲泥の差があります。その理由は、この記事を読んでLeapMotionの仕組みを理解すると分かるでしょう。 それではLeapMotionの仕組みについて紹介いたします。 LeapMotionを使うにあたって最初にLeapMotionソフトウェアをPCにインストールしました。あのソフトウェアは一体何者でしょうか? その正体はUSB接続したLeapMotionからのモーション情報を扱うバックグラウンドプログラムで
【追記2014/7/7】 記事中のAppiumのドキュメントへのリンク先は削除されてしまったようです。その代わりに公式サイトのドキュメントが整備されています。 【追記2014/7/16】 Appiumの新しいバージョン(1.2.0)に関する記事を書きました。 こんにちは、間藤です。 弊社では、数年前にWebアプリケーションの自動テストツールを自前で作成して、いくつかのチームでは現在も利用しています。しかし、最近では、スマートフォンやタブレットなどのデバイスから利用することを想定したWebアプリケーション開発案件も徐々に増えており、現在のツールではニーズに対応しきれなくなってきました。 そういった背景もあって、モバイルデバイスの自動テストに関して、情報収集を行ってみましたので、今後数回に分けてなるべく詳しくレポートしてみたいと思います。 Selenium 2.0 数年前、弊社の自動テストツー
櫻です。 今回はiOS6.0で導入されたCocoa Auto Layoutの紹介です。 iOSのアプリで固定的な画面のレイアウトはInterfaceBuilderやUIViewのautoresizingMaskで楽に作成できますが、動的に画面のレイアウトを変更する必要がある場合はViewControllerのviewDidLoadやViewのlayoutSubviewsをオーバーライドして頑張ってるのではないでしょうか? iOS6からはCocoa Auto Layoutというものが導入されています。 (https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/AutolayoutPG/Articles/Introduction.html#//apple_ref/doc/uid/TP4001
こんにちは、間藤です。 最近、「オープンデータ」というワードをテレビで耳する機会がありました。ぼんやりとは、どんなものなのか理解できたものの、もう少し掘り下げてみようということで、情報収集してみました。 ということで、今回は「オープンデータ」について取り上げます。 まずは概要から 「オープンデータ」についての特集をテレビ番組で観たとき、思いだしたのが「Code for America」です。以下は、Code for Americaの創業者であるジェニファー・パルカ氏のTEDでのプレゼンテーション動画です。 ※日本語字幕付きで見るためには、Flash Playerがインストールされている必要があるようです。 エンジニアやウェブデザイナーが地方自治体に派遣され、新しいWebサービスやアプリケーションを、コストや期間をかけずに作成し、中には会社が設立されたケースもあるようです。つまり、新しいビジ
こんにちは、間藤です。 iOS7が正式リリースされて1ヶ月が経ちましたが、今回はiOS7で強化されたRemote Notifications(Push通知)の機能について取り上げてみます。また、Push通知を切っ掛けにして、コンテンツをダウンロードするサンプルも作成してみましたので、そのサンプルの挙動についても見ていきたいと思います。(確認した挙動については、私自身納得の行かないこともあったので、そのあたりについても触れます。) どんな機能強化なのか? 以下、iOS6までのPush通知の仕組みを表したものです。 iOS6までは、Push通知を受けたアプリがすぐに処理を開始できるわけではなく、ユーザがアプリをフォアグランドにする必要がありました。 それがiOS7になると以下のようになります。 アプリがバックグランドであっても、Push通知を受けるとすぐに処理を開始することができるようになって
こんにちは、石尾です。 Android端末のChromeをリモートデバッグする場合、Android SDKをインストールして、adbコマンド(Android Debug Bridge)を利用していました。 adbコマンドのリモートデバッグ これが当たり前だと思っていましたが、Chromeの拡張機能「ADB」を利用すれば、SDKをインストールする必要はありません。 PC: OS:Windows7(64bit) Chromeバージョン:30.0.1599.101 Android端末: OS:Android4.0.3 Chromeバージョン:30.0.1599.82 1.インストール PCのChromeからChrome Web Store - ADBにアクセスし、インストールします。 インストールすると、メニューに「ADB」アイコンが追加されます。 2.使ってみます PCとAndroid端末をU
Android SDKには、PDFのライブラリがない こんにちは、中山です。 ちょっと意外だったのですけれども、Android SDKには、PDFファイルを取り扱うためのライブラリがありません。 それではPDFファイルを表示したいときはどうするのか、というと、通常はIntentの仕組みを使って、外部のビューアアプリにその表示をまかせる、ということになると思います。 しかし、とは言いましても、やっぱりアプリ内でPDFを表示したい、というケースは出てくるものです。 「pdf.js」ライブラリは使えないだろうか? 少し前に、「Windowsストアアプリ内でPDFを表示するための、ある1つの方法」という記事で、Windowsストアアプリ内でPDFを表示する方法を紹介していました。 ここで利用していた「pdf.js」というライブラリは、Androidでも同様に利用できるみたいです。 しかしながら、難
はじめまして、武村です。 先日行われたFirefoxOS勉強会にて、最新の開発環境について紹介があったので実際に試してみました。 この記事ではその開発ツールの使い方を簡単に紹介します。 実際の開発手順については、張の記事をご覧ください。 Firefox OSアプリ開発でデバックするとき、みなさんは何を使っていますか。 実機があればそれに越したことはありませんが、日本ではまだ未発売のため持っている開発者の方は少ないでしょう。 おそらくほとんどの方がFirefoxブラウザのアドオン「Firefox OS Simulator」を使っていると思います。 ですがMozilla Japanの中の人曰く、「Firefox OS Simulatorはもう古い!」だそうです。(この記事のタイトルはここからいただきました) では何を使ったらよいか。今後は「App manager」という新しいアドオンを使いまし
こんにちは。櫻です。 今回はJava SE8からSwingの代わりに標準GUIライブラリになるらしいJavaFXをScalaで利用してみようと言うネタです。 お試しでJDK8で動作させましたが、JavaFX8の機能は試せていません。 以下の環境で試してみました。 JDK 1.8.0 b111 sbt 0.13.0 scala 2.10.3 scalafx 8.0.0_M2 JavaFXとScalaFX JavaFXはJavaのGUIライブラリでJDK8からはSwingに代わって標準のGUIライブラリになるそうです。 JavaFXについての詳細はJava技術最前線 - Java技術最前線:ITproが参考になります。 JavaFXではGUIの構成をxmlで記述する事ができ、それを編集するScene Builderというツールも提供されています。 iOSの開発でいうxibファイルとInterf
こんにちは、中山です。 「Chrome Apps(Chrome Packaged Apps)」盛り上がってきてますね! HTML5 + JavaScript + CSS で書かれるウェブアプリなのだけれども、ネイティブアプリのようにふるまうことのできる、というこのプラットフォームは、Googleが2013年9月に正式に発表したものです。 この「Chrome Apps」、現状は、PCやMacだけがターゲットのようです。(iOSやAndroidなどでは使えないみたい。) また、日本語での呼び方は「Chromeアプリ」となっているようですね。 「Chrome Apps」については、以下のページが参考になります。 Google、デスクトップアプリのように使える「Chromeアプリ」を発表 What Are Packaged Apps? 今回は、この「Chrome Apps」を実際に作って動かしてみ
はじめまして、斎藤です。 JavaScriptというと主にリッチなGUIを実装するためにクライアントサイドで使われる事が多いと思いますが、最近はサーバサイドのプログラミング言語としても注目されています。 今回はサーバサイドJavaScriptの本命と言われている「Node.js」(グーグルが開発したV8エンジン上で実行する環境)に、Webアプリケーションフレームワーク「Express.js」、NoSQLのデータベース「MongoDB」、MongoDB のオブジェクトモデリングツール「mongoose」を使った簡単なWebアプリのサンプルを作成してみました。 本記事ではインストールしてサンプルを動かすところまでを紹介します。 各ツールを用いたプログラミングに関しては、次回以降何回かに分けて紹介します。 インストール Node.jsはLinux,Windows環境どちらでもインストールできます
こんにちは、間藤です。 今回は、「Charles」というツールについて紹介したいと思います。 iPadからの通信をトレースするというシチュエーションで解説していきたいと思います。 I'm trying to debug a network problem. How do I get a packet trace? 以前、iPadのアプリを開発していたとき、そのアプリがWebサーバに対して行う通信を確認したい場面がありました。その際に、以下のページに行き当たりました。 Getting a Packet Trace 「ネットワークの問題をデバッグしたいんだけど、どうやればいいですか?」というQAに対する回答が記載されています。 そして、「iOS Packet Tracing」の項に、紹介されていたのが「Charles」です。つまり、Charlesは、Webサーバへの通信を行うアプリの通信デバッ
このページを最初にブックマークしてみませんか?
『iti.hatenablog.jp』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く