Developer's Blog

Android 開発 アーカイブ

Google for Mobile: お気に入りの3つのアプリになるために!

Fenrir Advent Calendar 2015

こんにちは。アプリケーション共同開発部の戸澤です。

Fenrir Advent Calendar 2015 もゴールが見えてきた 23 日目の記事です。 本日は祝日のため、お休みの方もいらっしゃると思いますが少しばかりお付き合いください。

gfm

少し前のことになりますが、11/9 (水)にパシフィコ横浜で開催された「Google for Mobile」というイベントに参加しました。 

このイベントは「Develop. Engage. Earn.」というテーマでアプリを開発しユーザーに届け収益化するまでを26のセッションで紹介するもので開発者向けの実装やテクノロジーを見せるセッションが多いいつものセミナーとは少し違ったアプローチでしたが Android の市場を知る上でとても興味深い内容でしたのでご紹介したいと思います。

続きを読む

かわいいプログラミング言語 Kotlin を既存の Android プロジェクトに導入したい

Fenrir Advent Calendar 2015

こんにちは、アプリケーション共同開発部 開発担当の西林です。

これは、 Fenrir Advent Calendar 2015 の11日目です。

私は公私共に Android アプリの開発を行っていますが、先日スマートフォンのテザリングで Android Studio とプラグインのアップデートをしていたら、1ヶ月のデーター通信が 10GB を超えて低速モードになってしまい、通信費と心にグッと来ました…。

今日はそんな Android の界隈で最近話題になっているプログラミング言語、 Kotlin について紹介します。

続きを読む

iPhone / iPad に負けていない!!NTT docomo の冬春新作に期待!!

 docomo

こんにちは、渡邊です。

グランフロント大阪 北館 2F にある docomo OSAKA(ドコモショップグランフロント大阪店)で、2015 – 2016 冬春モデルを先行展示しているということで、ちょっと覗いてきました。9 月 30 日からのイベントだったので少し乗り遅れましたが、来年発売予定の新作を手にとって見ることができて満足です!!

続きを読む

拡張性は無限大!Android の新コンポーネント RecyclerView の真価を探る

Fenrir Advent Calendar 2014

こんにちは。共同開発部の北川です。

Fenrir Advent Calendar 2014 20日目です。 今年、もっともグッときた出来事といえば Android 5.0 Lollipop のリリースですよね! Lollipop では Material Design が採用され、色と重なりでアプリの世界観を表すようになりました。これまでの Android とは異なり、アニメーションやインタラクションを重視するデザインへと進化しています。

見た目の変化もさることながら、Lollipop では機能面も数多く強化されています。 その中の一つ、RecyclerView は非常に柔軟で表現力の高い UI コンポーネントです。 RecyclerView を使った新しい表現に挑戦してみました。

RecyclerView

続きを読む

Bluetooth無線による電気錠開閉制御アプリを作ってみました!

こんにちは、営業担当の片桐です。 Fenrir Advent Calendar 2014 楽しんでいただけてますでしょうか?私は、今回残念ながら指名はされませんでした・・・。残すところわずかになりますが、引き続きお楽しみください!

 さてさて、話題はがらっと変わるのですが、Bluetooth無線を使ったちょっと面白いアプリを作ったので、この場を借りてご紹介です!

続きを読む

グッときた瞬間を記録するAndroidの新しいカメラAPI

adventcalendar2014-09

こんにちは!共同開発部 開発担当の戸澤です。

クリスマスまでの毎日のお楽しみ、Fenrir Advent Calendar 2014 の 9 日目です!
今回のテーマは 「2014年にグッときたコレ」 は Android 5.0(Lollipop) のカメラAPI です。

Android 5.0には様々な新機能が追加されていますが、今回はあえてクリスマスやお正月、グッときた冬の思い出を記録するために大幅に強化されたカメラAPIを紹介したいと思います。

続きを読む

今最も注目されている設計手法!MVVM を Android アプリ開発に取り入れてみた

android-mvvm-top

こんにちは。共同開発部開発担当の北川です。

クロスプラットフォームなアプリ開発では Xamarin の使用はビジネスロジックの共通化が可能となり非常に効果的です。
すべてのアプリを単一の言語(C#)で実装することができる点だけでも魅力的ですが、MVVM 設計によりその再利用性を高めている点こそがその真価を発揮しているとも言えます。

私は Xamarin でのアプリ開発を通して MVVM 設計のすばらしさを経験してしまいました。もう後には戻れません。
Java や Objective-C でのアプリ開発でも MVVM 設計は開発スピードと品質確保を両立するために有効であるはずです。
今回は Android アプリ開発(Java)で MVVM を使うとどうなるか、紹介してみたいと思います。

続きを読む

【連載】Bluetooth LE (5) Android 4.3 で Bluetooth LE 機器を使う

Nexus4とSensorTag

こんにちは。共同開発部の北川です。

Bluetooth LE (以降 BLE) 連載第5回です。連載第4回まで iOS アプリと Windows ストアアプリから BLE 機器を扱いました。
第5回は Android 4.3 端末から BLE 機器へ接続します。

続きを読む

Android のログ出力をスマートに


blog_picture

こんにちは。東京で開発担当をしています志田です。
初のブログ執筆となりますが、 この度は私の知っているノウハウを少しでも共有できればと思い拙い筆を、もとい叩き慣れたキーボードを手に取って云々という次第です。

今日のテーマはずばり Android 開発における “スマートな” ログ出力について!! です。

基本中の基本と言える内容ではありますがそれ故に大事な部分でありますので、どうログを出力するのが最適かわからない、という場合に参考にしていただければと思います。

続きを読む

Android で Flash を使う

 

こんにちは。開発担当の福井です。

Android でアプリを作るとき、ちょっとした更新などはアプリのアップデート無しに行いたいのでコンテンツを WebView で表示する、なんてあるあるですよね。スマートフォン界隈では html5 化が進んではおりますが、web でリッチコンテンツといえばまだまだ Flash が健在です。Android では Flash が使えますので、web 側の実装に Flash を使うなんてことは珍しいことではありません。「Android だから Flash が動く!」なんて安易に採用しがちですが、Flash を利用するうえでよくある落とし穴をいくつかご紹介します。WebView を使う際のヒントにしていただければ幸いです。

続きを読む

Androidでドラッグアンドドロップ

こんにちは。
Android 開発担当の岸本です。

今回は Android でのドラッグアンドドロップの実装についてです。
※Android OS 3 系以上が対象です。


Android のアプリを開発していると、
ドラッグアンドドロップで View の並び替えをしたいという要望があります。
Android OS 2 系だと、ドラッグアンドドロップを実現する API がなく、
全て自分で実装しなくてはならず、非常に大変です。

ですが、Android OS 3 系以上だと、簡単に実装できます。

続きを読む

[追記あり] Android 開発で気をつけたいこと 〜変数名と Context について〜

2016年5月27日追記

こんにちは。共同開発部 開発担当の戸澤です。

2012年に書かれた以下の記事内容に関しては、ApplicationContextの使用を推奨する点で不適切であるとご指摘をいただいています。 詳しくは http://ytrino.hatenablog.com/entry/2016/05/26/033936 をご覧ください。

誤解を招かないよう、この追記分ではみなさんのご指摘を踏まえた Context の使い方について追記しています。オリジナル記事は後半に残しています。みなさまのご指摘に感謝します。

Contextの使い方

AndroidにおけるApplicationContextとActivityContextの使い分けについてですが、 Application全体のライフサイクルでcontextに依存する必要がある処理以外は、基本的にActivityContextを用いるべきです。

ApplicationContextを使用する状況

アプリケーション全体で使用する長いライフサイクルを持つインスタンスでcontextに依存しているもの。

例)Realmの初期化

RealmConfiguration config = new RealmConfiguration.Builder(context).build();
Realm realm = Realm.getInstance(config);

ActivityのContextを使用する状況

Android DeveloperのGoogle +への投稿(https://plus.google.com/+AndroidDevelopers/posts/36bAFHpKbCH)でも説明されていますが、Viewを生成する場合は、ApplicationContextを用いるとActivityに設定されたThemeを適切に設定することができずデザイン上の不具合を招くケースが発生します。
Activity上のViewやインスタンスでcontextを渡す必要がある場合は、以下の使い方が適切です。

・Activity内で使う場合

 → this(自身をcontextとして渡す)

・Fragment上で使う場合

 → Fragment.getActivity()でFragmentを載せているActivityを取得する

まとめ

Contextは依存するインスタンスのライフサイクルを考慮して適切なものを使用する必要がある。

・アプリケーション全体のライフサイクルで使用する場合のみ、十分に検討した上でApplicationContextを使う。

・ViewやIntentの生成やFragment上で使用するcontextにはActivityのcontext(this)を用いる。

・AlertDialog.Builder等直接getActivity()できないがViewをinflateするのにcontextが必要なケース。

 → getContext()メソッドが用意されているのでそちらを使う。

今後もFenrir Developer’s Blog では開発者の皆様に有益な情報をご提供できるよう、エンジニア一同努めてまいりますのでよろしくお願いいたします。

オリジナル記事

以下、2012年当時のオリジナル記事です。冒頭に書いたような指摘をふまえてお読みください。


こんにちは。共同開発部でエンジニアをしている森河内です。

最近は Android の開発を担当しています。Androidの開発では設計から開発まで担当することが多いです。最近ソースコードレビューをする機会があり、レビューしていて取りあえず気をつけてほしいなと感じたことを今回は2点ほど書きました。

変数名の付け方

変数名は分かりやすく命名するというのは基本だと思います。個人的には日本語をアルファベットで書くのはかっこわるいような気がするので、極力英語で書くように努めています。また、Android では以下のようなルールを守ることが推奨されています。

public と static 以外 : 変数名は m で始める
static : 変数名は s で始める
public : 小文字で始める
定数 : アンダースコアを含む大文字だけにする

続きを読む

Android アプリの描画を高速化する 5 ステップ

banner

 

こんにちは、Sleipnir Mobile for Android 開発担当の西田です。

今回は、Sleipnir Mobile for Android でも実施している Android アプリの描画チューニング手法を紹介します。

続きを読む

Ruby + Mecab で日本語テキストから頻出キーワードを抽出する

こんにちは。Sleipnir Mobile for Android 開発担当の西田です。

最近 Android アプリで、日本語テキストから頻出キーワードを抽出したいなあ等といったことを考えており、ちょっと調べてみました。

まずは 日本語の形態素解析ライブラリの Mecab を使おうと思いつくわけですが、これをアプリに組み込むにはちょっと辞書のサイズが大きすぎる感じです。(50MB 以上!)なのでどっかのサーバーで API を用意してやるのが良さげな感じです。

Mecab には各種スクリプト言語のバインディングが用意されているので、今回は Ruby でやることにしました。

続きを読む

Android アプリでフォーカスを意識してみる

はじめまして。
開発担当の岸本です。
主に、 Android アプリの開発を行っています。

 

本ブログでは、 Android アプリ開発の記事が少なく、
なんと、カテゴリーに Android 開発がありません!!!すごく寂しいです。
なので、私が Android の記事を書いて、カテゴリーに追加して貰えるよう頑張ります。

 

では、本題です。
突然ですが、 Android アプリを使用する時に、
フォーカスを意識した事がありますでしょうか?
タブや EditText ではあるかもしれません。
ボタンはどうでしょうか?
そもそも、フォーカス状態のボタンを見た事がありますか?

続きを読む

Copyright © 2019 Fenrir Inc. All rights reserved.