Heroku+SendGridとfreenomで空メール送信を受け付ける何か(使い捨て)をつくる

空メール送信をしたら会員登録URLが送られてきて、それをタップするとアプリが開いて、Facebookで会員登録! みたいな流れを作りたかった。 実装にあたり、ネックとなるのは、空メールを受け付けるところ。受信可能なメールアドレスをなんとかしてお金かけず…

Galaxy Note 8 は割と使いにくい形をしている

先週くらいに、念願だったGalaxyNote 8を買った。 1ヶ月前くらいから予約してまで買ったのはこれが初めてだ。 ただ、一週間程度しか使ってなくても、少し後悔し始めている。 まえおき(蛇足) 私はわりとGalaxy Noteのファンのようで、 Galaxy Note Galaxy …

Railsのxxx_pathとかxxx_urlの引数を調べた

リファレンス読んでもいまいちわからなかったので、そういうときはRailsそのもののソースを読むに限る。 _path でgrepしてみると、 # actionpack/lib/action_dispatch/routing/route_set.rb def add(name, route) key = name.to_sym path_name = :"#{name}_p…

imakaraでやりたかったことなど

昨日、imakaraっていうアプリをリリースしてみた。 play.google.com きっかけ 「いまから行くからね〜」って言ってから、 「いまどこ?」「○○過ぎたとこ〜」 「いまどこ?」「電車が遅れてて、△△駅でとまってる」 ↑相手のイメージw みたいなやりとりをいち…

Android用のGitHubのIssue Viewerを作ってみた

実に1年11ヶ月ぶりの投稿。Qiitaなんて使い始めたら、自分のブログを放置気味になってしまっていけませんね。自分のことは自分のブログの上に書かないと。2015年4月に転職してから本格的なアプリ開発を始めたものの、1年半でもう完全に飽きてきました。もう…

sdeditでシーケンス図をかきかきして、Sphinxドキュメントに貼り付ける

Sphinxでインラインでシーケンス図を書くには、sphinxcontrib-seqdiagのほかに、sphinxcontrib-sdeditという選択肢もあります。seqdiagの直感性は最強なのですが、ちょっといろいろ省略が入った図とか、条件文が入った図とかをつくろうとした時につまづいて…

SphinxとMatplotlibでお手軽にレポートを書こう

Matplotlibでグラフを作る方法を何度か紹介してきましたが、今回は、それをSphinx文書中に埋め込む方法をちょろっと書きます。WindowsのPython 3.3+Matplotlib 1.4.0 という少々微妙な構成でやっています。この構成だと、リファレンス通りにやってもエラーが…

中国のグレート・ファイアウォールをすり抜ける方法をいくつか

①VPNで家のルータにつなぐ家のルータがVPNに対応しているなら、この方法が一番楽です。プロトコルの制限とかもとくにないし、プロキシと違って、各アプリ側で設定が必要となることもほぼありません。ただ、相性の問題で、ブチブチ切れることがあるので、そう…

PythonのCairoでSVGをつくる

最近、Android用のキーボードの開発をやってます。0からつくるわけにはいかんので、Mozc for Androidってのを使ってるんですが、こことかにも書かれてるみたいに、Mozcにはキートップの画像が含まれていません。(正確に言うと、画像はありますが無刻印キー…

Ubuntu 14.04のApache2のconfigを見て「アレ?」となった話

私は、仕事で(プライベートでも?)よくGitlistっていう便利なgitビューワを使っています。正直、自分一人だったら要らないんですが、共同作業するなら、必ず一人はいますよね。「わたしgit使えないんで(キリッ」みたいな訳の分からないことをいう人が。ま…

Samsung SBrowserの小さな小さな工夫

ほんとうは、仕組みが解明できてから公開したかったのですが、もったいぶるメリットもないので、しょうもない内容なの承知でわかっている範囲だけ公開。といっても、わかってるのは・・・同じマルチタッチイベントを与えているにもかかわらず、SBrowserは中…

"Androidのブラウザをカスタマイズする"ということ

めっちゃ会社でやってるネタなので企業秘密に触れるギリギリラインではありますが、世の中、ブラウザはオープンソースの時代です( ー`дー´)キリッ ので、タイーホとならない程度に、書きたいことを書いてみようと思います。そもそもなぜブラウザをカスタマイズす…

MonkeyRunnerとuiautomator

最近のAndroidでは、標準で使える(楽しい)テストツールもだんだんと充実してきました。今回は、そのなかで自動試験に使えそうな、MonkeyRunnerとuiautomatorを簡単に紹介します。私はPython使いなので、uiautomatorもPythonバインディングの方しか知りませ…

「1秒でも早く申し込みたい!」を可能にしたGoogle Chromeの工夫

近年スマホを使う理由として、「Webが見やすいから」というのがトップにランクインしている。就活生たちをみていても「いち早くシューカツサイトで説明会の申し込むために」スマホを購入した、という学生も少なくない。しかし、「いち早くシューカツサイトで…

auのiPhone 4Sユーザー、3年目の悩み。

かれこれiPhone 4Sを買ってもうすぐ2年。Jailbreakしてサーバにしてみたり、gccいれてネイティブでプログラミングしてみたり、20回くらいおとしたり、水につけたり、まあ色々あったものの、iOS 5.1.2のiPhone 4Sはいまのところこれと言って不満なく使ってい…

Python 3.3.2でMatplotlibを動かす

なんか、文字コードのエラーになった。フォント名に日本語が含まれてると、そりゃasciiじゃ複合できんわな。というわけで、c:\Python33\Lib\site-packages\matplotlib\font_manager.pyのエラーでてたとこのasciiをcp932に。 # Styles are: italic, oblique, …

手首を置きながら書ける落書きアプリを作るには

ちまたにはいろんなペイントアプリがあるけども、メモ書き用途で使うには今のところPenUltimate一択といえる。ただ、このPenUltimateは、今のところ困ったことにAndroid版がない。このアプリが秀逸なのは、手首がペン先かを非常に明確に分けているところであ…

AndroidにUSB ADB経由でキーイベントとかタッチイベントを送り込む

かれこれ仕事でAndroidをやり始めて1年半がたちました。そんな1年半目の発見として(?)タッチイベントのリピーター(ユーザが入力したイベントをそっくりそのまま、コマンドを送り込んで再現させる)を作ってみました。(とるのがヘタでごめんなさい)目的は…

ポップアップでdrag and drop できるカラーピッカー

パソコンの世界では常識だが、スマホ/タブレットの世界ではあまり見ないもの。そう、「ウインドウ」という概念。Androidだと、PopupWindowとかいうクラスが標準で用意されているけど、http://stackoverflow.com/questions/9035678/android-how-to-dragmove-p…

Androidの画面サイズ取得はこうする!

DisplayクラスのgetSize()メソッドだと、ナビゲーションバーを含んだサイズが取れない。すると、困ったことに、アプリから隠しAPIであるSurface.screenshot()を用いてスクリーンキャプチャをとろうとした時に、縦におしつぶされたようなキャプチャ画像となっ…

iPhoneぽい高速スクロールをAndroidでも。

iPhoneって、ステータスバー触ると、ガララララララララ・・・ ってすんごい高速で上までスクロールしますよね。あのときって、結構、描画頻度落としてスクロールしてるんですよね。Androidでも、同様に、高速スクロール時に描画頻度を落とせないかなーと思…

2台のVPSを1台に集約。

さくらのVPSの1Gプラン(980円/月)+2Gプラン(1480円/月)を借りていたが、ちょっと毎月2400円は高いかなと思い、しかももともと2台借りていた理由が拠点間のIPSecの練習だったわけで・・・。2Gプランのほうに集中させてみた。ポイントとしては、・基本的には…

いつの間にやら消えていたiPhoneのUSBテザリング設定を復活させる。

最近、iPhone 4SをUSBにさしてもなぜかUSBテザリングしてくれないなぁ?と思っていたら、割と有名な不具合のようで、あちこちのフォーラムサイトにいろいろ載ってました。MacOS X Snow Leopard(10.6.8) + iPhone 4Sな自分にはhttps://discussions.apple.com/…

iPod touch (第4世代)を家庭用のサーバーマシンにする。ついでに古いマシンと冗長構成にする。

大学院の時から使い続けているiPod touch 第2世代がそろそろ古くなってきたので& きのうたまたまアキバでiPod touch 第4世代 64GBが13000円で売っていたので購入。こいつが2年以上サーバに使ってたほう。彼女との交際期間よりなg(ry構築したときのメモは→ …

Android(4.0以降)にはグローバルプロキシ設定が隠れているようだ。

最近、Galaxy Note(GT-N7000)にCyanogenMod 10を導入していろいろソースを見たりいじったりしてるわけですが、たまたまなんだか気になるものを発見したのでメモ。あれ?プロキシ設定あるよ?まあ、なにもしなくてもWifi設定からできるけど、あれって「ブラウ…

遠くのビルドサーバでビルドしたapkを手元のPCにつないだスマホにadb pushしよう

最近はやりのAndroidですが、ICS以降、ビルドの要件がめっちゃ高くなりました。早い話が、CPU、メモリが潤沢にあるPCでしかビルドできません。ビルドサーバを用意して、手元のノートPCで細かいデバッグをやる、というのがよくあるスタイルですが、ソースをア…

パケットキャプチャをしてわかった。LINEは危険。

ケータイの開発現場の話なので、多くは語れないが、今日、すこし解析をしていてこれはどうなんだ??と思った件を。メモ。 標的はAndroidのLINEはアプリ。1. LINEを入れていると、電池もちが悪くなる件LINEって、なんかAppleのiMessageみたく、SNSやってるよ…

root化した端末で、Settings.secure.*の設定値を勝手に書き換える。

電池もちの悪いスマホをどうにかしようと、LTEにアタッチさせない方法をいろいろ探っているときに、たまたま見つけたHackテクニックを紹介。すでに、某所にて回答として書いたネタだったりするのですが、結構いろいろできておもしろいので、こちらでも紹介。…

スマートフォンのLTE待受で電池がもたなさすぎな件についてAndroidソースコードを読んで考える

職業柄、毎日のようにスマホをさわっているのだけども、どうも気になって仕方がないことがある。それが、電池もちの悪さだ。企業秘密とかもあるので、多くは語れないのだけど、語れる部分をいうと、概してLTE待受の電池もちが悪い。うちの製品だけだったら、…

Xperia rayをWebサーバーにする。

なんとなくWeb鯖を自前で作りたいと感じたので、なんとなくアキバへ向かった。今回の必要条件としては、CPU 1GHz、メモリ512MB。そんでもって15000円以内。そんななかで、候補に上がったのは以下の3つ。・第4世代iPod touch・F-12C・Xperia ray(SO-03C)なん…