タグ

ブックマーク / techbooster.org (15)

  • Unixドメインソケットを利用してプロセス間通信を行う | TechBooster

    Androidのアプリケーションは、それぞれが別プロセスで起動しているため、 他アプリケーションとの通信を行う際には、IntentやServiceなどを利用したデータの受け渡しを行う事が多いでしょう。 エントリでは、Unixドメインのソケット通信を利用して他アプリケーションと通信する方法を紹介したいと思います。 Unixドメインのソケット通信とは、通常インターネットで利用しているソケット通信(INETドメインソケット通信)とは異なり、ネットワークを介さず、端末内の別プロセスとソケット通信を行います。 INETドメインのソケット通信の記事はこちらになります。 Socketクラスを用いてソケット通信をする ServerSocketを使用してクライアントからデータを受信をする エントリでは、Server側、Client側共にJavaで作成していますが、もちろんNDKを利用したC/C++ライブ

    Unixドメインソケットを利用してプロセス間通信を行う | TechBooster
  • Android 5.0 Lollipopの開発者オプション詳細解説 | TechBooster | TechBooster

    13項目がデバッグとしてまとめられています。「疑似ロケーションを許可」では疑似的な位置情報の利用を許可します。位置系アプリケーションでは便利な機能です。「デバッグアプリを選択」は項目名からはわかりませんが、アプリケーションの起動前にデバッガをアタッチできる機能です。「Wi-Fiを強制的にモバイル接続に切り替える」は優先的にモバイルデータ通信を利用します。 View HierarchyでView構造をチェックする 開発者オプションのなかに「表示属性検査を有効にする」という不思議な項目があります。これは英語表記のほうがわかりやすいかもしれません。英語では「Enable view attribute inspection」、Viewクラスの属性情報を監査するという意味だと思いますが、直訳したのでしょう。 利用には、チェックボックスを有効にしてから、Android Studio(またはEclips

    Android 5.0 Lollipopの開発者オプション詳細解説 | TechBooster | TechBooster
  • GCMを使用してAndroid-PHPでPUSH通知を実装する | TechBooster

    GCM(Google Cloud Messaging Service)はAndroidでPUSH通知を行うためのGoogleのサービスです。 ※記事はGoogle Cloud Messaging for Android の非推奨化に伴ってGoogle Play servicesに対応した版に@mhidakaが加筆、改定しました。 対応したプロジェクトファイルはGCMSampleからダウンロード可能です GCMを使用するとLINEなどのメッセージングアプリが実装しているPUSH通知機能を簡単に実装できます。PUSH通知は情報をリアルタイムで送信できることから、昨今のアプリ開発では重要視されている機能です。 この記事ではサーバーではポピュラーな言語であるPHPを使ってサーバー実装を紹介します。 詳細は以下から。 サンプルコードは下記からダウンロードできます。 GCMSample1.zip

    GCMを使用してAndroid-PHPでPUSH通知を実装する | TechBooster
  • AndroidでViewFlipperを利用して、Viewを切り替える方法/Getting Started | TechBooster

    Androidでは、ViewFlipperを利用することで、ViewやLayoutを切り替えることが可能です。 一度に表示可能な子Viewは一つだけですが、複数の子Viewをスライドショーのように連続的に切り替えたり、ボタンを押すことで手動で切り替えたりすることができます。 今回は、以下の4つの機能について、サンプルアプリを元に実装方法を解説します。 スライドショー(自動切替)の開始(自動/手動) スライドショー(自動切替)停止 手動切替(次の画像) 手動切替(前の画像) 今回は次の2つのサンプルを例に、ViewFlipperの使い方を解説します。 1.ボタン操作によるViewの切り替え ボタンを押すことで、手動でスライドショーを開始したりViewを切り替えを行うシンプルかつ基的な利用方法です。 各種ボタンは、左から自動切替開始、手動切替(次画像)、手動切替(前画像)、自動切替停止となっ

    AndroidでViewFlipperを利用して、Viewを切り替える方法/Getting Started | TechBooster
  • Android 定数値リソースとは | TechBooster

    今回は文字列や色、寸法などの定数値リソースについて詳しく見ていきます。 色 「色」に関するリソースはres/values/colors.xml以下に格納します。 ファイル名は任意です。 色リソースはcolors.xmlに以下のように記述します。 <?xml version="1.0" encoding="utf-8"?> <resources> <color name="background">#FFFFFF</color> <color name="foreground">#000000</color> </resources> 色の指定にはいくつかのフォーマットがあります。 #RGB #ARGB #RRGGBB #AARRGGBB RはRed、GはGreen、BはBlueで、AはAlpha(透過度)です。 定義した色リソースはプログラムから以下のように参照できます。 int bgcol

  • NavigationDrawerをつかって、スライド式のメニューを実装する | TechBooster

    Androidアプリケーションのアクションバーの左側に表示できるアプリケーションアイコンには、アップナビゲーションを設定することができました。新しくサポートパッケージに追加された、NavigationLayoutを使うことで、UPナビゲーションの代わりに画面左からニュッと出てくるメニューを表示させることができます。 このメニューをナビゲーションドロワーと呼びます。エントリでは、ナビゲーションドロワーの使い方を紹介していきます。 ナビゲーションドロワーの使いどころ ナビゲーションドロワーは今の流行のUIだと言えるでしょう。さて、このUIはどのような時に効果的に利用出来るのでしょうか。たとえば、Androidにはトップレベルのアプリ画面を切り替える方法として、ナビゲーションドロワーの他にViewPagerとTabを利用したものがあります。このViewPagerとTabを利用したケースと、ナビ

    NavigationDrawerをつかって、スライド式のメニューを実装する | TechBooster
  • Android 画像をアニメーションさせる方法 | TechBooster

    詳しい説明は続きからどうぞ。 それでは各アニメーションの使い方を順番に紹介していきます。 以下のようなImageViewオブジェクトに対してアニメーションを適用させてみます。 ImageView img = (ImageView) findViewById(R.id.ImageView01); AlphaAnimation オブジェクトの透明度を変化させるアニメーションです。 フェードイン・フェードアウトのような効果になります。 AlphaAnimation alpha = new AlphaAnimation(1, 0.1f); // 透明度を1から0.1に変化させる alpha.setDuration(3000); // 3000msかけてアニメーションする img.startAnimation(alpha); // アニメーション適用 AlphaAnimationのコンストラクタに渡

    Android 画像をアニメーションさせる方法 | TechBooster
  • Activity&Fragmentライフサイクルポスター | TechBooster

    Activity&Fragmentのライフサイクルポスターを公開、PDFを配布します。 2014年12月21日、「TechBooster出張所」コミュニティとしてABC2014wにバザール出展しました。 コミュニティブースでは、ライフサイクルのA2ポスターを無料で頒布しました。 目的は、Android開発者の支援です(また自らが欲しかったこともあり…)。 当日は好評のうちに用意した300部すべてを配布し終えました。このたび、開発情報を広く共有するために、Webサイトでも同様に公開し、PDFを配布します。 Activity & Fragment ライフサイクル図 [PDF] Androidにおいてライフサイクルは重要な考え方ですが複雑な部分もあるため、日語で分かりやすく解説したチャートを作成しました。開発での確認に役立てていただけると幸いです。 PDFのオリジナルサイズはA2変形のため、印

    Activity&Fragmentライフサイクルポスター | TechBooster
  • Android 位置情報を取得するには / Getting Started | TechBooster

    AndroidではGPSやネットワークを利用して端末の位置情報を取得することができます。 また、位置情報の精度や消費電力の程度を予め指定しておくことが可能なため、 その時々に最も適した方法で位置情報を取得することができます。 位置情報を取得する手順としては以下のようになります。 パーミッションを設定する LocationManagerを取得する ロケーションプロバイダの条件を指定する 位置情報リスナーの実装をする 位置情報リスナーの登録と更新間隔を設定する 詳細は続きからどうぞ。 パーミッションを設定する はじめにアプリから位置情報を取得するためにパーミッションの設定を行います。 位置情報をどのデバイスから取得するかによって設定するパーミッションが異なります。 用途に応じてマニフェストファイルに適切なパーミッションを設定してください。 ・GPSから位置情報を取得する場合 <uses-per

    Android 位置情報を取得するには / Getting Started | TechBooster
  • android4.0でナビゲーションバーおよびシステムバーの表示状態を切り替える方法 | TechBooster

    Androidには、メールの通知や常駐アプリの起動を知らせてくれるステータスバーが、最初から用意されています。 Android2.xではそのステータスバーの表示/非表示を、アプリ内で設定することができました。 フルスクリーン表示のアプリケーションを作る そして、Android3.0からは、ユーザーの操作を補助するボタンや、ユーザーへの通知などを行うシステムバーが追加されました。 図1:Android4.0タブレットのシステムバー そしてAndroid4.0では、新たにNavigation Bar(以降ナビゲーションバー)が追加されました。 図2:Android4.0ナビゲーションバー ナビゲーションバーは、ハードキーを持たない端末において、画面上にその代わりとなるホームボタンなどを配置します。 Android4.0では、これらの各種バーの表示状態を、アプリ内で切り替えることができます。 今

    android4.0でナビゲーションバーおよびシステムバーの表示状態を切り替える方法 | TechBooster
  • Android データを簡単に保存する方法(SQLite編) | TechBooster

    Androidでデータを保存する方法として「Preference」の使い方を7/1の記事で紹介しました。 今回は組み込み機器向けのリレーショナルデータベース管理システムである「SQLite」を使ったデータの保存方法についてご紹介します。 詳細は続きからどうぞ。 SQLiteは上で述べたように主に組み込み機器での使用を想定したコンパクトなデータベース管理システムです。 各アプリケーションのディレクトリ以下に指定したファイル名でデータベースの実体であるファイルが作成されます。 SQLiteOpenHelper データベースのオープン処理はSQLiteOpenHelperというヘルパークラスを使います。 実際にはSQLiteOpenHelperを継承したクラスを定義することになります。 static final String DB = "sqlite_sample.db"; static fin

    Android データを簡単に保存する方法(SQLite編) | TechBooster
  • SQLiteの使い方 getting started | TechBooster

    Android開発では、データを保存する方法に『Preferenceを利用する方法』『ファイル出力する方法』『SQLiteを利用する方法』があります。 エントリーでは、SQLiteを利用する方法を、以下のサンプルを用いて紹介していきます。 ■入力画面 EditTextに入力したデータを『Writeボタン押下』のタイミングで保存しています。 『Showボタン押下』にて、入力データを表示する画面に遷移します。 ■データの保存 データベースのインスタンス(SQLiteDatabaseクラス)を取得し、SQLiteDatabaseクラスのinsertメソッドを呼び出すことでSQLiteに保存することができます。 ■出力画面 データを保存した際にToastにて表示する数値を入力することで、入力データを表示します。 同じく、保存の際の数値を入力し入力データを削除することもできます。 ■データの検索

    SQLiteの使い方 getting started | TechBooster
  • リストビューをカスタマイズする | TechBooster

    以前の記事(リストビューを使ってデータを一覧表示する)でリストビューを扱う方法がありましたが、文字だけを表示させていました。 今回は画像と文字を表示させてみようと思います。 では続きで説明して行きます。 各行に表示させるアイテムの準備 まずは画像(Bitmap)とテキスト(String)を1つ持つアイテム用のクラスを用意します。ここではCustomDataクラスとします。 今回は説明のために簡易的にメンバに1つずつ持たせましたが、もちろん画像や文字列を複数表示させることは可能です。 public class CustomData { private Bitmap imageData_; private String textData_; public void setImagaData(Bitmap image) { imageData_ = image; } public Bitmap

    リストビューをカスタマイズする | TechBooster
  • Android リストビュー(ListView)を使う | TechBooster

    リストの項目が選択された(端末の十字キー等でリストの項目がフォーカスされた)時と、選択されていない時の処理 リストの項目が選択された時の処理を作るには、ListViewクラスのonItemSelectedメソッドを使います。 また、リストの項目が選択されていない時の処理を作るには、ListViewクラスのonNothingSelectedメソッドを使います。 具体的には、イカのようにします。 ■src/ListViewActivity.java ListView lv = (ListView) findViewById(R.id.listView1); lv.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { @Override public void onItemSelected(AdapterView

    Android リストビュー(ListView)を使う | TechBooster
  • Androidでの多言語対応方法 | TechBooster

    リソースの多言語対応は、res/以下のディレクトリ(たとえばres/values)に修飾子を付与するだけで、簡単に作成できます。 日語と英語(デフォルト)に対応する場合、下記2つのリソースを用意します。 values/string.xml values-ja/string.xml valuesディレクトリに修飾子としてjaを付与します。これで日語ロケールの場合は、日語でメッセージが表示されます。 ※今回は、国外のユーザーに対して分り易くするためデフォルトを英語(en)としています。 values/string.xml <?xml version="1.0" encoding="utf-8"?> <resources> <string name="hello">Hello World, orientationSensorActivity!</string> <string name="

    Androidでの多言語対応方法 | TechBooster
  • 1