tag:blogger.com,1999:blog-46277754075133866502024-03-13T09:40:24.673+09:00Be the Worst思いついたことを適当に書くありかわhttp://www.blogger.com/profile/07843987089993439147noreply@blogger.comBlogger24125tag:blogger.com,1999:blog-4627775407513386650.post-66416198886278419362013-01-15T01:43:00.002+09:002013-01-15T01:43:51.683+09:00OptimusGのQメモ機能Optimus G L-01Eについてた<br />
Qメモ機能について調べてみた。<br />
<br />
Qメモ機能は、ボリュームボタンのUP、DOWN同時押しか、<br />
通知領域のボタンからのどちらかしか起動方法がないみたい。<br />
<br />
でこいつらが何をしてるかをLogcatで見てみると<br />
下記のようなログが出る。どうやらアクティビティを起動してるだけっぽい。<br />
<br />
<pre class="brush:plain;"> I/ActivityManager(467): START {flg=0x14810000 cmp=com.lge.QuickClip/.QuickClipActivity} from pid 21478</pre>
<br />
ということで同じ事をするアプリ作ってみた。<br />
中身は起動時にQuickClipActivityアクティビティを<br />
起動してるだけ。ちゃんとメモできます。<br />
使い道は特に思いつかない。。<br />
<br />
<div style="margin: 0;">
<div style="margin-left: 84px;">
<a href="https://play.google.com/store/apps/details?id=jp.junpei1982&feature=nav_result" style="text-decoration: none;" target="_blank"><img src="https://lh6.ggpht.com/UCyQfTSAqsKwoqldbjsr9DscTxtawJtL-Fpoe3hH71gTpLKgazsxloBC0O63WKv2ABw=w124" style="border: none; float: left; height: 75px; margin-left: -84px; width: 75px;" /><strong style="font-size: 1.2em;">QMemoLauncher</strong></a><br />
Junpei<br />
価格:無料</div>
</div>
<br />ありかわhttp://www.blogger.com/profile/07843987089993439147noreply@blogger.comtag:blogger.com,1999:blog-4627775407513386650.post-55685228676667245352012-12-24T05:00:00.000+09:002013-01-14T21:34:37.183+09:00PHPのforループの書き方<a href="http://matome.naver.jp/odai/2134058372410380801" target="_blank"> jQuery/JavaScriptの高速化テクニックまとめ</a><br />
を見てたら下記のような記述があった。<br />
<blockquote class="tr_bq">
<br />
for内にlengthを使わない(3倍以上早い)<br />
<pre class="brush:php;">for( i = 0 ; i < array.length ; i++ ){
}
</pre>
より<br />
<pre class="brush:php;">for(var i = 0 ,len = array.length; i < len ; i++ ){
}
</pre>
の方が3倍以上早い</blockquote>
JavaScriptはいろいろ面倒なんだなぁ・・と思ってたけど、<br />
もしかしてPHPでも同じだったりしてと思い試してみた。<br />
<br />
検証コードは下記のとおり。<br />
PEARのBenchmarkで<span style="font-family: 'Courier New', Courier, monospace;">長さ100万の配列を</span><br />
ループするだけの処理を作って実行時間を計測した。<br />
<pre class="brush:php;"> require_once 'Benchmark/Timer.php';
// 長さ100万の配列
$array = array_fill(0, 1000000, 0);
echo "[1. 毎回count()]" . PHP_EOL;
benchmark(function () use($array) {
for ($i = 0; $i < count($array); $i++) {
;
}
});
echo PHP_EOL;
echo "[2. 最初に一度だけcount()]" . PHP_EOL;
benchmark(function () use($array) {
$count = count($array);
for ($i = 0, $count = count($array); $i < $count; $i++) {
;
}
});
echo PHP_EOL;
echo "[参考. foreach]" . PHP_EOL;
benchmark(function () use($array) {
foreach ($array as $key => $value){
;
}
});
echo PHP_EOL;
echo "[なぞ. 2.とおなじ処理でuseを参照渡し]" . PHP_EOL;
benchmark(function () use(&$array) {
for ($i = 0, $count = count($array); $i < $count; $i++) {
;
}
});
echo PHP_EOL;
exit();
function benchmark($func) {
$timer = new Benchmark_Timer();
$timer->start();
$func();
$timer->stop();
$timer->display();
}
</pre>
<br />
結果は、前述のJavaScriptの例と同じように<br />
<ul>
<li>2. 最初に一度だけcount() → 約5ms</li>
<li>1. 毎回count() → 約28ms</li>
</ul>
となった(詳細は文末に)。<br />
<ul>
</ul>
2.のほうが断然速い(5倍くらい)。<br />
今までずっと1.で書いてたけど、<br />
foreachより遅いみたいでちょっとショック。<br />
<br />
あと一点謎なのが、本題と関係ないけど<br />
無名関数にuseで外側の配列みれるようにしているのを<br />
リファレンスにすると、なぜかすごく遅くなること。<br />
<br />
実行結果<br />
(環境:Windows8 64bit/Intel Core2 Duo E6600/メモリ4GB)<br />
<br />
<br />
<span style="font-family: Courier New, Courier, monospace;">[1. 毎回count()]</span><br />
<span style="font-family: Courier New, Courier, monospace;">----------------------------------------------------</span><br />
<span style="font-family: Courier New, Courier, monospace;">marker time index ex time perct </span><br />
<span style="font-family: Courier New, Courier, monospace;">----------------------------------------------------</span><br />
<span style="font-family: Courier New, Courier, monospace;">Start 1356292436.43409400 - 0.00%</span><br />
<span style="font-family: Courier New, Courier, monospace;">----------------------------------------------------</span><br />
<span style="font-family: Courier New, Courier, monospace;">Stop 1356292436.70909500 0.275001 100.00%</span><br />
<span style="font-family: Courier New, Courier, monospace;">----------------------------------------------------</span><br />
<span style="font-family: Courier New, Courier, monospace;">total - 0.275001 100.00%</span><br />
<span style="font-family: Courier New, Courier, monospace;">----------------------------------------------------</span><br />
<span style="font-family: Courier New, Courier, monospace;"><br /></span>
<span style="font-family: Courier New, Courier, monospace;">[2. 最初に一度だけcount()]</span><br />
<span style="font-family: Courier New, Courier, monospace;">----------------------------------------------------</span><br />
<span style="font-family: Courier New, Courier, monospace;">marker time index ex time perct </span><br />
<span style="font-family: Courier New, Courier, monospace;">----------------------------------------------------</span><br />
<span style="font-family: Courier New, Courier, monospace;">Start 1356292436.70931900 - 0.00%</span><br />
<span style="font-family: Courier New, Courier, monospace;">----------------------------------------------------</span><br />
<span style="font-family: Courier New, Courier, monospace;">Stop 1356292436.76084800 0.051529 100.00%</span><br />
<span style="font-family: Courier New, Courier, monospace;">----------------------------------------------------</span><br />
<span style="font-family: Courier New, Courier, monospace;">total - 0.051529 100.00%</span><br />
<span style="font-family: Courier New, Courier, monospace;">----------------------------------------------------</span><br />
<span style="font-family: Courier New, Courier, monospace;"><br /></span>
<span style="font-family: Courier New, Courier, monospace;">[参考. foreach]</span><br />
<span style="font-family: Courier New, Courier, monospace;">----------------------------------------------------</span><br />
<span style="font-family: Courier New, Courier, monospace;">marker time index ex time perct </span><br />
<span style="font-family: Courier New, Courier, monospace;">----------------------------------------------------</span><br />
<span style="font-family: Courier New, Courier, monospace;">Start 1356292436.76101700 - 0.00%</span><br />
<span style="font-family: Courier New, Courier, monospace;">----------------------------------------------------</span><br />
<span style="font-family: Courier New, Courier, monospace;">Stop 1356292436.97736200 0.216345 100.00%</span><br />
<span style="font-family: Courier New, Courier, monospace;">----------------------------------------------------</span><br />
<span style="font-family: Courier New, Courier, monospace;">total - 0.216345 100.00%</span><br />
<span style="font-family: Courier New, Courier, monospace;">----------------------------------------------------</span><br />
<span style="font-family: Courier New, Courier, monospace;"><br /></span>
<span style="font-family: Courier New, Courier, monospace;">[なぞ. 2.とおなじ処理でuseを参照渡し]</span><br />
<span style="font-family: Courier New, Courier, monospace;">----------------------------------------------------</span><br />
<span style="font-family: Courier New, Courier, monospace;">marker time index ex time perct </span><br />
<span style="font-family: Courier New, Courier, monospace;">----------------------------------------------------</span><br />
<span style="font-family: Courier New, Courier, monospace;">Start 1356292436.97756500 - 0.00%</span><br />
<span style="font-family: Courier New, Courier, monospace;">----------------------------------------------------</span><br />
<span style="font-family: Courier New, Courier, monospace;">Stop 1356292437.18008100 0.202516 100.00%</span><br />
<span style="font-family: Courier New, Courier, monospace;">----------------------------------------------------</span><br />
<span style="font-family: Courier New, Courier, monospace;">total - 0.202516 100.00%</span><br />
<span style="font-family: Courier New, Courier, monospace;">----------------------------------------------------</span><br />
<div>
<br /></div>
<br />
<br />
<br />ありかわhttp://www.blogger.com/profile/07843987089993439147noreply@blogger.comtag:blogger.com,1999:blog-4627775407513386650.post-8375409984803431872012-03-19T03:36:00.002+09:002012-03-19T03:36:23.904+09:00男は黒に染まれ<div class="separator" style="clear: both; text-align: left;">
</div>
<div class="separator" style="clear: both;">
</div>
<div class="separator" style="clear: both;">
ということで、黒背景にするための手順まとめ。</div>
<div class="separator" style="clear: both;">
下記の3つが対象。</div>
<div class="separator" style="clear: both;">
</div>
<ol>
<li>vim</li>
<li>Eclipse</li>
<li>TeraPad</li>
</ol>
<br />
<div class="separator" style="clear: both;">
vimはメニューから適当なのを選ぶだけ。</div>
<div class="separator" style="clear: both; text-align: left;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjbMivI4D9lVoXtnMWBAwWsfx7opfAh_csrsirynYronQ8QAvcZYE7PuzV42dGnq0CwLW8dE_Qpx0-kKcuX98-sLXiLMzQ-VzutxqY1rWWJu5Vptrse2Jor9S-eFTGK6OOw_OBqV_t1Hx4/s1600/vim.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjbMivI4D9lVoXtnMWBAwWsfx7opfAh_csrsirynYronQ8QAvcZYE7PuzV42dGnq0CwLW8dE_Qpx0-kKcuX98-sLXiLMzQ-VzutxqY1rWWJu5Vptrse2Jor9S-eFTGK6OOw_OBqV_t1Hx4/s320/vim.PNG" width="176" /></a></div>
<div class="separator" style="clear: both;">
<br /></div>
<div class="separator" style="clear: both;">
<br /></div>
<div class="separator" style="clear: both;">
Eclipseはプラグインの<a class="l" href="http://www.google.co.jp/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&sqi=2&ved=0CDAQFjAA&url=http%3A%2F%2Fwww.eclipsecolorthemes.org%2F&ei=iBpmT9j8JoSOiAfxk-XsBQ&usg=AFQjCNEXfSZWLc5jHp9INbSARAkhGEi7Eg&sig2=TOER0WiOHXg52Su9nIZ07g" style="color: #1122cc; cursor: pointer; font-family: arial, sans-serif; white-space: nowrap;"><em style="font-style: normal;">Eclipse</em> Color <em style="font-style: normal;">Themes</em></a>をインストールして設定画面から適当なのを選べばOK。</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiu8LPAgpCqcdrONVMQDrn8p4IafvmN18VFA0EpOA2VP96QsVsp2aTpz_rmr8qxCRjE3VJnywIYPLTo77qoxatMPm9jqW0Y9f-Hhf87bodEzxNlBE3QJuSwQL86hg71tpPlC9EbEqjEg_8/s1600/eclipse1.PNG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" height="145" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiu8LPAgpCqcdrONVMQDrn8p4IafvmN18VFA0EpOA2VP96QsVsp2aTpz_rmr8qxCRjE3VJnywIYPLTo77qoxatMPm9jqW0Y9f-Hhf87bodEzxNlBE3QJuSwQL86hg71tpPlC9EbEqjEg_8/s320/eclipse1.PNG" width="320" /></a></div>
<div style="margin-left: 1em; margin-right: 1em; text-align: left;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjn5PKDXzkDmb8OUHzQ7lV5tYIO-Jgjr_1eVUygyzLGdoX1XGuiE7LG_xm1FlFFNoeK9SAQXENV3LYs7oyf-g28uepfBPuk89gHwM8LPrFevke3czbkIlxP_5TEEILlQtHMU4Y8pq4fVkA/s1600/eclipse.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><br /></a></div>
<br />
<div class="separator" style="clear: both; text-align: left;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjn5PKDXzkDmb8OUHzQ7lV5tYIO-Jgjr_1eVUygyzLGdoX1XGuiE7LG_xm1FlFFNoeK9SAQXENV3LYs7oyf-g28uepfBPuk89gHwM8LPrFevke3czbkIlxP_5TEEILlQtHMU4Y8pq4fVkA/s1600/eclipse.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" height="236" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjn5PKDXzkDmb8OUHzQ7lV5tYIO-Jgjr_1eVUygyzLGdoX1XGuiE7LG_xm1FlFFNoeK9SAQXENV3LYs7oyf-g28uepfBPuk89gHwM8LPrFevke3czbkIlxP_5TEEILlQtHMU4Y8pq4fVkA/s320/eclipse.png" width="320" /></a></div>
<div class="separator" style="clear: both;">
<br /></div>
<div class="separator" style="clear: both;">
TeraPadは<a href="http://namakemono.6.ql.bz/web/index.php?a=memo&b=terapad" target="_blank">ここ</a>から色設定ファイルをDLしてきて設定画面で読み込む。</div>
<div class="separator" style="clear: both; text-align: left;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgEbPxtCZdj1Yjdm2My_mIJ7n8Kxa5esmO8Z9G-wBuzxgkmS7oqrsNsMtAe3Ko2K7J4Dv6uPbv960XiQvrB0Ogc0rmxgW9ulcOaLeEgmrgFxeRsLRO0xioMkGcddI-l1jpU39duqvTBJEw/s1600/terapad.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="281" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgEbPxtCZdj1Yjdm2My_mIJ7n8Kxa5esmO8Z9G-wBuzxgkmS7oqrsNsMtAe3Ko2K7J4Dv6uPbv960XiQvrB0Ogc0rmxgW9ulcOaLeEgmrgFxeRsLRO0xioMkGcddI-l1jpU39duqvTBJEw/s320/terapad.PNG" width="320" /></a></div>
<div class="separator" style="clear: both;">
<br /></div>
<br />
<br />
<div style="text-align: left;">
</div>ありかわhttp://www.blogger.com/profile/07843987089993439147noreply@blogger.comtag:blogger.com,1999:blog-4627775407513386650.post-10699139964338366932011-06-08T14:07:00.002+09:002011-06-08T14:07:58.783+09:00Google +1 ButtonのテストGoogle +1 Buttonを設置してみたので、<br />
試しにおして見るためのテスト記事ありかわhttp://www.blogger.com/profile/07843987089993439147noreply@blogger.comtag:blogger.com,1999:blog-4627775407513386650.post-79000991199864228672011-05-31T03:36:00.001+09:002011-06-01T02:41:25.735+09:00JSONPで遊んでみた最近JavaScript界隈のことが全然分かってないことに気づき、<br />
ちょっとあせったので手始めにJSONPで遊んでみた。<br />
<div><br clear="none" /></div><div>ことの始まりは、下記の記事を発見したこと。</div><div><a href="http://www.ideaxidea.com/archives/2011/03/jsonip.html" shape="rect" target="_blank">JSONで自分のIPアドレスを返してくれるだけのサイト『jsonIP』</a></div><div><br />
内容は、jsonip.comというサイトにアクセスすると</div><div>JSON形式で自分のIPが返ってくるというもので、さらにしらべてみると、<br />
URLの末尾に/xxxをつけるとJSONPになるらしい。</div><div><a href="http://twitter.com/#!/tkawa/status/43202159956856832">http://twitter.com/#!/tkawa/status/43202159956856832</a><br />
<br />
</div><div>JSONPというのは、呼び出し側で指定したコールバック関数に、<br />
JSON形式の値を適用する形(↓の形で)でJavaScriptを<br />
返してくれる仕組みのこと。<br />
<br />
例えば、 http://jsonip.com/callback と指定したら下記のようになる。</div><pre class="prettyprint">callback({"ip":"xx.xx.xx.xx"});</pre><div>(xxの部分はホントは数字)</div><div><br clear="none" /></div><div><div>難しいことは分からないけど、このやり方だと別のドメイン間でも</div><div>呼び出しができるらしい。</div><div><br clear="none" /></div></div><div>ということで、早速実践。まずはローカルのHTMLでjsonip.comに<br />
アクセスして自分のIPを表示させてみる。全体の流れはこんな感じ。</div><div><ol><li>コールバック関数の定義</li>
<li>JSONP実行</li>
</ol></div><div>2.の部分はいろいろやり方あるみたいだけど、今回は<br />
一番お手軽なscriptタグのsrc属性でURLを指定するやり方を使う。</div><br />
<a href="http://xeno.s1.xrea.com/files/my_ip.html">自分のIPを表示(HTML版)</a><br />
<pre class="prettyprint"><html>
<head>
<script>
<!--
function callback(obj) {
// 受け取ったJSONオブジェクトのipの値表示するだけ
alert(obj.ip);
}
// -->
</script>
</head>
<body>
<script type="text/javascript" src="http://jsonip.com/callback"></script><p>test</p>
</body>
</html>
</pre><br />
<div>これだけだとおもしろくないので、次はこれをブックマークレットにしてみる。<br />
やりかたは<span class="Apple-style-span" style="-webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; color: #655787; font-family: Arial, sans-serif; font-size: 15px; font-weight: bold; line-height: 24px;">別ドメインの外部スクリプトを実行するブックマークレット</span>を参考にした。<br />
<br />
説明が面倒くさくなったので、ポイントだけいうと下記の2点がHTML版とちがうところ。<br />
<ul><li>コールバック関数を呼び出せるようにwindowオブジェクトに定義する</li>
<li>JSONP呼び出しのために動的にscript要素を生成する</li>
</ul></div><a href="javascript:(function()%7Bwindow.callback%20=%20function(obj)%20%7B%20alert('%E3%81%82%E3%81%AA%E3%81%9F%E3%81%AEIP%E3%81%AF%20'%20+%20obj.ip%20+%20'%20%E3%81%A7%E3%81%99%E3%80%82');%7D;var%20d%20=%20document;var%20e%20=%20d.createElement('script');e.charset='utf-8';e.src%20=%20'http://jsonip.com/callback';d.getElementsByTagName('head')%5B0%5D.appendChild(e);%7D)();">自分のIPを表示(ブックマークレット版)</a><br />
<pre class="prettyprint">javascript:(function(){
window.callback = function(obj) {
alert('あなたのIPは ' + obj.ip + ' です。');
};
var d = document;
var e = d.createElement('script');
e.charset='utf-8';
e.src = 'http://jsonip.com/callback';
d.getElementsByTagName('head')[0].appendChild(e);
})();
</pre><br />
<div>これを使うとわざわざ確認君にいかなくてもIPアドレスが分かります。<br />
<br />
実用性ほぼ0だけど、数時間で動くものができたのでよしとしよう。<br />
<br />
</div>ありかわhttp://www.blogger.com/profile/07843987089993439147noreply@blogger.comtag:blogger.com,1999:blog-4627775407513386650.post-76150436272770618612010-10-25T02:35:00.001+09:002010-10-25T02:52:48.950+09:00HeliosでPHP書いてSVNにコミット<p>最新のEclipse 3.6(Helios)でPHP開発環境とSVNへコミット出来る環境の両方をそろえるのに意外と苦労したので、手順のメモをまとめておきます。</p> <ol> <li>Eclipse 3.6のインストール <br />普通に<a href="http://www.eclipse.org/downloads/">Eclipseのサイト</a>から落として、普通にインストールする。この時、<strong>「Eclipse Classic」</strong>のほうを落とすこと。<strong>「Eclipse for PHP Developers」</strong>だと理由は分からないけど、Subversiveいれてもうまく動きません。<img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_Eck5FnW0b9s/TMRuR29lvTI/AAAAAAAAAIM/U-1nOFSn5k0/image%5B35%5D.png?imgmax=800" width="421" height="484" /> </li> <li>PDTとSubversiveのインストール <br />「Eclipse Classic」を起動して、Help > Install New Software…からPDTとSubversiveをインストールする(標準の更新URLでPHPとSVNを検索すればでてくる)。 <a href="http://lh3.ggpht.com/_Eck5FnW0b9s/TMRuSYUdZ3I/AAAAAAAAAIQ/u-CN5IW9y98/s1600-h/image%5B17%5D.png"><img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_Eck5FnW0b9s/TMRuUtOxH6I/AAAAAAAAAIU/Qt4M2_2UmUY/image_thumb%5B12%5D.png?imgmax=800" width="644" height="250" /></a> 再起動後に下記のダイアログが表示されるので、そこからSVN Kit 1.3.2(一番新しいバージョンでOK)をインストールする。ダイアログが表示されない場合、Help > Subversive > Migrate Projects and Settingsを選択するといいかも。 <br /><a href="http://lh5.ggpht.com/_Eck5FnW0b9s/TMRuVwEVqBI/AAAAAAAAAIY/e0xm9o9P7Es/s1600-h/image%5B24%5D.png"><img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_Eck5FnW0b9s/TMRuX86c6DI/AAAAAAAAAIc/g2l622XBqfQ/image_thumb%5B15%5D.png?imgmax=800" width="619" height="484" /></a> </li> <li>PDTのアップデート <br />この状態で、PHPファイル同士で比較を行うと比較エディタがまともに動かなくなる。 <br /><a href="http://lh4.ggpht.com/_Eck5FnW0b9s/TMRuYfJu3dI/AAAAAAAAAIg/wQW-QCHuFk8/s1600-h/image%5B29%5D.png"><img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh4.ggpht.com/_Eck5FnW0b9s/TMRuZWNq1oI/AAAAAAAAAIk/v3d-ST73pbQ/image_thumb%5B22%5D.png?imgmax=800" width="536" height="484" /></a> <br />PDTのバグらしいので、下記の更新URLからPDTをアップデートする。 <br /><a title="http://download.eclipse.org/tools/pdt/updates/2.2/milestones" href="http://download.eclipse.org/tools/pdt/updates/2.2/milestones">http://download.eclipse.org/tools/pdt/updates/2.2/milestones</a> <br />すると比較エディタがちゃんと動作するようになる。 <br />めでたしめでたし。 <br /><a href="http://lh6.ggpht.com/_Eck5FnW0b9s/TMRuaKzZawI/AAAAAAAAAIo/JSWrolXrcNM/s1600-h/image%5B34%5D.png"><img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://lh5.ggpht.com/_Eck5FnW0b9s/TMRua8x5nmI/AAAAAAAAAIs/th0Dr4ap6hs/image_thumb%5B29%5D.png?imgmax=800" width="533" height="484" /></a> <br />参考リンク: <br /><a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=324051">https://bugs.eclipse.org/bugs/show_bug.cgi?id=324051</a> <br /></li> </ol> ありかわhttp://www.blogger.com/profile/07843987089993439147noreply@blogger.comtag:blogger.com,1999:blog-4627775407513386650.post-15589932152825483632010-08-04T19:12:00.001+09:002010-08-04T19:12:58.560+09:00dlvr.itによるブログ更新通知のテスト<p>テスト投稿です。</p> ありかわhttp://www.blogger.com/profile/07843987089993439147noreply@blogger.comtag:blogger.com,1999:blog-4627775407513386650.post-38273318887565378122010-07-02T01:38:00.000+09:002010-07-02T01:39:12.774+09:003rdができるゲーセンのマイマップ公開しました<p>これまで何度かテキストで3rdができるゲーセン情報をのせてましたが、なんだか見にくいのでGoogleMapのマイマップ形式にしてみました。地域限定(東京、神奈川のみ)だし、常に最新版ってわけではないですが、公開しているのでよかったら使ってみてください。</p> <iframe height="350" marginheight="0" src="http://maps.google.co.jp/maps/ms?hl=ja&gl=jp&ptab=2&ie=UTF8&oe=UTF8&msa=0&msid=116514886740748573473.00048a0ff7db275e403af&brcurrent=3,0x605d1b87f02e57e7:0x2e01618b22571b89,1&ll=35.620572,139.692761&spn=0.184189,0.156555&output=embed" frameborder="0" width="425" marginwidth="0" scrolling="no"></iframe> <br /><small>より大きな地図で <a style="text-align: left; color: #0000ff" href="http://maps.google.co.jp/maps/ms?hl=ja&gl=jp&ptab=2&ie=UTF8&oe=UTF8&msa=0&msid=116514886740748573473.00048a0ff7db275e403af&brcurrent=3,0x605d1b87f02e57e7:0x2e01618b22571b89,1&ll=35.620572,139.692761&spn=0.184189,0.156555&source=embed">3rdができるゲーセン</a> を表示</small> ありかわhttp://www.blogger.com/profile/07843987089993439147noreply@blogger.comtag:blogger.com,1999:blog-4627775407513386650.post-763980851680789402010-06-30T03:45:00.002+09:002010-06-30T03:49:27.416+09:00次に来る電車の時刻を確認できるアプリを作った出かけるとき最寄り駅までの道すがらXperiaで電車の時刻表をみようとしたけど、わざわざアプリ起動して駅名入力して表示してってのはやってられない。ってことでこれから乗りたい電車の時刻を簡単に確認するための専用アプリを作ってみました。<br />
まあ、ぶっちゃけていうというと<a href="http://www.forest.impress.co.jp/article/2003/02/12/nexttrainfortoday.html">NextTrain for Today(窓の杜の紹介記事)</a>のパ○リというか、Android版にあたるものです。以下に簡単な紹介をのせておきますので、よかったら使ってみてください。<br />
アプリ名:Next Train Notifier <br />
ダウンロード:<a href="http://market.android.com/search?q=pname:jp.junpei1982.android.nexttrainnotifier">コチラ</a>か下のQRコードからどうぞ。 <br />
<a href="http://lh6.ggpht.com/_Eck5FnW0b9s/TCo_K7TwhzI/AAAAAAAAAHA/F9z1yAuZmmc/s1600-h/chart%5B2%5D.png"><img alt="chart" border="0" height="124" src="http://lh3.ggpht.com/_Eck5FnW0b9s/TCo_Ld0bUxI/AAAAAAAAAHE/vIAtU-3-U5U/chart_thumb.png?imgmax=800" style="border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline;" title="chart" width="124" /></a> <br />
<br />
<ul><li>できること <br />
<ul><li>あらかじめ用意しておいたNextTrain形式の時刻表データを使って、通知エリアに現在時刻以降に来る3本分の電車の時刻を表示します。 </li>
<li>一度表示しておけば、 アプリが起動している間は、1分ごとに自動で更新されます。 </li>
<li>例えば自分の最寄り駅の時刻表データを設定して起動しておけば、出かけるときにぴったりのタイミングで電車に乗れたりできるはずです。 </li>
</ul></li>
<li>使い方 <br />
<ol><li>まず表示させたい駅のNextTrain形式の時刻表データ(.TBL形式のファイル)を準備します。 WindowsのPC上で、<a href="http://www.bzwind.com/ntak/utility/tconv5.html">TrainConv</a>というフリーソフトを使うと簡単に作成できます。 <br />
<span style="color: red;">※上記以外の方法で作った時刻表データは動作確認してないので、正常に動作しない可能性があります。</span> </li>
<li>上記のPCとAndroid携帯をUSB接続して、NextTrain形式の時刻表データをSDカードの下記のパス以下に転送します。 NextTrainNotifierフォルダは存在しないはずなので、各自で作ってください。 <br />
/sdcard/NextTrainNotifier <br />
※複数配置可能です </li>
<li>Android携帯で、Next Train Notifierを起動すると下記のような画面になります。時刻表データのタイトルがラジオボタンで並ぶので、表示させたいものにチェックした状態で、Startボタンをタップします。 <br />
<a href="http://lh6.ggpht.com/_Eck5FnW0b9s/TCo_L5XsJ6I/AAAAAAAAAHI/K7m-rYMm0aI/s1600-h/01%5B2%5D.png"><img alt="01" border="0" height="244" src="http://lh3.ggpht.com/_Eck5FnW0b9s/TCo_Mlg6KBI/AAAAAAAAAHM/CgvqZQ8dJuk/01_thumb.png?imgmax=800" style="border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline;" title="01" width="139" /></a> </li>
<li>通知エリアに先程選択した時刻表データから、タイトルと現在時刻以降に来る3本分の電車を表示します。この例だと3つある通知の一番上のものです。 <br />
<a href="http://lh5.ggpht.com/_Eck5FnW0b9s/TCo_M1LXIlI/AAAAAAAAAHQ/9m0SZFvRIy0/s1600-h/02%5B2%5D.png"><img alt="02" border="0" height="244" src="http://lh3.ggpht.com/_Eck5FnW0b9s/TCo_Na-36RI/AAAAAAAAAHU/0PDVzNniNKs/02_thumb.png?imgmax=800" style="border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline;" title="02" width="139" /></a> </li>
<li>表示内容は1分ごとに自動で更新されます。この例だと、先程から時間が経過して、次の電車に表示されていた0:29発の赤羽行きが既に出発した後になります。その時はちゃんと次の電車が0:45発の上野行きに更新されます。 <br />
<a href="http://lh3.ggpht.com/_Eck5FnW0b9s/TCo_N4MlpQI/AAAAAAAAAHY/2cQUn9GXXmQ/s1600-h/03%5B2%5D.png"><img alt="03" border="0" height="244" src="http://lh4.ggpht.com/_Eck5FnW0b9s/TCo_OTXYIjI/AAAAAAAAAHc/yFP7LxupFRM/03_thumb.png?imgmax=800" style="border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline;" title="03" width="139" /></a> </li>
<li>通知が不要になったら、Stopボタンを押すと通知が消えます。 </li>
</ol></li>
<li>でき[て]ないこと <br />
<ul><li>Xperiaだけで動作確認しています。バージョン、機種に依存する処理はないと思うので、未確認ですが、一般的なAndroid携帯なら動くはず。 </li>
<li>アプリを起動してから時刻表データの読み込みが完了するまで、少し時間がかかります。 <br />
<ul><li>読み込み部分のロジックを突貫工事で作ったので、今後見なおしする予定 </li>
</ul></li>
<li>アプリ終了後、次回起動時はもういちど時刻表データを選択しなおす必要があります。 <br />
<ul><li>設定を保持できるようにする予定 </li>
</ul></li>
<li>一度に表示できる時刻表データは一種類のみです。 </li>
<li>平日ダイヤと休日ダイヤの切り替えは手動で行う必要があります。 </li>
<li>常駐アプリじゃないので、アプリが落ちると自動更新が止まります。 <br />
<ul><li>サービス化して常駐できるようにする予定 </li>
</ul></li>
<li>NextTrain形式のすべての仕様をサポートできていません。TrainConvで作った時刻表データのみで動作確認しています。 </li>
<li>アイコンは絵心がないので、ありません。 <br />
<ul><li>誰かたすけて。あと通知エリアでなぜかアイコンがでかいサイズになるのも困ってる。 </li>
</ul></li>
</ul></li>
</ul>今度のアプリは少しはニーズがあるはず。たぶん。ありかわhttp://www.blogger.com/profile/07843987089993439147noreply@blogger.comtag:blogger.com,1999:blog-4627775407513386650.post-39048993271459838192010-06-15T14:33:00.001+09:002010-06-15T14:33:38.625+09:00川崎近辺のゲーセンの3rd事情(2010年6月版)<p>需要ないと思うけど、何ヶ月か前に調べたやつの更新版のせます。</p> <ul> <li>ティルト川崎 50円1クレ 対戦台2セット <ul> <li>わりと人がいる(最近フリプもはじまった) </li> <li>普段はここでやってます</li> </ul> </li> <li>(閉店)<s>イリンクス鹿島田店  100円2クレ 一人用1台</s> <ul> <li><s></s><s>過疎すぎて対戦台なくなったっぽい</s> </li> </ul> </li> <li>ニューカスタム溝口 50円1クレ 対戦台1セット <ul> <li>ほとんどいったことないのでよく分からない </li> </ul> </li> </ul> (川崎以外) <ul> <li>シルクハット蒲田M2店(モアイ) 50円1クレ 対戦台2セット <ul> <li>そこそこ人がいる </li> </ul> </li> <li>渋谷会館 50円1クレ 3R 対戦台3セット <ul> <li>平日夕方でも結構人がいる。ガチ対戦がおおい? </li> </ul> </li> <li>TQアミューズメント大岡山店 50円1クレ 対戦台1セット <ul> <li>コンパネが端にある筐体</li> </ul> </li> <li>(神保町)神田ZEST 50円1クレ 対戦台1セット <ul> <li>コンパネが端にある筐体</li> <li>本当は神保町タローに行きたかったんだけど・・・</li> </ul> </li> </ul> ありかわhttp://www.blogger.com/profile/07843987089993439147noreply@blogger.comtag:blogger.com,1999:blog-4627775407513386650.post-13975679060749547072010-06-07T16:35:00.002+09:002010-06-30T03:49:44.442+09:00Num Converter公開しました<a href="http://junpei1982.blogspot.com/2010/05/blog-post.html">この前</a>つくったNum ConverterをAndroidマーケットに公開しました。中身は変わってないので、以前インストールしてくれた人はアップデート不要です。<br />
(Androidの人のみ)ダウンロードは<a href="http://market.android.com/search?q=pname:jp.junpei1982.android.numconverter">コチラ</a>か下のQRコードからどうぞ。<br />
<a href="http://lh6.ggpht.com/_Eck5FnW0b9s/TAyhTSJolPI/AAAAAAAAAG0/qSyY49UB5KI/s1600-h/chart%5B2%5D.png"><img alt="chart" border="0" height="124" src="http://lh4.ggpht.com/_Eck5FnW0b9s/TAyhTk7tW4I/AAAAAAAAAG4/XaNY_aE_iKs/chart_thumb.png?imgmax=800" style="border-bottom-width: 0px; border-left-width: 0px; border-right-width: 0px; border-top-width: 0px; display: inline;" title="chart" width="124" /></a><br />
余談ですが、Chrome開発版(6.0.422.0 dev)だとAndroidマーケットの公開ページがうまく動かない(apkや画像がアップロードできない)ので、IEでやりました。試してないけどFireFoxでもいいらしい。ありかわhttp://www.blogger.com/profile/07843987089993439147noreply@blogger.comtag:blogger.com,1999:blog-4627775407513386650.post-53863942563482325672010-05-18T03:10:00.001+09:002010-05-18T03:10:35.366+09:00マッシュルームアプリ作ってみた<p>フリック入力目当てで、Simejiを愛用しているんですが、以前使っていたSO905iとは変換がかなり違うので、戸惑うことが結構あった。</p> <p>とくに困ったのが、SO905iだとひらがな入力中にあ段(例:あかさ)の文字をいくつか入力して変換すると対応するテンキーの数字(例:123)に変換されるってのがあったけど、これがSimejiだと入力切り替えしないとできない(はず)。</p> <p>このSimejiには<a href="http://www.adamrocker.com/blog/mushroom-collaborates-with-simeji/">マッシュルーム</a>という仕組みがあって、お手軽に自分のアプリとSimejiとでマッシュアップ(Simejiで入力→自作アプリで変換→Simejiで表示)ができちゃうらしい。ということで、早速つくってみました。</p> <p>アプリ名:Num Converter </p> <ul> <li>仕様 <ul> <li>あ段(あ、か、さ、・・・)の文字を入力して、マッシュルーム呼出から、Num Converterを呼びだすと対応するテンキーの半角数字(1、2、3、・・・)に変換されます。 </li> <li>あ段のひらがな以外は、そのまま入力された文字を表示します。 </li> </ul> </li> <li>スクリーンショット <ol> <li>あ段(あ、か、さ、・・・)の文字して、マッシュルームをボタンを長押しする。 <br /><a href="http://lh3.ggpht.com/_Eck5FnW0b9s/S_GGkHZtSHI/AAAAAAAAAGE/dVmhoaM5QtE/s1600-h/nt001%5B5%5D.png"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="nt001" border="0" alt="nt001" src="http://lh5.ggpht.com/_Eck5FnW0b9s/S_GGkhVNgLI/AAAAAAAAAGI/I8g1XW5MEUU/nt001_thumb%5B1%5D.png?imgmax=800" width="139" height="244" /></a> </li> <li>マッシュルーム一覧で、Num Converterをタップする。 <br /> <a href="http://lh3.ggpht.com/_Eck5FnW0b9s/S_GGlGDNuSI/AAAAAAAAAGM/1oVFJImWey4/s1600-h/nt002%5B5%5D.png"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="nt002" border="0" alt="nt002" src="http://lh6.ggpht.com/_Eck5FnW0b9s/S_GGllPeGRI/AAAAAAAAAGQ/eVm8dWiWRVs/nt002_thumb%5B1%5D.png?imgmax=800" width="139" height="244" /></a> </li> <li>入力した文字が対応するテンキーの半角数字に変換されて出力されます。 <br /><a href="http://lh3.ggpht.com/_Eck5FnW0b9s/S_GGmLuV32I/AAAAAAAAAGU/FB1Pb69MOYI/s1600-h/nt003%5B5%5D.png"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="nt003" border="0" alt="nt003" src="http://lh5.ggpht.com/_Eck5FnW0b9s/S_GGmpol7iI/AAAAAAAAAGY/-ohHg58fFoM/nt003_thumb%5B1%5D.png?imgmax=800" width="139" height="244" /></a> </li> </ol> </li> <li>ダウンロード(※動作確認はXperiaだけしかしてません) <ul> <li><a href="http://xeno.s1.xrea.com/files/NumConverter.apk">NumConverter.apk</a> (13.1 KB) </li> </ul> </li> </ul> ありかわhttp://www.blogger.com/profile/07843987089993439147noreply@blogger.comtag:blogger.com,1999:blog-4627775407513386650.post-13141340295154583972010-05-16T03:54:00.001+09:002010-05-16T03:54:02.589+09:00AndroidでDesktop Notificatin<p><a href="http://junpei1982.blogspot.com/2010/04/desktop-notifications.html">ちょっと前</a>に書いたDesktop Notificatinが、Androidのブラウザでは動作しなくて悔しかったので、Android版Desktop Notificatinを無理やり実装してみた。</p> <p>といっても、ブラウザに手を入れるのは無理くさいので、ブラウザから呼び出すAndroid専用Desktop Notificatin API(以下aNotificatin.js)と、そのAPIからIntentを使って呼び出されるAndroidアプリ(以下NotifyReceiver)の組み合わせで実装してみた。</p> <p>[動作している絵] </p> <ol> <li>Desktop Notificatin APIを使ったページにaNotificatin.jsを使うように改造を施す(10行くらい)。 </li> <li>上記のページをAndroidのブラウザで表示して、通知許可を実行。 <br /><a href="http://lh6.ggpht.com/_Eck5FnW0b9s/S-7tuOwnOPI/AAAAAAAAAFc/SYPQMNymuAQ/s1600-h/001%5B2%5D.png"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="001" border="0" alt="001" src="http://lh6.ggpht.com/_Eck5FnW0b9s/S-7tusQ9pOI/AAAAAAAAAFg/k7R1T-He6gM/001_thumb.png?imgmax=800" width="139" height="244" /></a> </li> <li>通知許可のダイアログがでるので、OKボタンを押す。 <br /><a href="http://lh4.ggpht.com/_Eck5FnW0b9s/S-7tvLRl6UI/AAAAAAAAAFk/_5jQBldIX8s/s1600-h/002%5B2%5D.png"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="002" border="0" alt="002" src="http://lh4.ggpht.com/_Eck5FnW0b9s/S-7tvSPQsqI/AAAAAAAAAFo/9oM1d26kgoU/002_thumb.png?imgmax=800" width="139" height="244" /></a> </li> <li>通知ボタンを押すと、NotifyReceiverが起動して通知が行われる(画面左上のアイコン)。 <br /><a href="http://lh5.ggpht.com/_Eck5FnW0b9s/S-7tvz4rOVI/AAAAAAAAAFs/HKb-io5ax4Y/s1600-h/003%5B2%5D.png"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="003" border="0" alt="003" src="http://lh5.ggpht.com/_Eck5FnW0b9s/S-7twZEpzII/AAAAAAAAAFw/iClCrhcvh2g/003_thumb.png?imgmax=800" width="139" height="244" /></a> </li> <li>通知の詳細を見ると、アイコン、タイトル、本文、ソースなどが通知元で指定したものどおりになっている。 <br /><a href="http://lh6.ggpht.com/_Eck5FnW0b9s/S-7tw1fIBFI/AAAAAAAAAF0/7warVagVuBo/s1600-h/004%5B2%5D.png"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="004" border="0" alt="004" src="http://lh3.ggpht.com/_Eck5FnW0b9s/S-7txjYe6hI/AAAAAAAAAF4/alxSgHgmq0s/004_thumb.png?imgmax=800" width="139" height="244" /></a> </li> <li>もちろんPC上のChromeで同じページを表示すれば、ちゃんと通知が出せます。 <br /><a href="http://lh3.ggpht.com/_Eck5FnW0b9s/S-7tx9sVLjI/AAAAAAAAAF8/jgli-gcWVhA/s1600-h/005%5B5%5D.png"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="005" border="0" alt="005" src="http://lh3.ggpht.com/_Eck5FnW0b9s/S-7tyVHPvlI/AAAAAAAAAGA/mxbCwypfXog/005_thumb%5B1%5D.png?imgmax=800" width="244" height="171" /></a> </li> </ol> <p>[できているとこ]</p> <ul> <li>createHTMLNotification以外のAPIは(できはともかく)用意できた。 </li> </ul> <p>[できてないとこ]</p> <ul> <li>aNotificatin.js <ul> <li>Permission周りはcookieで無理やり実装したのであやしいです。 </li> <li>createHTMLNotificationはサポートしていません。 </li> <li>Notificationのevent handler(onXXX)はサポートしません。 </li> <li>jquery.cookie.jsに依存しているので、使うとき面倒。 </li> </ul> </li> <li>NotifyReceiver <ul> <li>アプリ起ち上げ時に何もないウィンドウが表示されます。 </li> <li>複数の通知を受け取った場合、一番後の通知以外は消えます。 </li> <li>長い本文付きの通知だと表示がとぎれます。 </li> </ul> </li> </ul> ありかわhttp://www.blogger.com/profile/07843987089993439147noreply@blogger.comtag:blogger.com,1999:blog-4627775407513386650.post-16137810380868225692010-05-07T13:13:00.000+09:002010-05-07T13:33:18.257+09:00クリックしても何も反応しないNotificationの作り方<p>初心者が自作Androidアプリを作ってた時に調べたことのメモ</p> <p>Notification(画面の上にアイコンが出るやつ)をクリックされたときに通知元アプリの画面に遷移させたくない場合、下記のソースのようにgetActivity()呼び出し時に空のIntentを引数に指定すると、クリックしても何も反応しないようになる(Xperia X10のエミュレータで動作確認)。 </p> <pre class="prettyprint">NotificationManager manager =<br /> (NotificationManager) getSystemService(<br /> Context.NOTIFICATION_SERVICE);<br />Notification notification =<br /> new Notification(<br /> R.drawable.icon, "",<br /> System.currentTimeMillis());<br />PendingIntent contentIntent =<br /> PendingIntent.getActivity(<br /> this, 0, /**/new Intent()/**/, 0);<br />notification.setLatestEventInfo(<br /> this, "title", "text", contentIntent);<br />manager.notify(R.string.hello, notification);</pre> ありかわhttp://www.blogger.com/profile/07843987089993439147noreply@blogger.comtag:blogger.com,1999:blog-4627775407513386650.post-82894745007340953732010-04-28T04:13:00.001+09:002010-04-28T04:13:40.043+09:00Desktop Notificationsで遊んでみた<p><a href="http://www.ideaxidea.com/archives/2010/04/webkit_alert.html">こちら</a>のブログで紹介されていた、Webkit専用の通知APIが面白そうなので、遊んでみた。簡単にいうとJavaScriptで通知APIを呼びだすと、ブラウザ上じゃなくて、デスクトップ(の右下)に通知が飛ばせるもの。</p> <p>使い方は英語の資料ばっかりでよくわからなかったので、参考サイトにあるHTMLをベースにして、ラーメンタイマーをつくってみた。タイマーをセットすると、3分後に通知がくるってだけです。。。</p> <p><a href="http://xeno.s1.xrea.com/ramen.html">ラーメンタイマー</a></p> <p>ソースみたら分かると思いますが、すごくシンプルなAPIなので、既存サービスにも簡単に取り入れることができそう。</p> <p>ちなみに現状では、WindowsのChromeでは動くけど、他のブラウザではあまり動かないらしい(詳しはわかりません)。個人的にはAndroidのChromeで動いて欲しいなぁ。アプリ作らなくて済むケースが増えそうなので。</p> <p>参考サイト</p> <ul> <li><a href="http://0xfe.blogspot.com/2010/04/desktop-notifications-with-webkit.html">0xFE – 11111110b – 0376 – 254 b9#9: Desktop Notifications with WebKit</a> </li> </ul> ありかわhttp://www.blogger.com/profile/07843987089993439147noreply@blogger.comtag:blogger.com,1999:blog-4627775407513386650.post-75767218171725380652010-04-09T20:28:00.001+09:002010-04-09T20:29:53.448+09:00Xperiaで自作アプリを動かす方法<p>せっかくのAndroid携帯なので、自作アプリを動かしてみる。事前にリサーチした結果だとドライバがうまくインストールできないなど、苦労している結果が見つかったけど、やってみたら特に問題なくできた。</p> <p>ということで、手順をまとめる。</p> <ul> <li>用意するもの <ul> <li>Xperia </li> <li>パソコン(うちのは32bit版Windows7。別に他のでもいいはず) </li> </ul> </li> <li>手順 <ol> <li>テキトーにJavaいれてEclipseいれてAndroid SDKいれてアプリを作る。ちゃんとしたものつくるならXperia用のAdd-onを別途入れたほうがよさそう(入手先:<a href="http://itpro.nikkeibp.co.jp/android/aaa2010spring/xperia.html">コチラ</a>のリンクを辿った先)。 </li> <li>Xperiaの設定変更(野良アプリインストール許可、USBデバグON)を下記のサイトの記事を参考にやる。 <br />参照:<a href="http://www.adakoda.com/android/000242.html">「逆引きAndroid入門 > 実機でデバッグするには」</a> </li> <li>付属USBケーブルでXperiaをPCに接続。ここではドライバがうまく入らないはず。 </li> <li>PCとデータ同期する時と同じようにXperia上で、SDカードをマウントする。 <br />参照:<a href="http://smartphone.nttdocomo.co.jp/faq/Xperia/manual/telmove/mount/">Xperia™をパソコンにマウントして、外部メモリとして利用する方法(NTT docomo)</a> </li> <li>PCのデバイスマネージャを開いて、Xperiaを選択(SO-01Bという名前になってるはず)し、ドライバ更新を実行。 </li> <li>ドライバの場所を指定するようにして、Xperiaの付属SDの下記のパスを指定してドライバインストール。\CDBrowser\Drivers\ADB </li> <li>終わったら、Eclipse上のAndroidプロジェクトを選択して、実行する。Android Device ChooserダイアログからXperiaを選んでOKを選択(エミュレータを全部落としておくとわかりやすい)。 </li> <li>できあがり!   <br /><a href="http://lh4.ggpht.com/_Eck5FnW0b9s/S78Pdwu5VOI/AAAAAAAAAEA/p_wo7AiTNMk/s1600-h/device%5B8%5D.png"><img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="device" border="0" alt="device" src="http://lh6.ggpht.com/_Eck5FnW0b9s/S78PejlMCEI/AAAAAAAAAEI/-PkLURso2jE/device_thumb%5B2%5D.png?imgmax=800" width="120" height="214" /></a> </li> </ol> </li> </ul> ありかわhttp://www.blogger.com/profile/07843987089993439147noreply@blogger.comtag:blogger.com,1999:blog-4627775407513386650.post-91198053646824055902010-04-05T02:26:00.001+09:002010-04-05T02:26:49.987+09:00Xperia買ったら<p>予約特典で↓の本がついてきた。一回見たらもういいやな内容だったけど、Amazonでみたら結構売れてるみたいでびっくり。今のうちに売ってしまったほうがいいかな。。</p> <iframe style="width: 120px; height: 240px" marginheight="0" src="http://rcm-jp.amazon.co.jp/e/cm?t=arisugawanopa-22&o=9&p=8&l=as1&asins=482223441X&fc1=000000&IS2=1&lt1=_blank&m=amazon&lc1=0000FF&bc1=000000&bg1=FFFFFF&f=ifr" frameborder="0" marginwidth="0" scrolling="no"></iframe> ありかわhttp://www.blogger.com/profile/07843987089993439147noreply@blogger.comtag:blogger.com,1999:blog-4627775407513386650.post-81868252140309183622010-03-31T06:35:00.001+09:002010-03-31T06:35:15.721+09:00川崎近辺のゲーセンの3rd事情(2010年3月版)<p>さすがに10年前のゲームだとおいてるとこが少ないので、急にやりたくなった時のために備忘録としてまとめときます。</p> <ul> <li>ティルト川崎 50円1クレ 対戦台3セット(旧2、新1) <ul> <li>わりと人がいる </li> </ul> </li> <li><a href="http://business4.plala.or.jp/ilinx-k">イリンクス鹿島田店</a> 100円2クレ 一人用1台 <ul> <li>過疎すぎて対戦台なくなったっぽい </li> </ul> </li> <li>ニューカスタム溝口 50円1クレ 対戦台1セット <ul> <li>ほとんどいったことないのでよく分からない </li> </ul> </li> </ul> <p>あと川崎じゃないけど、</p> <ul> <li>シルクハット蒲田M2店(モアイ) 50円1クレ 対戦台2セット <ul> <li>そこそこ人がいる </li> </ul> </li> </ul> ありかわhttp://www.blogger.com/profile/07843987089993439147noreply@blogger.comtag:blogger.com,1999:blog-4627775407513386650.post-86579215872748247482010-03-28T18:54:00.001+09:002010-03-28T18:54:15.932+09:00friendfeedでブログの更新お知らせテスト<p>できたかな?</p> <p>参考元:<a href="http://www.ideaxidea.com/archives/2009/06/twitter_via_friendfeed.html">ブログの更新情報は『Friendfeed』で流すことにした</a></p> ありかわhttp://www.blogger.com/profile/07843987089993439147noreply@blogger.comtag:blogger.com,1999:blog-4627775407513386650.post-10190049468200725372010-03-23T03:51:00.001+09:002010-03-31T06:36:02.314+09:003rdの段位戦おもしろい<p>最近ニコ動で3rdの動画結構あがってるけど、その中でもバーサスの段位戦はレベル高すぎてやばい。いつかこんなふうになりたいけど、無理だろうな・・・</p> <script type="text/javascript" src="http://ext.nicovideo.jp/thumb_watch/sm9910241?w=400&h=300"></script><noscript></noscript> <p>ニコ動の外部プレイヤーの貼付けテストです。</p> <p><font color="#ff8080">(追記)外部プレイヤーで表示される範囲が左によってて、右はじがみえなぁ・・・。原因がよくわからん。</font></p> <p><font color="#ff8080">(追記2)<a href="http://adiaphora.blog.shinobi.jp/Entry/716/">ココ</a>の記事を参考に、URLのパラメータ追加で外部プレイヤーのサイズ指定をした。そしたらうまく表示できたっぽい。</font></p> ありかわhttp://www.blogger.com/profile/07843987089993439147noreply@blogger.comtag:blogger.com,1999:blog-4627775407513386650.post-66024753311482123422010-03-15T02:21:00.001+09:002010-03-15T02:21:07.987+09:00Small Basicさわってみた<p>Small Basicというお手軽言語をマイクロソフトがつくったらしい。自称プログラミング言語マニアなので適当にさわってみた。</p> <p>教育用みたいで、すごいシンプルなつくりで、何でもできるわけではないけどその分お手軽な感じ。すごいと思ったのがつくったアプリがボタン1つでWeb上に公開できるところ(アプリはSilverlight上で動く)。</p> <p>てことでつくったのが<a href="http://smallbasic.com/smallbasic.com/program/?TJK786">コチラ</a>。なんの意味もないですが、1秒ごとに数字が増えていきます。Enterキーで一時停止できます。</p> <p>(こういう時さくっと、かっこいいサンプルを作れるセンスがほしい・・・)</p> <p>参考サイト</p> <ul> <li><a href="http://www.atmarkit.co.jp/fdotnet/vblab/smallbasic/smallbasic_01.html">@ITの紹介記事</a> </li> <li><a href="http://salvw.miscnotes.com/">猿頁</a> </li> </ul> ありかわhttp://www.blogger.com/profile/07843987089993439147noreply@blogger.comtag:blogger.com,1999:blog-4627775407513386650.post-19530922946254434602010-03-14T16:13:00.001+09:002010-03-14T16:14:00.033+09:00Xperia<p>昨日ヨドバシでXperia(黒)を予約してきた。まだ実機をさわってないのでちょっと不安。</p> ありかわhttp://www.blogger.com/profile/07843987089993439147noreply@blogger.comtag:blogger.com,1999:blog-4627775407513386650.post-14578506070593601812010-03-13T04:08:00.002+09:002010-03-13T04:11:49.339+09:00カスタマイズ第1弾ネタがないので、<a href="http://jutememo.blogspot.com/2008/01/blogger.html">コチラ</a>を参考にソースコードがきれいに表示できるようにカスタマイズしてみた。うまくいってたら色が変わるはず。。<br />
<pre class="prettyprint">main = putStr "Hello World!"</pre>ありかわhttp://www.blogger.com/profile/07843987089993439147noreply@blogger.comtag:blogger.com,1999:blog-4627775407513386650.post-35161957234412647612010-03-12T02:51:00.001+09:002010-03-12T02:51:30.114+09:00書き込みテスト<p>Windows Live Writerで書き込みのテスト</p> ありかわhttp://www.blogger.com/profile/07843987089993439147noreply@blogger.com