2014年10月23日木曜日

簡単だと思っていたのに、結構ハマったのでメモとして残しておきます 参考にしたのは、次の2つの記事です AndroidのListViewで選択状態の項目の背景色を変える Custom background color for selected item with “activatedBackgroundIndicator” Navigation Drawer 重要なのは2点だけ GridViewの行になっているレイアウトのbackgroundに?android:attr/activatedBackgroundIndicatorを設定する activatedBackgroundIndicatorをThemeでオリジナルのものに変更する ただし、APIレベル11以降のお話です layout.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout  ...

2014年6月24日火曜日

AndroidでiBeacon(2)

前回「AndroidでiBeacon(1)」の続きで、今回は検出したBeaconから情報を取得します 取得するのは UUID major minor 電波強度 の4つです 端末を検出したらコールバックされるBluetoothAdapter.LeScanCallbackのonLeScanを変更していきます onLeScanには3つの引数があり、UUIDなどの情報は第3引数のbyte配列に入っています その配列は次のようになっています データ構造 01ブロック目のバイト数 1 フラグ 2 32ブロック目のバイト数 4AD Type 5 会社ID 0x00CがAPPLE 6 7データタイプ0x02がiBeacon 8iBeaconデータのバイト数 9 UUID 16バイト ~ 24 25 major 4バイト 26 27 minor 4バイト 28 29電波強度距離計算する際の基準値として利用 データを取得 onLeScanの中身を変更しています ...

2014年6月23日月曜日

AndroidでiBeacon(1)

Beaconを貸して頂いたので、これら何回かに分けてAndroidでiBeaconを触ってみる記事を書いてみようと思います iBeaconについては、いろいろと情報があると思いますので説明は省きます iBeaconって何?という方は、まずGoogleなどで検索してみてください 必要なもの BLEに対応したAndroid 4.3以上の端末 Beacon(今回はBeacon USBを利用) Beaconの設定 最初にBeaconの設定をしておきます 設定する情報は、Proximity UUID(以降、UUIDと略),Major, Minorとありますが、どの情報を使って検出したいBeaconを判別するかによりますので、1台だけならUUIDだけでも良いかもしれませんし、1台でもMajorまで設定しておいても良いかもしれません 今回は、UUID,Major,Minorを全て設定しておきます ※今回利用するBeaconUSBに専用のアプリがまだ無いので、HPに記載されている設定マニュアルにあるとおり「BLE...

2014年5月28日水曜日

AndroidのFused Locationでの精度調査

仕事の関係で調査が必要でしたので、AndroidのFused LocationにてGPS、Wi-Fi、携帯ネットワークを使った場合に精度がどのようになるのか検証してみました 以下の条件での検証です Priorityは「LocationRequest.PRIORITY_HIGH_ACCURACY」 permissionは「android.permission.ACCESS_FINE_LOCATION」 仕事場近くの道端にて同じ場所に留まった状態で計測 Wi-Fiにはe-mobileのPocket Wi-Fi(GL06P)を使用 携帯回線はDocomo 計測は、それぞれの条件で7回(画像の2枚めの前半は重複した情報です) GPS + Wi-Fi + 携帯ネットワーク 精度は25m~63mくらいでした 複数のプロバイダーを利用しているのでgetProviderの値が[fused]になるのかと思っていましたが、あとの携帯ネットワークだけの時も同じ値となります。そのためFused...

2014年5月12日月曜日

Remote TestKit Webを試してみた

以前(Remote TestKitで実機の動作テスト)で紹介したRemote TestKitがブラウザだけで利用できるようになったので実際に試してみました まず、ログインすると端末の選択画面がでてきます 専用ソフトの時とだいたいおんなじ感じですね さっそく、無料でレンタルできる端末の中から「Samsung Galaxy S4」をレンタルしてみます 一覧の右端にある[レンタル]というボタンを押すと、確認ダイアログが表示されます ダイアログにある[レンタル]を押すとすぐにブラウザ上に端末の動作画面がでてきます リモート端末にアプリをインストールするには、画面右のメニューから[ファイルを選択]でapkファイルを選択して、[アプリをインストール]のボタンを実行するだけです 今回はApiDemos.apkをインストールして動かしてみました 1.9MBほどあるApiDemos.apkのインストールが完了して動作するまで20秒くらいで、思っていた以上に素早くインストールできました ドラッグや選択などの動作はリモートなのでそこそこの遅延はあります 試しにApiDemoにあるOpenGL...

2014年4月21日月曜日

ThemeをDialogにしてDialogっぽくしたActivityで枠外をタップした際に画面を閉じるには次のような処理を追加すれば良い @Override public boolean dispatchTouchEvent(MotionEvent event) { Rect dialogRect = new Rect(); getWindow().getDecorView().getHitRect(dialogRect); if (dialogRect.contains((int) event.getX(), (int) event.getY()) == false) { finish(); } return super.dispatchTouchEvent(event); }...

2014年1月20日月曜日

今日、打ちあわせの際にMS Officeのファイルを見る必要があったんだけど、Nexu7に入れてあったQuickOfficeでは遅くて表示ができないということがありました そんな時に今回紹介するAndrOpen Officeを教えてもらったので、紹介しようと思います AndrOpen OfficeはAndroidで利用できるOpen Officeで、パソコンで使うOpenOfficeと同じような表示になっています Open Officeを使ったことが無い方はOffice 2003みたいな見た目と思ってください (下に画像を載せています) パソコンと同じような画面なので、すごくメニューとか操作するボタンが小さいです 最初は画面をタッチすることで操作しようとしていて「使い難いな」と思っていたのですが、操作メニューを出すと非常に使いやすくなりました 操作メニューは画面右下にあるディスプレイのマークを押す表示されます 今回は見るだけの利用だったので、編集とかの操作性についてはわかりませんが、表示だけならかなり良さそうです ※右クリックで表示されるメニューは画面を長押しする表示されます 利用できるのは ・文書ドキュメント ・表計算ドキュメント ・プレゼンテーション ・図形描画 ・データベース ・数式 となっています メニューバーとかのサイズが小さいのですが、これは変更することができないようです(たぶん) 設定としては出来るのは以下の3つだけです ・倍率(Default:100%) ・カスタムフォント(Default:設定なし) ・フレームレート(Default:5fps) 表示がカクカクする場合はフレームレートを上げると良いと思います 万能で安定している。と、いう訳ではないですがMS...