takaiwa.net

Android、Java、Web系、Linux、マラソン等の備忘録

2013/06/30

七輪で炭火焼きなど 3回目

0 件のコメント
外で冷たい物を飲むにはいい季節になってきました。

今回の食材

  • 焼き物
    • 沖キス
    • 鶏皮
    • 手羽先
    • 玉ねぎ
    • ピーマン
  • その他
    • キュウリともやし鶏肉のサラダ

2013/06/21

Webページを暗くしてダイアログのようなものを表示させる

0 件のコメント
Webページでもたまに見かけますが、Androidとかでダイアログを表示させると、ダイアログの背景は暗くしてダイアログを際立たせるようなエフェクトがありますね。

※Webで自作したもの


今ならフラットデザインがーと聞くので、流行とは逆行しますが。フラットデザインなら、ウィンドウが重なったようなエフェクトはそもそもなくて、ダイアログの中身がそのまま一画面として遷移するといった感じでしょうか。

とは言え、ダイアログは操作的にわかりやすくていいと思いますし、簡単なものであればライブラリを組み込まなくてもググったら意外とぱっと実装できたのでメモしておきます。

2013/06/15

七輪で炭火焼きなど 2回目

0 件のコメント
前回からの反省も踏まえ、また七輪で焼いてみた。この暑い時期、酒を飲む=七輪で焼きながらなのでしばらく毎週のようにやると思う。

今回の食材


  • 焼き物
    • アジ(塩焼き)
    • 鶏皮
    • スペアリブ
  • 野菜
    • 玉ねぎ(写ってないけど)
    • サラダ
    • 豆を茹でたの
  • 豆ご飯のおむすび

2013/06/14

EclipseのJUnit実行完了後に音を鳴らすプラグイン

0 件のコメント
こちらのありがたいテスト駆動開発のお話を基に、

Video streaming by Ustream


Androidアプリケーション開発で、

2013/06/13

猫の夏対策

0 件のコメント
台風による南からの風の影響か今日は今年一番の暑さ。


午前の急な気温上昇についていけない。猫も。

2013/06/11

七輪で炭火焼きなど

0 件のコメント
七輪で焼きものをサクっとできるよう備忘録。

炭火焼きは飲みながらやるのでまずは氷を作る。ロックなどでお酒をいだく場合は、透明な氷が欲しいところ。そういう場合はこちらを参考
・■透明なロックアイスの作り方(透明な氷) - こどもとおでかけ 関西「行ってきました」
http://d.hatena.ne.jp/itekita/20080708/1282006375
透明な良い氷はスーパーなどで買ってくるイメージだったけど、こちらを見つけてから意外と簡単にできるんだと、試してみることに。まあ、自作するデメリットは

  • 完全に凍らせないよう時間を気にしておかないといけない
  • 冷凍庫のスペースをとる
  • 自分で砕く手間

こんなところだろう。まずは容器から、冷凍庫に入る大きさを測ったら、確保できるスペースは幅20cm x 高さ15cmくらい。上記のリンクでは、漬け物容器をオススメされてたので、ホームセンターへ行ってみたら確かに500円以下であったけどちょっとデカいのしかなかった。ということで、円形でないけど費用対効果的によさそうな、K-tool SUPER PACK 1.9㍑お砂糖入れ(98円)を2つ購入。


2つなのは、使用中と凍らせ中の使い分け。サイズは書いてなかったので家で測ったら、幅16cm×高さ12cm 控え目ながらフタもあるし良い感じ。凍らせる目的の容器ではないのだけど。

Windows7のデスクトップに自作ガジェットでWebページを表示させる

0 件のコメント
作業中に使ってるToDo管理Webアプリケーションを予備のパソコンに表示しているが、Androidのテスト中はそのパソコンにデバッグに使ってるeclipseのLogcatを表示させたい。Virtual Boxで動かしているAndroidはIPアドレスがわかればLAN内の別マシンからでも
adb connect 192.168.1.xx
で接続することができ、Logcatを鑑賞することができる。かと言って、このToDo管理も経過時間などを表示しているので、常に表示させておきたいのだけど、メインパソコンで開いてても、よく忘れてままにしていることがあって困っている。そこで、Windows 7のデスクトップガジェットにすれば、他のウィンドウを閉じた時や、ウィンドウを移動した際に思い出すだろうと、Webページを表示するガジェットはないかと探したら、意外と簡単に作れることがわかったので、メモ。

まず、C:\Program Files\Windows Sidebar\Shared Gadgetsにhoge.gadgetというフォルダを作成。

中に以下の3ファイルを作成
  • gadget.xml
  • icon.png
  • page.html

それぞれ中身は、

2013/06/06

Handlerによる定期処理の挙動をテストするにあたり

0 件のコメント
androidのServiceにandroid.os.Handlerを継承したクラスを実装して、定期的なバックグラウンド処理を実装することを考える。この定期処理は、バックグラウンドの処理結果によって、次開始するまでのsleep時間を変更するような実装にしたい。例えば、連携するWebサービスのAPIを実行したら電波が悪くて接続できなかった場合、またあるときはそのWebサーバが一時的にダウンしていた場合、前者はリトライの間隔を短く、後者は間隔を長くしたい。そのような挙動をテストしたいのだけど、問題が2つある。
  1. Handlerを使った処理でsleepしている間にJUnit側の処理が進む(または終わってしまう)ので、sleepからの復帰を待つ(同期する)必要がある
  2. sleepからの復帰をJUnit側はどうやって知るか
1に関しては、java.util.concurrent.CountDownLatchを使うことで待たせることができる。とりあえず、非同期処理を待機するかどうかをHandlerではなく、AsyncTaskを継承したクラスの単体テストで、CountDownLatchの挙動を確認してみる。

JUnitから起動したService上でのApplicationのClassCastException

0 件のコメント
AndroidManifest.xmlに
<application
    android:name="net.takaiwa.MyApplication"
  ・・・
</application>
と定義しており、android.app.Applicationを継承しているMyApplicationというクラスがあるのだけど、これをMyApplication app = (MyApplication)this.getApplication();とキャストして使っているServiceをJUnitのServiceTestCaseを継承しているクラスからstartServiceで起動すると以下のようなエラーが出て失敗する。

java.lang.ClassCastException: android.test.mock.MockApplication cannot be cast to net.takaiwa.MyApplication

これを検索しても、特に言及されてるページが出て来ないので、そもそもの部分で何かが間違っている気がしてならない。JUnit「そんな継承されたやつは生成してねーよ」って話なんだろうけど、一応、JUnitからでもActivity内および、Activityから起動したService内であればエラーがでない模様。

なお、MyApplicationでOverrideしているonCreateメソッドは呼ばれている模様。

追記:2014/01/05

解決方法を以下に記述しました。
試行錯誤ログ: AndroidのカスタムApplicationをテストで差し替える
http://www.takaiwa.net/2014/01/androidapplication.html

PR:入門 Androidアプリケーションテスト

2013/06/04

ソーシャルアイコンの吹き出しCSSメモ

0 件のコメント
こういう吹き出しを表示させたい。

ソーシャルボタン入れておけばいいだろって話なんだけど、はてなのソーシャルボタンはページのURLを指定しても、どうやらJavaScriptが置かれてるページが対象になるらしく、別のところ(例えばブラウザの拡張機能上)に設置すると、ブックマーク数を表示してくれない。これがTwitterのツイートボタンだと、URLを指定してやればそのページのツイート数を表示してくれるのだが。

まあ、変に触れると虚偽の表示にできるのを防いでいるのかもしれない。
ボタンを押せばすぐバレる話ではあるけど...

既に拡張機能上にツイートボタンを設置できていることから(外観的に)後に引けなくなり、どうやったらブックマーク数をボタンに表示できるのかググってみたけどぱっと出てこない。このボタンの挙動を見ながら表示のさせ方を探るよりも、既にはてブAPIでブックマーク数は取得しているので、それを後から突っ込むという方法でいくことにした。

という経緯で、
問題はこの吹き出しをどうやって表示させるかで、一応表示できたのが下記のもの。

<style type="text/css">
.count {
background-color: #FFFFFF;
border: 1px solid #B0C1D8;
border-radius: 3px;
height: 18px;
padding: 0px 4px;
position: relative;
width: auto;
display: inline;
float: right;
color: #2D4C86;
font-family: "Arial";
font-size: 11px;
line-height: 18px;
text-decoration: none;
}

.count:after,  .count:before{
border: solid transparent;
content: ' ';
height: 0;
right: 100%;
position: absolute;
width: 0;
}

.count:after {
border-width: 3px;
border-right-color: #FFF;
top: 6px;
}

.count:before {
border-width: 5px;
border-right-color: #B0C1D8;
top: 4px;
}

</style>
<div class="count">100000</div>

不要な項目がいくつかありそうだけど、こんな感じに↓

あとは、JavaScriptで動的に数字を入れてやればOK。ボタンの方は数字なしのがあるので、それを左側に設置してやればそれっぽくなる。



PR:CSS3 スタンダード・デザインガイド
PR:ソーシャルインフルエンス 戦略PR×ソーシャルメディアの設計図 (アスキー新書)

2013/06/02

TumblrをWeb閲覧履歴ビューワーに。IFTTT経由でPocket連携

0 件のコメント
基本的に僕が何かしらWebに情報を投稿しているのは、自分のためという側面が大きくて、
この中でWebの閲覧履歴はtwitterにコメント付きで投稿しているので、これでいいやということでtumblrはしばらく放置してた。そもそもの閲覧するWebページはTwitterのタイムラインからみつけているし...。息抜きにタイムラインを見てると、興味をそそられる記事のリンクがたくさん流れてくるのでかなり時間が潰れてよくないということで、後で読むアプリを導入。


こんな流れで、記事が溜まっていく。
  1. PC版Janetterのタイムラインで記事のリンクをクリック
  2. ブラウザが起動して記事が表示される
  3. Pocketのブックマークレットをクリック(後で読むに追加される)
で、時間ができたときや寝る前に、PCのブラウザかタブレット端末のアプリからPocketにアクセスすれば、