前回の日記では Activity を呼ぶ振る舞いに関する一覧表を作りましたが、今回は Broadcast された振る舞いについての一覧表を作ります。 意味が分からなかった定数が多かったです。たぶん表に間違いが多い思いますので、指摘して頂けると嬉しいです。 Broadcast Actions 『Broadcastされる振る舞い』を指定する方法の一覧表。 それぞれの振る舞いに対するデータは、URI形式で渡します。 定数名 説明 URL ACTION_AIRPLANE_MODE_CHANGED 端末が飛行モードに変更された ● ACTION_BATTERY_CHANGED 端末が充電中かどうかや、バッテリー残量が変化されたか ● ACTION_BATTERY_LOW バッテリー残量が非常に少なくなった ● ACTION_BATTERY_OKAY バッテリー残量が非常に少ない状態を脱した ● AC
これまで、C++, Ruby, Fortran による「最小二乗法」のアルゴリズムを紹介しました。 C++ - 最小二乗法! Ruby - 最小二乗法! Fortran - 最小二乗法! 今回は、同じアルゴリズムを Java で実現してみました。アルゴリズムについては、上記リンクの記事を参照してください。 0. 前提条件 Linux Mint 13 Maya (64bit) での作業を想定。 コンパイラ・ランタイムは、 Oracle Java 1.7.0_51 を想定。 最小二乗法についての説明は割愛。(「C++ - 最小二乗法!」を参照) 1. Java ソースコード作成 File: LeastSquaresMethod.java 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 3
Androidアプリでマスタデータの登録処理などをする場合、データの保存先としてローカルストレージを選択することがあります。データの登録、更新、削除、並べ替えなどの処理を考えるとデータベースを使用することが最も適しています。AndroidではデータベースとしてSQLiteが使えますが、データベースを使う場合は機能をまとめる、すなわちクラス化することが重要です。 Java以外のオブジェクト指向の他言語でも同様ですが、クラス化することで開発効率も高まり、品質の高いプログラムが開発できます。SQLiteをクラス化して使いやすくするサンプルのソースコードを掲載しましたので、実際のプログラミングにお役立てください。 package com.example.test; import android.content.ContentValues; import android.content.Contex
androidの簡単な電池残量取得アプリを作っています。前回で、ブロードキャストレシーバーでインテントを受け取る準備ができました。今回は、インテントフィルターを設定して、電池の状態が変化したというインテントを受け取れるようにします。 5.電池の状態が変化したというインテントを受け取れるようにする ブロードキャストレシーバを作っただけでは、まだインテントを受信できません。インテントフィルターに「電池の状態が変化した」をセットすることで、受信できるようになります。今回は、Activityで描写するので、Activityの中でインテントフィルターを設定することにします。マニフェストをいじらなくて済みます。 6.インテントフィルターを設定する 早い段階で実行されるように、onResume()で設定することにします。具体的には、インテントフィルターにアクション「電池状態変化」を加えて、これをregi
同プロセス内でのActivityとService間のローカル通信に便利な LocalBroadcastManagerというクラスがサポートライブラリにあります。 このクラスを使うとAIDLを利用せずにActivityとServiceの同期通信が簡単に行えます。 AIDLを使うまでもないような連携をしたい場合に便利だと思います。 LocalBroadcastManager#sendBroadcastSync(Intent) 同期通信するには LocalBroadcastManager#sendBroadcastSync(Intent) メソッドを使います。 sendBroadcast(Intent)と基本的には同じですが、このメソッドを使うと呼び出し元のスレッドをブロックし 直ちにレシーバーにIntentを投げます。 このメソッドを使い、受け取り側のレシーバーでも同じように sendBroa
ActivityとFragmentのライフサイクルを意識しなければならない状況で、 思っていたライフサイクルとは異なるフローで呼ばれていたため、 調査をしてみました。(主に破棄周り) The lifecycle of the activity in which the fragment lives directly affects the lifecycle of the fragment, such that each lifecycle callback for the activity results in a similar callback for each fragment. For example, when the activity receives onPause(), each fragment in the activity receives onPause(). 上
アンドロイドで位置情報を取得したい場合は、端末のGPSとWifiや基地局GPSを組み合わせた、FusedLocationProvider が推奨されます。その中でも高い精度(数メール)が得られるのはGPSです。簡単にGPSを起動させて緯度経度を取得してみます。 LocationManager API 30 からの変更としては、バックグラウンドでの位置情報へのアクセス権を付与するには、ユーザーをシステム設定に移動して許可を得る必要があります。 GPSの実装は色々と制約がついているので、ここでの内容は以下の条件になります。 GPSを起動するための簡単な実装 1つのRuntime Permissionのみを想定 フォアグランドのみでの実行 また、基本的にAndroid機はGPSだけでは位置情報を取得していないので FusedLocationProvider を実装することを最初から検討する選択肢
Android の位置情報は端末や OS のバージョンによって微妙にとれるタイミングやプロバイダがちがうので iPhone にくらべかなり癖があります。中には LocationManager#requestLocationUpdates メソッドを呼んでも30分以上メソッドが呼び出されないなんて事もありました。 色々検証した結果、確実に位置情報をとるためのポイントがいくつかありました。以下そのポイントです。 一般的なAndroid端末で取得できる位置情報は GPS、3G、Wi-Fiの3種類 GPS は「gps」、3G および Wi-Fi は「network」という文字列で取得できます。Android では「gps」や「network」のことをプロバイダと呼びます。 Android 2.2 からプロバイダに passive が追加された このプロバイダーがどのような用途で使われるのか今のとこ
前回ServiceをAIDLを使って弄ぶ練習、前々回(端末に新規アプリがインストールされたらログを吐く)に引き続き、 IntentService の利用方法とか、ほとんど覚えていないので、メモを残す。 概要 前回、Serviceを使ってみたけど常駐する必要はなかったので、IntentServiceを実装すれば充分かなという自己完結。 こいつはキューがなくなったら自分でdestroyするみたいで、明示的にServiceをstopする必要もなく、楽ちんだし便利ぽい。work queue processorパターンとかいうみたい。 アプリが新規にインストールを検知したら、IntentServiceを起動してオシマイって流れが、シンプルかなと思う。 ここでは単純にログを吐いているだけだが、何か裏側で重い処理をしようってんなら、この作りでいいんじゃまいか。 実装 GitHubにサンプルソースを置きま
http://developer.android.com/training/basics/location/locationmanager.html ここを読んでのまとめメモ。基本的に要約。※は僕の付け足し 作ればわかる! Androidプログラミング 第2版 -SDK4対応- (Smart Mobile Developer) 作者: 金宏和實出版社/メーカー: 翔泳社発売日: 2013/04/23メディア: 単行本(ソフトカバー)この商品を含むブログ (7件) を見る Manifest 用途に応じてACCESS_COARSE_LOCATIONかACCESS_FINE_LOCATIONを追加する ACCESS_COARSE_LOCATIONはネットワークベース(GPS使わない) ネットワークベースのLocation Managerを使うならINTERNETパーミッションも必要 ACCESS
Swift is the only language that scales from embedded devices and kernels to apps and cloud infrastructure. It’s simple, and expressive, with incredible performance and safety. And it has unmatched interoperability with C and C++. It's the combination of approachability, speed, safety, and all of Swift’s strengths that make it so unique.
※この記事はイトナブ開発合宿in滝沢のイベントによって書かれました。 イトナブ開発合宿in滝沢を知らない方はまずこちらをご覧ください。 また他の参加者の方が書いた記事も掲載させて頂いております。 こんにちは、イトナブ石巻のフィッシュこと津田恭平です。 今回はAndroidのLocationAPIについて触れていきたいと思います。 Locations API GooglePlayサービスが提供するLocation APIを使用すれば、簡単に位置情報の機能をアプリケーションに組み込むことができます。そしてGooglePlayサービスが提供するLocationAPIはなるべく端末に負担をかけずに省電力な実現を目指しています。 1.GooglePlayServiceのセットアップ ※Location APIの機能を使用するには、GooglePlayServiceのライブラリが必要となります。まずは
[速報]マイクロソフト、無償のコードエディタ「Visual Studio Code」をオープンソースで公開。Microsoft Connect(); 2015 マイクロソフトは11月18日(日本時間18日深夜)に開催したオンラインイベント「Microsoft Connect (); 2015」において、無償のコードエディタ「Visual Studio Code」をオープンソースで公開しました。 Visual Studio Codeは、4月のイベント「Build 2015」で発表された、コードを書くことに特化したエディタ。Gitによるソースコード管理、IntelliSense、コードリファレンス、デバッガなどの機能を搭載しています。 Windowsだけでなく、MacOS、Linuxにも対応します。 今回のイベントでは、このVisual Studio Codeがベータ版に到達したという発表と同
最近ずっと忙しくて更新できずでした。 TAやら成果発表を聴きに行ったり, 自分の研究をしたりで; あと今回紹介するGPS取得が非常にてこずってました(三日間くらい調べてました) 今できたので書いていこうかと思います。 目的:GPSをつかって位置情報を取得する ということでGPSを使って位置情報(経度、緯度)を取得していきます。 リファレンスは tech.admax.ninja これをみても随分手こずったので本当にややこしいかと; まず、必ずandroid manifestで打たなければならない許可文を紹介します GPSで位置情報を取得する場合 <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/> <uses-permission android:name="android.permission.A
[Android 開発] GPS を使う Permalink URL http://www.magicvox.net/archive/2015/02051947/ Posted by ぴろり Posted at 2015/02/05 19:47 Trackbacks 関連記事 (0) Post Comment コメントできます Category Satellite Dish Photo by Alexandre Dulaunoy 多くの Android 端末に装備されている GPS を利用して、緯度・経度・標高などを取得するための覚書き。 スクラップ帳 » Android アプリ開発 Tips ~ センサ入力 Android アプリを開発する際の小技まとめ。GPS、コンパスなどの各種センサ デバイスからのデータの取得方法などの覚書きを網羅して、必要な機能をコピー&ペーストで再利用できるよう
たいていのAndroid端末にはGPSセンサが搭載されており、位置情報を取得することが可能です。また、ネットワーク(3G/WiFi)を利用して位置情報を取得することも可能です。 HT-03A、Xperia、Desire、Nexus OneにもGPSが搭載されていますよね。 今回はAndroidでGPSセンサを利用する方法を説明します。 ポイントは以下の通りです。 マニフェストファイル(AndroidManifest.xml)にGPSのパーミッションを追加する ロケーションマネージャ(LocationManager)、ロケーションプロバイダ(LocationProvider)の取得 位置情報リスナーの実装 それでは順に説明していきます。 端末の位置情報取得の設定 アプリケーションで位置情報を取得するには、まず端末の設定で位置情報を取得するという設定を行う必要があります。 GPSを使って位置情
最近仕事でRailsのコードレビューをする時間が長くって、いろいろ指摘するんですが、 Railsって「Railsチュートリアル」には書いていないのに覚えないと仕事にならないこと多すぎだなと気付かされます。 どこでどんなふうにすれば、プロになろうとしている人が最短距離で知識を獲得できるかはわからないですが、 今思っている特に大事だなと思うことつらつらと書いていきます。 😀 プログラミングの重要な要素まず、Railsの前にプログラミングで全般的に特に重要と思っている要素を紹介します。 - リーダブルなコード - ネーミングルールについて - 言語・フレームワークのルール - 変数のスコープについて - プロジェクトの設計思想 - オブジェクト指向・コードの再利用性 - 正しいテストケースを作る プロジェクトによって変わるので、すべては書きませんが、ぜひ意識してどこを学ぶべきかを考えてみてくだ
まとめ Google様のFusedLocationProviderApiはユーザがGPS設定をOnにしてても位置情報を返してくれない場合がある(後述) SettingsApiを使うとユーザの設定を確認し、設定を促すダイアログを表示出来る FusedLocationProviderApiにはどういう問題があるか Google Play Serviceに含まれているFusedLocationProviderApiは、GPSベースの位置測定と、ネットワークベースの位置測定をよしなに組み合わせた位置情報取得を行ってくれる(Google I/O 2013の発表を見ると組み合わせがいかにパワフルかわかる)。アプリ開発者は、以下の様な感じでお手軽に位置情報を取得できる // (GoogleApiClientの初期化などは省略) private void requestLocationUpdate() {
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く