Android

Android SDK auto-downloadをCircleCIで有効にする

SDKのauto-download AndroidのGradle Pluginでは2.2.0-alpha4 (2016/6/23)からSDKのauto-downloadをサポートしている。ローカル環境で実行する場合、特に意図することなく自動でDLされるが、CI環境でそれを期待して実行するとエラーになる。 * What went wro…

Android Things ことはじめ

GoogleのIoT platformとしてAndroid ThingsおよびWeaveが発表されたのでさっそく触ってみたよ。 https://android-developers.googleblog.com/2016/12/announcing-googles-new-internet-of-things-platform-with-weave-and-android-things.htmlAndroid Things…

「通信の最適化」チェッカーをつくった

「通信の最適化」が議論を呼んでいる。通信内容に含まれる画像や動画などのファイルを、ソフトバンクが強制的に不可逆圧縮をしていて、それを利用するアプリで不具合が生じたために大きな話題となったようだ。詳しくはこの辺りを参照。 ソフトバンク、「通信…

ReCoCaで使っているAndroid向けライブラリ

ReCoCa (https://play.google.com/store/apps/details?id=com.itog_lab.android.recoca&hl=en) という車の燃費などを管理するアプリを公開してからまもなくリリースから5年が経とうとしていますが、パッと使った感じには大きな変更がないようにしながらも、…

Androidのカレンダーアプリで予定に自動で画像が表示されるようになってる

Androidのカレンダーアプリで、予定のタイトルによっては、予定詳細画面に自動でイメージ画像が表示されるようになってた。例えば、予定に「プール」と入れると以下のように表示される。 スポーツ系は充実してる。ランニング、テニスはともかくスキーまで。 …

Genymotionがadbで認識されない場合の対処

Genymotionでadbで以下エラーが出てデバイスが認識されない場合があります。 $ adb devices adb server is out of date. killing... cannot bind 'tcp:5037' ADB server didn't ACK adbでデバイス認識しない場合にまず試すkill-server, start-serverをしても…

Androidアプリを開くURLスキーム

AndroidアプリをChromeからURLスキームで起動できます。アプリがインストールされてない場合はマーケットを開くというスグレモノです。フォーマットは以下のとおり。 intent: HOST/URI-path // Optional host #Intent; package=[string]; action=[string]; c…

ADT(eclipse)からAndroid Studioへ移行するときはエクスポートしてはいけない

ADT(eclipse)からAndroid Studioにの移行するのに、"eclipse android studiio"当たりでググると公式の以下ドキュメントがヒットする。Migrate to Android Studio | Android Developersこのドキュメントにはeclipseでbuild.gradleをexportして、Android Studi…

Androidアプリを段階的公開(staged rollout)する

どこからやるのか毎回考えるので忘備録。ProductionにAPKをアップロードして、Publishボタンの右のドロップダウンから「Publish as staged rollout」を選択する 以下画面が開くので何%のユーザにたいして公開するかを選択する。 公開後はconfigurationから「…

Boltsフレームワークで非同期処理を書く

先日、ParseからBoltsというフレームワークが発表されました。発表された時に機能をさらっと見た感じだとJSのpromiseがJavaで使える!continueで繋げるのね、ふむふむーこれは便利ーって思ったんだけど、実際使おうと思ったらけっこう理解が難しかったのと、…

GenymotioでGoogle Play Servicesを使えるようにする

2015/7/3追記 最新情報はこちら Genymotion with Google Play Services for ARM · GitHub - Androidの開発環境の不満の一つにエミュレータの動作が重い、ということがある。iOSのシミュレータが軽快に動くのと比較され、Androidがdisられる要員の一つになっ…

NoClassDefFoundError 対策

ADTをいつかのバージョンにあげたらエラーが出るようになった。 E/AndroidRuntime(14807): java.lang.NoClassDefFoundError: com.foo.Bar こんなエラーが出ます。 ライブラリへのビルドパスが通らなくなってしまっているようなので、以下の設定します。Proje…

さよなら Fx Camera

Androidの老舗エフェクトカメラアプリFx Cameraの大型アップデートがあったようだ。 https://play.google.com/store/apps/details?id=ymst.android.fxcamera&hl=en昔のFx Cameraはカメラだった。だからToyカメラを使うのか、ポラロイドを使うのかを先に選ば…

【速報】Google I/O 2013チケット争奪戦のすべて

いよいよやって来ました、Google I/Oチケット争奪戦というゲーム。はたして今年はどんな戦いが繰り広げられるのか、、、 Registration is open 〜戦いの始まり〜 23:00、戦いの火蓋は切って落とされた! それまでカウントダウンが表示されていたところに、「…

Androidの利用規約について

Androd 4.2以降のSDKの利用規約(Terms and Conditions)の変更内容の一部が話題となってます。 グーグル、Android OS断片化の拡大防止のため、SDKに新たな利用条件を設定話題になっているのはSDKダウンロードページのこの文章。原文 Terms and Conditions3.…

layoutのinflateパフォーマンス測定

昨日このイベントに参加して、話題に上がったことがちょうど気になってたところだったのでlayoutをinflateする際のshapeによるパフォーマンスへの影響を計測してみました。ついでに気になってたincludeの計測もしてみました。 環境はエミュレータ上のAndroid…

動画で見るADK 2012

Google I/O 2012突如セッション追加され、参加者に配布されたADK2012の動作を動画で紹介します。 対応アプリのダウンロード ADK 2012は向かって左側面にNFCを搭載していて、ここにAndroid端末をかざすとADK2012アプリへのGoogle Playのリンクが開くのでここ…

Zeemote JM1 で音楽演奏手袋をつくった

"ABC 2012 Spring Zeemote JM1 無償貸出キャンペーン"というのがあったの応募して貸出してもらいました。さっそく作ってみたのがこれ。 楽器がなくてもどこでも音楽を演奏できる手袋です。 Zeemote JM1Aというボードで入力をとって、Androidで音を再生してま…

NameValuePairで入れ子(nesting)になっているデータを表現する

HttpPostでデータサーバにPostするとき、データはNameValuePairを使うのが常套手段。 "foo"=>"bar", "hoge"=>"fuga" というようなデータをPostしたいのであれば、 List<NameValuePair> nameValuePair = new ArrayList<NameValuePair>(2); nameValuePair.add(new BasicNameValuePair("foo", </namevaluepair></namevaluepair>…

Android Open Accessory を使うサンプルコードを公開しました

Andoroid Open Accessory のGoogle公式サンプルであるDemoKit.これのソースが読みづらいので装飾部分をなくして使い回ししやすくしたSimpleDemoKitを公開していました。DemoKitを使い回しやすくしたSimpleDemoKitのソース公開したよ - Hacking My Way 〜 ito…

デスクトップの画面をAndroidにミラーするAndroid Design Preview

Androidのビジュアルデザインをするときに、Photoshopなどで作った画像をAndroid端末にミラーすることでで、デザインの確認をできますよ、というつーる、Android Design Previewを紹介します。 ダウンロード&インストール 下記からjarファイルをダウンロー…

Twitter4Jを使ってAndroidアプリでStreamingAPIのUserTimelineを取得する

以前も書きましたがTwitter4j-android で&#160;oauth 認証 - Hacking My Way 〜 itogのhack日記、StreamingAPI使ったのとコードすっきりできたので改めてTwitter4Jを使ってAndroidでUserTimelineをStreamingAPIで取得する方法を紹介します。 Twitterアカウン…

Chromeのリモートデバッグ機能がすごい!

ここの動画で紹介されているリモートデバッグがかなり強力なツールなので紹介します。 事前準備 開発マシン側にadbというツール&Android端末のUSBデバッグを有効にする必要があります。 開発してる人なら説明いらないので省略。 リモートデバッグを有効にす…

Androidで文字列をAES暗号化、復号する

Androidで文字列の暗号化、復号するサンプルを作りました。 コードはこちら。 GitHub - itog/CryptoSample: encrypt and decrypt text on Android 使い方 上のテキストボックスにテキストを入力して、真ん中左のencryptボタンを押すと暗号化された文章が下の…

MPLAB XとPICkit3でPICベースADKを動かす

はじめに 以下ではマイクロチップが販売しているPIC用の開発キット PIC24F Accessory Development Starter Kit for Androidの開発環境構築手順を説明しています。マニュアル http://ww1.microchip.com/downloads/en/DeviceDoc/Android%20Library%20Help.pdfP…

ADISアップデートしました!

昨日のエントリ(Android Open Accessoryの理想と現状と自分の取り組み - Hacking My Way 〜 itogのhack日記)にも書いたけど下のほうにちょろっと書いただけなので改めて。 ADISとは Androidのデバイス情報共有するアプリ&サービスです。 アプリを起動してシ…

Android Open Accessoryの理想と現状と自分の取り組み

昨年5月のGoogle I/Oで、Androidの新機能の目玉として登場したAndroid Open Accessory。あれから半年、直後はRT-ADKが高価だったり入荷待ち状態だったり、Android Open Accessory対応Android端末があまりなかったりして環境構築を出来ない人もいたけど、その…

GalaxyTab10.1が起動ロゴループになったのを復活させた

あるときGoogle I/OでもらったGalaxyTab10.1でYoutubeを見ていたらフリーズした。しばらく放おって置いても復活しなかったので電源長押しで再起動してみると、、、あれ?起動ロゴが延々とループするんですけど??? 電源尽きるまで放置してから再起動してみ…

Make: Tokyo Meeting 07 ( #mtm07 ) で見たAndroidを使った展示レポート

Android Advent Calendar 本エントリは、「Android Advent Calendar」という企画の1エントリにもなっています。開発ネタが続いたところで、このエントリは読み物な感じなので、どなたでもお楽しみいただけますよ! Make: Tokyo Meeting 07 12/3,4とMake: To…

Androidデバイスのディスプレイサイズ、DPI一覧 update

最新の情報はアプリで見てください。インストールは以下から https://market.android.com/details?id=com.itog_lab.android.adis MODEL VERSION_SDK_INT MANUFACTURER BRAND widthPixels heightPixels xdpi ydpi density 001DL 8 Dell Inc dell 480 800 160.…