Facebook Twitter Google Maps RSS
formats

Android Wearに話しかけて電球の色を変える

こんにちは。陽気なシステム屋のうっちーです。

Googleのスマートウォッチ「Android Wear」が発売されてから半年ほど経ちました。
皆さん、活用されているでしょうか??

いまいち、何に使えるのかよくわからないかもしれませんね。

 

今回は、Android Wearに話しかけて音声認識を行い、インターネットに接続されているデバイスへ指示を出すアプリを作ってみたいと思います。

操作しているところの動画を撮ったので御覧ください。

Android Wearに話しかける

 

今回は、Philips社が販売している、hue というインターネット経由で操作できるランプを使用します。

 

ランプを赤色に点灯させたいので、「赤」と発音します。

おっと、滑舌が悪くて「若」と認識されてしまいました(笑)

もう一度やり直します。

認識されて

Androidデバイス経由でhueに命令を送りました。

会社の隅っこに置いておいたランプが、、

赤く点灯しています!! (赤く点灯している電球の写真を撮るのは難しいですね。。)

 

Philips hueはインターネット経由でWebの標準技術を使って様々な操作ができます。

インターネットに接続している一つのhueブリッジにつき、50個までライトを制御することができます。

 

このように、それぞれでは単純な機能しか持たないデバイスでも、複数組み合わせることによって、面白いアイデアを実現できるのではないでしょうか。

 

※アイエンターでは様々なデバイスを組み合わせたアプリ開発の実績があります。お気軽にアイエンターへご相談ください!

 

formats

iOSおすすめライブラリベスト3!!

 
こんにちは。

特に使った方が楽!とか見た目かっけー!とか思った3つのライブラリを紹介します。

*(MIT)はライセンスの事をさしています。

 

 

1 : MaterialKit (MIT)

Googleが去年発表したのMaterial DesignをiOSでもやっちゃおうというライブラリです。

しかもswiftも対応してます。

使い方ですがボタンとテキストフィールドの使い方は以下の通りです(他にもコンポーネントはあります。)

・MKButton(ボタン)

let button = MKButton(frame: CGRect(x: 10, y: 10, width: 100, height: 35))
button.maskEnabled = true
button.rippleLocation = .TapLocation
button.circleLayerColor = UIColor.MKColor.LightGreen

 
・MKTextField(テキストフィールド)

textField.rippleLocation = .Left
textField.floatingPlaceholderEnabled = true
textField.placeholder = "Description"
textField.layer.borderColor = UIColor.MKColor.Green.CGColor
textField.circleLayerColor = UIColor.MKColor.LightGreen

 

 

2 : TWTSideMenuViewController (MIT)

あのFIFA公式アプリのメニューが簡単に実装できるライブラリです。

私は見た目が素敵だと思います!

簡単な使い方は↓です。

AppDelegate.mの-application:didFinishLaunchingWithOptions:内に以下記載

—————————————————-

self.menuViewController = [[TWTMenuViewController alloc] initWithNibName:nil bundle:nil];
self.mainViewController = [[TWTMainViewController alloc] initWithNibName:nil bundle:nil];

self.sideMenuViewController = [[TWTSideMenuViewController alloc] initWithMenuViewController:self.menuViewController mainViewController:[[UINavigationController alloc] initWithRootViewController:self.mainViewController]];
self.sideMenuViewController.shadowColor = [UIColor blackColor];
self.sideMenuViewController.edgeOffset = (UIOffset) { .horizontal = UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone ? 18.0f : 0.0f };
self.sideMenuViewController.zoomScale = UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone ? 0.5634f : 0.85f;
self.sideMenuViewController.delegate = self;
self.window.rootViewController = self.sideMenuViewController;

—————————————————-

後、選択した処理はTWTSideMenuViewControllerDelegateで返ってきます。

 

 

3 : SVProgressHUD (MIT)

とても有名なライブラリですよね。

使い方は以下の通りです。

・QuartzCore.framework

を追加します。

使いたいクラスで以下を記載

—————————————————-

#import "SVProgressHUD.h"

//インジケーターを表示
[SVProgressHUD show];

//インジケーターを消す
[SVProgressHUD dismiss];

—————————————————-

<span style="font-family: Georgia, 'Times New Roman', 'Bitstream Charter', Times, serif;font-size: 13px;line-height: 19px">はい。終了です。簡単すぎますね。</span>

 
 

以上になります!

他にもたくさん素敵なライブラリが存在しますのでCocoaControlsなどで素敵なライブラリを見つけてみてはいかがでしょうか。
(もし素敵なライブラリがありましたらコメントまでお願いします!!)
 

Tags:
formats

メインストリームサポートと延長サポート

こんにちは、テスタです。

今回は、題名の通りメインストリームサポートと延長サポートの

違いについて書いていこうと思います。

 

メインストリームサポートとは新機能追加があります。

例でいうと、IEの最新版を対応するとか。

延長サポートはシステムの不具合やセキュリティの修正などのみが行われます。新機能の追加は行われていません。

最近ですと、Windows7のメインストリームサポートは終了しました。

なので、これからはセキュリティやOSの不具合のみに対応していく形になります。

formats

アプリのトラッキングについて

今回、あるアプリをリリースするにあたり、言わずとしれたGoogle Analyticsでのトラッキングを
前提として開発を進めていたのですが、考えてみると、アプリトラッキングツールって
いろんなのがあるよな~、ということで今回アプリトラッキングツールについて
調べてみました。ちょっと情報古いかもですが。。。

 

 

▼そもそもアプリトラッキングツールとは

端末トラッキングが機能面の肝となります。iOSであればApp Store、
AndroidであればGoogle Playのインストール経路、インストール数
などを計測する点と、インストール後のアプリ内の経路を分析するこ
とができる点がWEB解析ツールとは異なります。

 

 

▼トラッキングツールの機能
1)インストールの流入経路分析
自然流入のインストール数、DSPやアドネットワークごとの広告パ
フォーマンスの計測に役立てることができます。
2)インストールしたユーザー層の分析
アプリの利用解析、課金率の解析などロイヤリティの高いユーザ層
を定義し、アプリの改修やプロモーションに役立てることができます。
3)経路分析
アプリ内のユーザー経路を分析し、離脱率の高いスクリーンやタッ
プされやすいボタン、アプリのゴールとなるコンバージョンの達成度
などを詳細に分析することでアプリの改修に役立てることができます。

と、長々と書いてみましたが、ようは無料のツールはGA以外にもあり、
有料のツールは機能がツールによっていろいろ違うよってことです!

 

 

▼トラッキングツール一覧

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

アプリトラッキングツールをうまく活用して、収益アップやユーザビリティの改善に生かしたいですね!

iPhoneアプリはこちら
Androidアプリはこちら

formats

HashMapとは

Published on 2015年1月16日, by in 未分類.

こんにちは!
陽気なシステム屋の一員のぴーすぬです。

2015年になってから2週間が過ぎましたが、皆様初詣には行かれましたか?
大阪支店では仕事始めの日に、会社のすぐ横にある神社へ行っておみくじを引きました!
大吉が出たメンバーもいたので、幸先が良いですね!

ということで、皆様2015年も宜しくお願い致します。

年始めのブログ、何を書くかと言うとJavaのHashMapについてです!
既にご存知の方も多いと思いますが温かい目で見て下さい。。

私は入社後の研修ではC#を学んでいましたが、
OJTに入ってからはJavaも触るようになりました。
そんな中、先輩社員からのクイズで知ったのがこのHashMapです。

HashMapはキーと要素がペアになっていて、
自分で好きなキーと要素を登録することが出来ます。
では実際にどんなものなのか見ていきましょう!

まず、new演算子を使ってHashMapのオブジェクトを作成します。
 
HashMap<型1,型2> 変数名 = new HashMap<型1,型2>();
例:HashMap<String,String> hashmap = new HashMap<String,String>();
 
型1にキーの型を、型2には格納する要素の型を書きます。
次に、実際に要素を格納してみましょう!
格納には「put」を使います。
 
変数名.put(“キー”, “要素”);
例:hashmap.put(“いちご”, “strawberry”);
 
これで「いちご」というキーに「strawberry」という要素が格納できました!
そして格納した要素を取り出す際には「get」を使います。
 
変数名.get(“キー”);
例:hashmap.get(“いちご”);
 
キーを指定することで、そのキーに格納した要素を取り出すことが出来ます。
例でいうと「strawberry」です。とても簡単ですね!

今回は両方String型でしたが、
キーをString、要素をIntegerなどバラバラにすることももちろん可能です。
そしてputとgetだけではなく、
他にもremoveやsizeなど、便利なメソッドもあるので使ってみて下さい!

ではまた!
 
アプリ開発実績はこちら

formats

iOSのシェアと開発環境について

こんにちは。陽気なシステム屋です。
現在私が対応しているアプリがiOS6をサポートしているため、iOSのシェアについてまとめてみました。

「iOSのシェアについて」
以下、Appleの開発者向けのページ(https://developer.apple.com/support/appstore/)に
記載されていた内容を抜粋したものです。
※2015年1月5日時点のシェアです。

iOS8:68%
iOS7:29%
その他(iOS7以前のバージョン):4%

「開発環境について」
iPhoneアプリ開発をするためにはXcodeという開発環境を使用することになります。
そして実物のiPhoneが手元にない場合はシミュレータを用いてアプリの動作を確認します。
iOS6~iOS8での動作確認する場合、以下のようにXcodeが複数バージョン必要となります。
幸い複数のXcodeを共存させることは可能ですので、iOS6~iOS8をサポートする場合は
Xcode5、Xcode6を使用すれば問題ありません。

iOS6:Xcode5にて確認可能
iOS7:Xcode5、Xcode6にて確認可能
iOS8:Xcode6にて確認可能

複数バージョンのXcodeを使用する場合の例を以下に記載します。
1.Xcode5をインストールする
2.手順1でインストールしたXcode(Xcode.app)を別の名前に変更する
後で見て分かりやすいようにXcode5.appのようにバージョンをつけてあげると良いかもしれません。
3.Xcode6をインストールする
4.使用したいXcodeをXcode.appにリネームし、プロジェクト起動時に選択してあげることで任意のXcodeで起動することができます。

アプリ開発の実績はこちら。

formats

【Apple Watch】開発するにあたり

明けましておめでとうございます。

本年度も宜しくお願い致します。

 

サービスDivのおいちゃんです。

2015はApple Watchが発売される年ということで、弊社でもいろいろ調査してみることになりました。

Apple Watch向けのアプリ開発するには「WatchKit」というフレームワークを使用します。

 

WatchKitでは主に3種類の開発が可能です。

—-

  • Watch App

Apple Watch上で操作ができる

  • Glance

iOSアプリの情報を表示する

  • Notification

—-

通知を表示する

 

ものすごくざっくりと挙げてしまいましたが、詳しくはいろんな方がまとめてくださっているのでそちらを参考にしてみてください。

次回からは実際に開発した内容をアップしていきたいと思います。

 

 

 

 

 

Tags:
formats

Cordovaの開発環境を構築する

Published on 2014年12月19日, by in 未分類.

ども!陽気なシステム屋のなんちゃんです。

すっかり季節も変わりもう冬ですね。

休暇中にアプリやサービスを作ってやろう!!と考えている方もいらっしゃると思いますが、時間なんてあっという間に過ぎていきますよね。

 

そこで!今回は既存資産やソースコードの共通化を図り、効率良くAndroid、iPhoneアプリのクロスプラットフォーム開発ができるCordovaをご紹介したいと思います。

内容やAPIなどは本家のサイトをご覧頂くとして(笑)、まずは何より開発環境を構築する手順をご紹介します。(今回はMacへの構築手順です。)

 

■Node.jsをインストール

こちらへアクセスして「Install」をクリックします。

ダウンロードしたpkgファイルをダブルクリックし、インストーラに従いインストールを行います。

 

■Cordovaをインストール

下記のコマンドをターミナルで実行します。

$ sudo npm install -g cordova

■Apache Antをインストール

下記のコマンドをターミナルで実行します。

$ wget http://ftp.yz.yamagata-u.ac.jp/pub/network/apache/ant/binaries/apache-ant-1.9.4-bin.tar.gz

ダウンロードしたファイルを解凍します。

$ tar zxvf apache-ant-1.9.4-bin.tar.gz

binフォルダに追加します。

$ <span style="font-family: Georgia, 'Times New Roman', 'Bitstream Charter', Times, serif;font-size: 13px;line-height: 19px">sudo mv apache-ant-1.9.4 /usr/bin/</span>

環境変数を設定します。

$ export ANT_HOME=/usr/bin/apache-ant-1.9.4
$ export PATH=$PATH:$ANT_HOME/bin
※Androidの開発環境は構築済みとします。androidコマンドへのパス追加など。

 

■Cordovaプロジェクトを作成する

プロジェクトを配置するフォルダを作成し、下記のコマンドを実行します。

$ mkdir -pv ~/Documents/Cordova

※フォルダ作成

$ cd ~/Documents/Cordova/

$ cordova create myapp com.sample.app MyApps

 

■実行する

実機をPCと接続し、下記のコマンドを実行します。

$ cordova run android

もしくは

$ cordova run ios

※Apple Devcenterでの実機の登録などは行っておいてくださいね。

 

以上の手順で初期状態のアプリが実機で実行されます。

Cordovaを用いた開発では適しているアプリとそうでないものがありますが、選択肢の1つとして考えれば生産効率性をあげることも可能なのかなと思っています。

私も休暇中にCordovaをモノにしてみせます!!

 

弊社の開発実績はこちらから。

formats

Playgroundを使ってみよう。

みなさんこんにちは。
陽気なシステム屋の原田です。

今回は、Xcode 6で追加されたPlaygoundについてです。

Playground(遊び場)という名前の通り、アプリを実行しなくてもコードをいろいろ試すことができます。

では、どのように使うのか?

まずは、プロジェクトにPlaygroundファイルを追加します。

New File… より Playground を選択し、

ファイルを保存すると、

こんな感じでプロジェクトに追加されます。

画面はどのような構成になっているかといいますと、左側がコードエディター、右側が実行結果表示となっています。

もう既に、「var str = “Hello, playground”」というコード記述されていて、その結果が表示されています。
では、「1 + 2 + 3 + 4」というコードを記述してみると、どうなるでしょう。

実行結果に「10」が表示されました。

続けて、1から10までを足すコードを書いてみます。

実行結果は「55」です。
これだけだと何も面白くないのですが、Playgroundの面白いところはここからです。
「sum += i;」の実行結果のところにある”+”マークをクリックしますと、for文の中の処理がグラフ表示されます。

他にもViewやアニメーションも確認できます。

このように、処理途中の状態を直接的に確認できるのはとてもありがたいです。
このような仕組みがないと、ログやブレークポイントを設定して、実行して、状態を確認して、違ったから別の場所にログやブレークポイントを設定して、また実行して・・・ということを繰り返さなければなりません。
これが地味に時間がかかってしまうので、Playgroundを使うことで開発のスピードが早くなりそうですし、単純に使っていて楽しくなっていました。
Playgroundの名前の通り、いろいろと遊べそうです。

アプリ開発の実績はこちら。

formats

バージョン管理システムってなーに??

こんにちわ!
駆け出しプログラマー安東です。

業務や最近気になったことを取り上げて参りました。
今回は業務で使っているバージョン管理システムについて
書いて参ります。

バージョン管理システムは大きく分けて2つあります。

・集中管理方式
 全ての人が使うリポジトリが中央に1つあり、
 常にそのリポジトリに変更を記録するシステムの事を指します。
 例えばSubversionなどです。

・分散管理方式
 リポジトリが複数存在し、 相互のリポジトリを同期させ、
 各リポジトリの所有者が他のリポジトリの差分を取得します。
 例えばGitなどです。

そんなバージョン管理なのですが、
なぜバージョン管理をするのかって私は業務を始めて初めの頃は思っておりました。
バージョン管理をすることたくさんのメリットがあり、便利なんです。
私がとってもバージョン管理って便利だー!!って思ったのが

■アジリティを高めてくれる
  
■差分を確認する事で、すぐに変更点がわかる

■アジリティを高めてくれる
  そもそもアジリティで?マークが頭に浮かぶ方もいらっしゃると思います。
  ※私はわかりませんでした。。。
    アジリティとは簡単に申し上げますと効率的な開発方法などを現す表現です。
  
  どの辺が効率的なのか、例えばあるプロジェクトで開発しているアプリケーションで
  リリース直前にバグを発見してしまった場合、
  バグが発生する以前のバージョンに戻す事ができます。
  それによって、バグの対応もスムーズに行う事ができるのです!

■差分を確認する事で、すぐに変更点がわかる
  私が一番便利だ!って思う機能です。
  差分を確認する事で、どこの箇所でバグが起きてしまったのかを確認する事ができたり、
  修正箇所の確認もすることができます。
  私はコミットする際に差分を確認する習慣が身につきました。

まだまだ多くのメリットがあると思います。
是非バージョン管理を使って実感してみて下さい!

でもバージョン管理なんて難しい用語がたくさん出てきて理解しにくいと思います。
そこで、最後に簡単によく使う機能の説明を致します!

■コミット
■アップデート
■リゾルブ

■Commit
  一番良く使う機能で、簡単に説明すると自分が修正したファイルや新規ファイルを
  リポジトリに反映させる事を言います。

■Update
  これも良く使います!
  他の作業者がリポジトリにコミットしたファイルを自分の作業領域のファイルに反映させる事を
  指します。

■Resolve
  アップデートを行った際、同一箇所に異なる変更を加えていた場合、衝突がおこってしまい
  アップデートをする事ができません。
  それを解消する際にResolveします。
  ※衝突したらすべてResolveしてしまうと大変危険なので、
    衝突箇所の差分をよく読んでからResolveしましょう。
    場合によっては自分の修正より、他の方が行った修正の方が正しい場合があるからです。
  

今回はこの辺で失礼させて頂きます。
最後まで読んで下さりありがとうございました。


ECサイト構築はこちら


ホームページ製作はこちら