<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>nunnun&#039;s weblog</title>
    <link>http://blog.nunnun.jp/</link>
    <description></description>
    <language>ja</language>
    <generator>Nucleus CMS v3.41</generator>
    <copyright>&#169;</copyright>
    <category>Weblog</category>
    <docs>http://backend.userland.com/rss</docs>
    <image>
      <url>http://blog.nunnun.jp/nucleus/nucleus2.gif</url>
      <title>nunnun&#039;s weblog</title>
      <link>http://blog.nunnun.jp/</link>
    </image>
    <item>
 <title>SIMフリーなiPhone4Sで緊急地震速報を受信する</title>
 <link>http://blog.nunnun.jp/Technology/cmas_alert_on_iphone_with_docomo.html</link>
<description><![CDATA[<p><img src="http://farm8.staticflickr.com/7003/6810813327_d191e83734.jpg" border="0" width="333" height="500" /></p>
<p>SIMロック解除されたiPhone 4SでドコモのSIMを使って運用できることは既知で、SoftBankやKDDIと同様にCarrier BundleをインストールすればCMAS(緊急地震速報)を受信することは論理的に可能だったのだけど、実際に設定して動作を確認した訳じゃなかった。</p>
<p>ドコモやソフトバンクの緊急地震速報は3GPPのCBS(Cell Broadcast SMS)という仕組みを使っていて、その中のMessageIdと呼ばれる情報要素が緊急地震速報である場合にアラートを出すという仕組みでした。[<a href="#ref1">1</a>]</p>
<p>ただ、どのMessageIdが緊急地震速報（というかエリアメール）に相当するかの情報は開示されていなかったので、どのメッセージを表示したらいいかわかりませんでした。</p>
<p>ちょうどドコモのエリアメール対応Androidを弄っていたところ、エリアメールに相当するMessageIdがわかったので、設定してみた。<br /><a href="https://twitter.com/#!/nunnun/status/161111214519365632" target="_blank"><img src="http://blog.nunnun.jp/media/1/20120203-1328254953.png" border="0" width="546" height="216" /></a></p>
<p>具体的にはMessageIdが40960から41983なメッセージをドコモはエリアメールと扱っているみたい。<br />そこでSoftbank_jp.bundleを参考に改変してみました。こんな感じ。</p>
<p><code> </code></p>
<pre>&lt;dict&gt;
	&lt;key&gt;MessageIDParameters3GPP&lt;/key&gt;
	&lt;dict&gt;
		&lt;key&gt;OptOut&lt;/key&gt;
		&lt;array&gt;
			&lt;dict&gt;
				&lt;key&gt;ToServiceID&lt;/key&gt;
				&lt;integer&gt;41983&lt;/integer&gt;
				&lt;key&gt;FromServiceID&lt;/key&gt;
				&lt;integer&gt;40690&lt;/integer&gt;
				&lt;key&gt;Selected&lt;/key&gt;
				&lt;true/&gt;
			&lt;/dict&gt;
			&lt;dict&gt;
				&lt;key&gt;ToServiceID&lt;/key&gt;
				&lt;integer&gt;43009&lt;/integer&gt;
				&lt;key&gt;FromServiceID&lt;/key&gt;
				&lt;integer&gt;43008&lt;/integer&gt;
				&lt;key&gt;Selected&lt;/key&gt;
				&lt;true/&gt;
			&lt;/dict&gt;
		&lt;/array&gt;
	&lt;/dict&gt;
&lt;/dict&gt;</pre>
<p>ちなみに43008-43009はSoftBankのCarrier Bundleにもともと入ってたもの。</p>
<p>で、今朝の東京都の帰宅困難者訓練でエリアメールの配信を行う[<a href="#ref2">2</a>]とのことだったので、待機してたところ無事受信できた。</p>
<ol>
<li id="ref1">緊急情報の同報配信サービスの開発 - <a href="http://www.ntt.co.jp/journal/0806/files/jn200806036.pdf" target="_blank">http://www.ntt.co.jp/journal/0806/files/jn200806036.pdf</a></li>
<li id="ref2">東京都防災ホームページ：東京都の対策 - 帰宅困難者対策訓練 -&nbsp;<a href="http://www.bousai.metro.tokyo.jp/japanese/tmg/0203kitaku.html" target="_blank">http://www.bousai.metro.tokyo.jp/japanese/tmg/0203kitaku.html</a></li>
</ol>]]></description>
 <category>Technology</category>
<comments>http://blog.nunnun.jp/Technology/cmas_alert_on_iphone_with_docomo.html</comments>
 <pubDate>Fri, 3 Feb 2012 16:58:37 +0900</pubDate>
</item><item>
 <title>facebook cardを作った</title>
 <link>http://blog.nunnun.jp/Private/facebook_card.html</link>
<description><![CDATA[<p><a href="http://www.moo.com/share/7czgp2" target="_blank">moo.com</a>とfacebookがコラボして、<a href="https://www.facebook.com/about/timeline" target="_blank">新しいTimeline</a>への移行を実施したユーザ向けにfacebook cardなるものをタダで作れるキャンペーンを行っていたので、作ってみた。</p>
<p><a href="http://instagr.am/p/mLbOI/" target="_blank"><img src="http://distilleryimage8.s3.amazonaws.com/f02327564b2211e19e4a12313813ffc0_7.jpg" border="0" width="306" height="306" /></a><br />[<a href="http://instagr.am/p/mLbOI/" target="_blank">Instagram</a>]</p>
<p>Timelineをつくって、<a href="http://uk.moo.com/products/facebook-cards.html" target="_blank">Facebook Cards from MOO</a> にアクセスすると作ることができる。50枚までは送料含めてタダ。</p>
<p>発注したのが、1月19日で東京の自宅に届いたのが、1月30日なので大体1週間と少しぐらい。サイトには2週間待ってねって書いてあったので大体そんな感じ。</p>
<p><a href="http://instagr.am/p/mLcZU/" target="_blank"><img src="http://distilleryimage8.s3.amazonaws.com/42d69dfc4b2311e19896123138142014_7.jpg" border="0" width="306" height="306" /></a><br />[<a href="http://instagr.am/p/mLcZU/" target="_blank">Instagram</a>]&nbsp;</p>
<p>かなり前に、ブロガー界隈で流行ってた<a href="http://uk.moo.com/products/minicards.html" target="_blank">mini card</a>を作ったことがあったので、紙の質感とかわかってたんだけど、紙は結構いい紙を使ってて割と厚め。日本の標準的な名刺だったら3枚ぐらいの厚さかな。</p>
<p>タダなのは申し訳なかったので、一緒に有料のステッカーを作った。<br /><a href="http://instagr.am/p/mLd8U/" target="_blank"><img src="http://distilleryimage8.s3.amazonaws.com/b299f99a4b2311e1abb01231381b65e3_7.jpg" border="0" width="306" height="306" /></a><br />[<a href="http://instagr.am/p/mLd8U/" target="_blank">Instagram</a>]<br />こいつは90枚で&pound;4.29 + 送料&pound;1.25 で大体670円ぐらい。&nbsp;<br />ちなみにアイコンは<a href="https://www.facebook.com/kamome.house" target="_blank">かもめハウス</a>っていう後輩とやってるシェアハウスのもので、大学の後輩の<a href="http://twitter.com/chamooi" target="_blank">@chamooi</a>さんに書いてもらいました！かわいくて気に入ってます。</p>
<p>なんか今ならキャンペーンやっててタダだし、なんかmooのメールとか<a href="#n1">いちいちかわいい[1]</a>ので、よかったら作ってみるといいと思います。</p>
<p id="n1">[1] なんか自動送信のメールの最後に、</p>
<blockquote>I'm Little MOO - the bit of software that will be managing your order with moo.com. It will shortly be sent to Big MOO, our print machine who will print it for you in the next few days. I'll let you know when it's done and on its way to you.</blockquote>
<p>とか書いてあってかわいい</p>

]]></description>
 <category>Private</category>
<comments>http://blog.nunnun.jp/Private/facebook_card.html</comments>
 <pubDate>Thu, 2 Feb 2012 21:32:40 +0900</pubDate>
</item><item>
 <title>Googleの2-step verificationが日本に対応した</title>
 <link>http://blog.nunnun.jp/Technology/google_2way_authentication_supports_japanese_number.html</link>
<description><![CDATA[<p>Googleの<a href="http://support.google.com/accounts/bin/static.py?hl=en&amp;page=guide.cs&amp;guide=1056283" target="_blank">2-step verification</a>でバックアップオプションとしてようやく日本の電話番号が使えるようになった。</p>
<p>2-step verificationではパスワードの他にワンタイムパスワードを入力するのだけど、そのワンタイムパスワードを受け取る手段としてGoogle AuthenticatorやSMSが存在した。普段はGoogle Authenticatorで十分なのだが、Google Authenticatorはインストールしているスマートフォンをうっかり初期化とかしてしまった際に、ワンタイムパスワードを生成できなくなって困ってしまうことが何度かあった。</p>
<p>そういったことを防止するために、SMSによるBackupが存在しているのだが、今までは日本の番号は対応していなかった。<br />それが、ようやく対応したみたい。</p>
<p><a href="http://www.flickr.com/photos/nunnun/6687407261/" title="Google 2-setp verification supports Japanese number! by ヌンヌン, on Flickr"><img src="http://farm8.staticflickr.com/7143/6687407261_5db68f4584.jpg" border="0" alt="Google 2-setp verification supports Japanese number!" width="500" height="126" /></a></p>
<p>ただ、現状Google Calendarなどと同じようにキャリアメールしか対応してない。<br />スマホが普及して、かつSMSの相互運用がスタートしたので、そろそろSMSでも送ってくれてもいいのではないかと思う。<br />（ただキャリアメールでなく、電話でコードを受け取ることもできるので運用上は問題はなさそう）</p>]]></description>
 <category>Technology</category>
<comments>http://blog.nunnun.jp/Technology/google_2way_authentication_supports_japanese_number.html</comments>
 <pubDate>Fri, 13 Jan 2012 10:52:33 +0900</pubDate>
</item><item>
 <title>非Deodex環境 [SO-02C] でセルスタンバイ問題を解決する</title>
 <link>http://blog.nunnun.jp/Technology/modify_framework_odex_on_non_deodexed_rom.html</link>
<description><![CDATA[<p>AndroidでMVNOなデータSIMを使うと電界強度（アンテナピクト）が表示されなかったり、セルスタンバイで圏外時間が100%になってしまって電池の消費が激しくなるという問題があったのだけど、それを解決する方法を<a href="http://bl.oov.ch/2012/01/b-mobile-sim.html" target="_blank">ブローヴちゃん: Android + b-mobile データ専用 SIM で電界強度を表示する</a>で発見したので、試してみました。</p>
<p>上記のページだとdeodexされた環境で逆アセンブルして変更という手法がとられていたけど、手元にあるXperia Acroは非deodex環境だったので、deodex化せずに変更したみたので書いてみた。</p>
<p><strong>注意: rooted環境じゃないとそもそもこのHackは適用できません。いつものことですが、失敗したら確実に文鎮化します。</strong></p>
<h4>用意するもの</h4>
<ul>
<li>adbとかandroidをいじるときのお約束環境                 
<ul>
<li>JDKとか</li>
<li>Android SDKとか&nbsp;</li>
</ul>
</li>
<li>smali / baksmali -&nbsp;<a href="http://code.google.com/p/smali/" target="_blank">http://code.google.com/p/smali/</a><br />Android dexのアセンブラ・逆アセンブラ</li>
<li>dexopt-wrapper - <a href="http://forum.xda-developers.com/showpost.php?p=3864655&amp;postcount=36" target="_blank">http://forum.xda-developers.com/showpost.php?p=3864655&amp;postcount=36</a></li>
<li>Android側でbusyboxをインストールしておく</li>
<li>これは用意することではありませんが、あらかじめrootedにしてCWM recoveryなどでnandroid backupを取っておきましょう</li>
</ul>
<h4>手順</h4>
<ol>
<li>実機から<code>/system/framework</code>を抜いてきます。<br /> <code>
<pre>$ adb pull /system/framework framework</pre>
</code></li>
<li><code>framework.odex</code>と<code>framework.jar</code>を作業ディレクトリにコピーします<br /> <code>
<pre>$ mkdir workspace
$ cp framework/framework.odex workspace/
$ cp framework/framework.jar workspace/</pre>
</code></li>
<li><code>framework.odex</code>を逆アセンブルします<br /> <code>
<pre>$ baksmali --api-level 10 -d ../framework -c:core-junit.odex -x framework.odex</pre>
</code> <code>-c:</code>オプションには逆アセンブルに必要なクラスを適宜追加します。Xperia acro(SO-02C)ではオプションを指定しなかった場合、<br /> <code>
<pre>$ baksmali --api-level 10 -d ../framework -x framework.odex 
Error occured while loading boot class path files. Aborting.
org.jf.dexlib.Code.Analysis.ClassPath$ClassNotFoundException: Could not find superclass Ljunit/framework/TestCase;
	at org.jf.dexlib.Code.Analysis.ClassPath$ClassDef.loadSuperclass(ClassPath.java:830)
	at org.jf.dexlib.Code.Analysis.ClassPath$ClassDef.(ClassPath.java:683)
	at org.jf.dexlib.Code.Analysis.ClassPath.loadClassDef(ClassPath.java:280)
	at org.jf.dexlib.Code.Analysis.ClassPath.initClassPath(ClassPath.java:163)
	at org.jf.dexlib.Code.Analysis.ClassPath.InitializeClassPathFromOdex(ClassPath.java:110)
	at org.jf.baksmali.baksmali.disassembleDexFile(baksmali.java:104)
	at org.jf.baksmali.main.main(main.java:293)
Error while loading class Landroid/test/AndroidTestCase; from file framework.odex
Error while loading ClassPath class Landroid/test/AndroidTestCase;</pre>
</code> こんな感じのエラーが出ました。(この場合<code>AndroidTestCase</code>が足りないのでcore-junit.odexを追加します。)</li>
<li>アンテナピクトの扱いを変更する<br /> 逆コンパイルしたクラスファイルを編集します。基本的には<a href="http://bl.oov.ch/2012/01/b-mobile-sim.html" target="_blank">ブローヴちゃん</a>さんの手順通りですが、展開した<code>out</code>フォルダにある<code>com/android/internal/telephony/gsm/GsmServiceStateTracker.smali</code>を編集します。<br /> Xperia Acroでは以下のように変更するとうまくいきました。<br /> <code>
<pre>:pswitch_data_22
.packed-switch 0x0
    :pswitch_20
    :pswitch_1f
    :pswitch_1f
    :pswitch_1f
    :pswitch_20
    :pswitch_1f
    :pswitch_5
    :pswitch_5
    :pswitch_5
    :pswitch_5
    :pswitch_20
    :pswitch_5
    :pswitch_1f
    :pswitch_1f
    :pswitch_20
.end packed-switch</pre>
</code>
<p>ちなみに変更後と変更前でパッチを作りました。<br /><a href="http://nunnun.jp/src/so-02c/GsmServiceStateTracker.smali.patch" target="_blank">http://nunnun.jp/src/so-02c/GsmServiceStateTracker.smali.patch</a><br />パッチと<code>GsmServiceStateTracker.smali</code>を同一ディレクトリにおいた状態で、</p>
<pre><code>$ patch GsmServiceStateTracker.smali &lt; GsmServiceStateTracker.smali.patch</code></pre>
で適用できます。</li>
<li>編集した<code>framework.odex</code>をアセンブルします<br /> 先ほど逆アセンブルを実行した作業ディレクトリに戻って、<code>smali</code>を実行します。<br /> <code>
<pre>$ smali -o classes.dex out</pre>
</code> うまくいくと<code>classes.dex</code>が作成されているはずです</li>
<li><code>framework.jar</code>を展開します<br /> jarファイルはzipファイルなので展開します<br /> <code>
<pre>$ unzip framework.jar -d framework_jar
Archive:  framework.jar
   creating: framework_jar/META-INF/
  inflating: framework_jar/META-INF/MANIFEST.MF  
  inflating: framework_jar/preloaded-classes</pre>
</code></li>
<li><code>classes.dex</code>を追加します<br /> 先ほど<code>framework.jar</code>を展開したディレクトリにコピーします。<br /> <code>
<pre>$ cp classes.dex framework_jar/
$ ls -l framework_jar/
total 14336
drwxr-xr-x  3 hiro  staff      102 10 10 01:44 META-INF
-rw-r--r--  1 hiro  staff  7269368  1 12 21:40 classes.dex
-rw-r--r--@ 1 hiro  staff    65580 10 10 01:19 preloaded-classes</pre>
</code></li>
<li><code>framework.jar</code>を再度生成します<br /> 先ほどの逆でzipで固めます。<br /> <code>
<pre>$ zip ../framework.jar.new META-INF preloaded-classes classes.dex 
  adding: META-INF/ (stored 0%)
  adding: preloaded-classes (deflated 82%)
  adding: classes.dex (deflated 56%)</pre>
</code> これでPC側での作業はおわり。 </li>
<li>実機に必要なファイルをコピーします<br /> どこでもいいのですが、<code>/data/local/tmp</code>とかに新しく生成した<code>framework.jar.new</code>とダウンロードした<code>dexopt-wrapper</code>を転送して、<code>dexopt-wrapper</code>を実行可能にします。<br /> <code>
<pre>$ adb push framework.jar.new /data/local/tmp/framework.jar.new
2047 KB/s (3185980 bytes in 1.519s)
$ adb push dexopt-wrapper /data/local/tmp/
609 KB/s (5512 bytes in 0.008s)
$ adb shell chmod 755 /data/local/tmp/dexopt-wrapper</pre>
</code></li>
<li><code>dexopt-wrapper</code>を使ってjarをodexに変換する<br /> <code>
<pre>$ adb shell
$ cd /data/local/tmp
$ ls
dexopt-wrapper
framework.jar.new
$ ./dexopt-wrapper framework.jar.new framework.odex
--- BEGIN 'framework.jar.new' (bootstrap=0) ---
--- waiting for verify+opt, pid=7612
--- would reduce privs here
--- END 'framework.jar.new' (success) ---
$</pre>
</code> </li>
<li>署名をコピーする<br /> このままだと動かないのでオリジナルの<code>framework.odex</code>から署名部分だけコピーしてきます。<br /> <code>
<pre>$ adb shell
$ cd /data/local/tmp
$ busybox dd if=/system/framework/framework.odex of=framework.odex bs=1 count=20 skip=52 seek=52 conv=notrunc
20+0 records in
20+0 records out
20 bytes (20B) copied, 0.004334 seconds, 4.5KB/s
$ ls -l
-rw-r--r-- shell    shell     7384328 2012-01-12 21:53 framework.odex
-rwxr-xr-x shell    shell        5512 2009-05-30 23:15 dexopt-wrapper
-rw-rw-rw- shell    shell     3185980 2012-01-12 21:42 framework.jar.new</pre>
</code> <strong>注意</strong> 必ず<code>busybox</code>の<code>dd</code>を使ってください。間違えると、<code>conv option disabled</code>というエラーが返ります。 </li>
<li><code>framework.odex</code>を置き換える<br /> <strong>これは<code>recovery</code>とかで実施した方が安全です。</strong><br /><code>/system</code>をrwで再マウントして、<br /> <code>
<pre># cp /data/local/tmp/framework.odex /system/framework/framework.odex.new
# mv /system/framework/framework.odex /system/framework/framework.odex.bak
# mv /system/framework/framework.odex.new /system/framework/framework.odex
# sync</pre>
</code> とかします。</li>
</ol>
<p>やると意外と面倒でした。<br /> いちおう元の<code>framework.odex</code>とパッチを当てて署名した<code>framework.odex</code>の差分を取ったパッチを作りました。</p>
<ul>
<li><a href="http://nunnun.jp/src/so-02c/framework.odex.patch" target="_blank">framework.odex.patch</a><br />元の<code>framework.odex</code> MD5 (framework.odex) = 7b474a8d99ab92d4286d422cd6e1d511<br /> パッチ適用後: MD5 (framework_new.odex) = e3ea45b180e9e71bf39d665e4ca8b1ac<br />こんな感じで適用できるはずです。<br /><code>$ bspatch framework.odex.bak framework.odex.new framework.odex.patch </code></li>
</ul>
<p>間違っているところとかあったら指摘よろしくお願いします。</p>]]></description>
 <category>Technology</category>
<comments>http://blog.nunnun.jp/Technology/modify_framework_odex_on_non_deodexed_rom.html</comments>
 <pubDate>Thu, 12 Jan 2012 22:06:39 +0900</pubDate>
</item><item>
 <title>Kindle Fireでの日本語入力 [続] / Japanese Input on Kindle Fire</title>
 <link>http://blog.nunnun.jp/Technology/kindle_fire_root_and_japanese_input_method_2.html</link>
<description><![CDATA[<p>前回<a href="http://blog.nunnun.jp/Technology/kindle_fire_root_and_japanese_input_method.html" target="_blank">settings.dbを弄ることで日本語入力を可能にする方法</a>を書いたが、実はもっと簡単な方法があったので備忘録的に書きたいのと、英語で教えて欲しいとリクエストがあったので、英語でも簡単にまとめてみます。</p>
<p>Here is the instructions that enables Japanese input method on Amazon Kindle Fire.</p>
<h4>準備 / Before hack</h4>
<p>rootを取ります。rootの取り方はいくらでもググれば出てくるので割愛します。<a href="http://blog.nunnun.jp/Technology/kindle_fire_root_and_japanese_input_method.html" target="_blank">過去の記事</a>を参考にしていただいてもかまいませんが、情報が古い可能性は十分にあります。</p>
<p>Make sure you can access your kindle as root privileges, if not you can find <a href="http://forum.xda-developers.com/showthread.php?t=1348830" target="_blank">a way to get root access to your kindle fire</a>. After getting root&nbsp;privileges, install Android Market App into your kindle fire. You can also find <a href="http://forum.xda-developers.com/showthread.php?t=1351283" target="_blank">a way to install Android Market</a> on the internet.</p>
<h4>IMEのインストール / Installing Japanese Input Method</h4>
<p>Android Marketで好きなIMEをインストールします。ATOKなりGoogle日本語入力なりSimejiなりインストールしてください。</p>
<p>Install Japanese Input Method from Android Market. For example, you can install <a href="https://market.android.com/details?id=com.justsystems.atokmobile.service" target="_blank">ATOK</a>, <a href="https://market.android.com/details?id=com.google.android.inputmethod.japanese" target="_blank">Google Japanese Input (Google日本語入力)</a> and <a href="https://market.android.com/details?id=com.adamrocker.android.input.simeji" target="_blank">Simeji</a>. ATOK is a paid application but others are free.</p>
<h4>IMEを有効化する / Enabling IME</h4>
<p>ここまでは前回と同じです。前回はここでsettings.dbを弄りましたがハードルが高いので、"ime"というコマンドをadb shellでたたくことで同じことが可能ですので試してみます。</p>
<p>Let's enable Japanese Input Method on your kindle fire. As previrous artcle, I introduced a way to enable Japanese input method by changing settings.db however that way is bit difficult so that this time we're using another method using "ime" command on adb shell.</p>
<pre><code>hiro$ adb shell
$ su
# ime list -s
com.android.inputmethod.latin/.LatinIME
com.justsystems.atokmobile.service/.AtokInputMethodService
</code></pre>
<p>adb shellにてKindle Fireにアクセスした後、suコマンドにてroot権限に昇格します。昇格後、ime listと打つとインストールされているIMEが一覧になって出力されます。</p>
<p>その後 ime enable と ime set を利用してIMEを有効化します。</p>
<p>After logged in your kindle fire using adb shell from your console, type "su" to access as root. Then you could see installed IME(Input Method Editor) using "ime list" command.</p>
<p>Finally you can enable and select IME using "ime enable" and "ime set" command.</p>
<p><code> </code></p>
<pre><code># ime enable com.justsystems.atokmobile.service/.AtokInputMethodService
Input method com.justsystems.atokmobile.service/.AtokInputMethodService: already enabled
# ime set com.justsystems.atokmobile.service/.AtokInputMethodService
Input method com.justsystems.atokmobile.service/.AtokInputMethodService selected</code></pre>
<p><code> </code></p>

<p>何か不足している点などありましたら、指摘していただけると助かります。</p>]]></description>
 <category>Technology</category>
<comments>http://blog.nunnun.jp/Technology/kindle_fire_root_and_japanese_input_method_2.html</comments>
 <pubDate>Sat, 7 Jan 2012 04:04:53 +0900</pubDate>
</item><item>
 <title>Amazon Kindle Fireで日本語を入力する / ATOK,simejiをインストールする</title>
 <link>http://blog.nunnun.jp/Technology/kindle_fire_root_and_japanese_input_method.html</link>
<description><![CDATA[<p>[2012年1月7日追記: <a href="http://blog.nunnun.jp/Technology/kindle_fire_root_and_japanese_input_method_2.html">より簡単な方法と英語でのやり方</a>をアップしました。/ You can find <a href="http://blog.nunnun.jp/Technology/kindle_fire_root_and_japanese_input_method_2.html">english instructions</a> ]</p>
<p>Kindle Fireが届きました！</p>
<p>199ドルにしては非常に出来が良いです。液晶もきれいだし、思っていたよりも軽いし、裏がゴムっぽくて持ちやすくていいです。</p>
<p>Kindle FireはAndroidベースの端末ですでに<a href="http://androidforums.com/kindle-fire-all-things-root/446276-root-one-click-how-get-adb-running-root-superoneclick.html" target="_blank">rootをとる方法</a>も確立されているので、Hackして遊ぶにも最適です。（というか僕はHack目的で買いました笑）標準で日本語フォントも中華フォントだけど入ってるのでとりあえず困らずに使えます。 ただ、日本語入力ができるか心配でしたが、ATOKをインストール・そして日本語入力をさせることができたので、忘れないようにメモしておきます。</p>
<p><strong>私は以下の手順で可能にできましたが、あくまで自己責任でお願いします。これによりKindle fireの保証はなくなりますし、これによってKindle Fireが故障した場合でも私は一切の責任を負いかねます。あらかじめご理解ください。</strong></p>
<p><a href="http://www.flickr.com/photos/nunnun/6361411223/" title="Enabled Japanese Input Method on Kindle Fire by ヌンヌン, on Flickr"><img src="http://farm7.staticflickr.com/6234/6361411223_c3422283cc.jpg" border="0" alt="Enabled Japanese Input Method on Kindle Fire" width="293" height="500" /></a></p>
<h4>rootを取る</h4>
<p>すでに英語でやる方法はいろんなところに出回っているので、別に必要ないのですが、簡単に日本語でもまとめておきます。（adbの使い方とか他のAndroid端末でも共通していることはgoogleで検索してください）</p>
<h5>準備</h5>
<p>僕がやったときはWindowsでrootを取る方法しかなかったので(というかそれを最初に見つけてしまったのでWindowsでやった)とりあえずWindowsが動く環境を用意します。x64でもx86でも動くと思います。</p>
<p>WindowsマシンにAndroid SDKをセットアップします。そのときにかならずGoogle Driverをインストールしてください。インストールしたら、Driverのinfをいじります。android_winusb.inf を開いて、Kindle FireのIDを追加します。ファイルの中に<code>[Google.NTx86]</code>と<code>[Google.NTamd64]</code>のセクションがあると思うので、その先頭に以下の行を追加して保存します。</p>
<p><code> </code></p>
<pre><code>;Kindle Fire
%SingleAdbInterface% = USB_Install, USB\VID_1949&amp;PID_0006
%CompositeAdbInterface% = USB_Install, USB\VID_1949&amp;PID_0006&amp;MI_01</code></pre>
<p><code> </code></p>
<p>また、adbにKindle fireがAndroidデバイスであることを認識させるために、ホームディレクトリ直下の<code>.android</code>フォルダの<code>adb_usb.ini</code>に以下の行を追加します。（ファイルが無かったら追加してください）</p>
<p><code> </code></p>
<pre><code>0x1949</code></pre>
<p><code> </code></p>
<p>これで準備は完了</p>
<h5>rootを取ろう</h5>
<p>rootはSuperOneClickを使って一瞬でとれます。<br /> <a href="http://forum.xda-developers.com/showthread.php?t=803682" target="_blank">[APP]SuperOneClick v2.2 (now with zergRush and su 3.0) - xda-developers</a><br />起動してrootを押せば終わりです。SuperOneClickの使い方はいろいろ解説があると思うので、適当に探してみてください。</p>
<h5>ATOKもしくはsimejiをインストールする</h5>
<p>Kindle fireはAndroid MarketやGmailなどのgoogle appsが入っていません。インストールする方法はありますので、興味があるひとは以下のリンクとかを参考にしてみてください。<br /> <a href="http://forum.xda-developers.com/showthread.php?t=1349902" target="_blank">[G-Apps][GUIDE] Google Apps on the Kindle Fire - Simpler Market Instructions - xda-developers</a></p>
<p>Android Marketが使えればATOKやsimejiをAndroid Marketからインストールします。Android Marketをインストールしていない人は手持ちの他のAndroidから抜き出してきます。(なんか野良simeji公開されなくなってしまっていますね。) たぶんここが一番ハードルが高いかも。。</p>
<p>無事インストールできたら、ATOKもしくはsimejiを有効にします。<br />通常であれば、設定&rarr;言語とキーボード から有効にすればおわりなのですが、Kindle Fireのキーボードの設定はKindleキーボードの設定しかないので設定できません。</p>
<p><a href="http://www.flickr.com/photos/nunnun/6361410981/" title="Kindle Fire Keyboard Settings by ヌンヌン, on Flickr"><img src="http://farm7.staticflickr.com/6215/6361410981_3d8e605470.jpg" border="0" alt="Kindle Fire Keyboard Settings" width="293" height="500" /></a></p>
<p>これではATOKを有効にできないので、直接設定をいじります。</p>
<h5>Input Methodを有効にする</h5>
<p>今度はMacで作業します。(WindowsでもLinuxでもできますが、MacでやったのでMacで書いてます)<br />先ほどと同じように<code>~/.android/adb_usb.ini</code>に<code>0x1949</code>を追加します。</p>
<p>Androidの言語とキーボードの設定は、<code>/data/data/com.android.providers.settings/databases/settings.db</code>に入っているので、それを抜き出して編集します。</p>
<p><code> </code></p>
<pre><code>hiro$ adb shell
$ su
# cp /data/data/com.android.providers.settings/databases/settings.db /sdcard/settings.db
# exit
$ exit
hiro$ adb pull /sdcard/settings.db .
2486 KB/s (24576 bytes in 0.009s)</code></pre>
<p><code> </code></p>
<p>抜き出したらSqliteで変更を加えます。まず現状の設定を抜き出します。</p>
<p><code> </code></p>
<pre><code>hiro$ sqlite3 settings.db 
SQLite version 3.7.5
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite&gt; select * from secure where name like "enabled_input_methods";
69|enabled_input_methods|com.android.inputmethod.latin/.LatinIME</code></pre>
<p><code> </code></p>
<p>続いてATOKもしくはsimejiをenabled_input_methodsに追加します。ATOKおよびsimejiのpackage名は以下なので参考にしてください。</p>
<ul>
<li>ATOK<br />com.justsystems.atokmobile.service/.AtokInputMethodService</li>
<li>simeji<br />com.adamrocker.android.input.simeji/.OpenWnnSimeji</li>
</ul>
<p><code> </code></p>
<pre><code>sqlite&gt; INSERT INTO "secure" VALUES(null,'enabled_input_methods','com.android.inputmethod.latin/.LatinIME:com.adamrocker.android.input.simeji/.OpenWnnSimeji:com.justsystems.atokmobile.service/.AtokInputMethodService');</code></pre>
<p><code> </code></p>
<p>上の例はATOKおよびsimeji両方を有効にした場合です。実行したら再度<code>select * from secure where name like "enabled_input_methods";</code>を実行してATOKやsimejiが入っているか確認してください。確認したらCtrl+Dで終了させます。</p>
<p>最後に変更を加えた<code>settings.db</code>をKindle fireに戻し、Kindle Fireを再起動します。</p>
<p><code> </code></p>
<pre><code>hiro$ adb push settings.db /sdcard/settings.db
1810 KB/s (24576 bytes in 0.013s)
hiro$ adb shell
$ su
# cp /sdcard/settings.db /data/data/com.android.providers.settings/databases/settings.db
# chown system.system /data/data/com.android.providers.settings/databases/settings.db
# chmod 660 /data/data/com.android.providers.settings/databases/settings.db
# exit
$ exit</code></pre>
<p><code> </code></p>
<p>再起動したら、どこかの入力フィールドを長押しするとInput Methodを選ぶ画面が出ますので、選択するとATOKもしくはsimejiが候補に出てきますので選択するとKindle fireで日本語が入力できるようになります！</p>
<p><a href="http://www.flickr.com/photos/nunnun/6361411099/" title="Kindle Fire Input Method Select Screen by ヌンヌン, on Flickr"><img src="http://farm7.staticflickr.com/6217/6361411099_30126a7674.jpg" border="0" alt="Kindle Fire Input Method Select Screen" width="293" height="500" /></a></p>
<p>かなり適当にまとめてますので、抜け落ちている点などありましたら指摘していただけると幸いです。</p>]]></description>
 <category>Technology</category>
<comments>http://blog.nunnun.jp/Technology/kindle_fire_root_and_japanese_input_method.html</comments>
 <pubDate>Sat, 19 Nov 2011 14:20:30 +0900</pubDate>
</item><item>
 <title>Xperia Acro SO-02C用のtun.ko</title>
 <link>http://blog.nunnun.jp/Technology/tun_ko_for_Xperia_Acro_SO-02C.html</link>
<description><![CDATA[<p>ついでにXperia Acro用のtun.koもコンパイルしてみた。<br />Android 2.3.4 [2.6.32.9-pref] 向けです。<br />IS11Sもたぶんいけるはず</p>
<p>コンパイル方法は<br /><a href="http://blog.nunnun.jp/Technology/compile_kernel_module_for_htc_evo_wimax.html">AndroidのKernel Moduleをコンパイルする</a><br />をみてください。</p>
<p>コンパイル済みファイルはこちら<br /><a href="http://nunnun.jp/acro/tun.ko-acro-4.0.1.C.1.9.zip" target="_blank">http://nunnun.jp/acro/tun.ko-acro-4.0.1.C.1.9.zip</a>&nbsp;</p>
]]></description>
 <category>Technology</category>
<comments>http://blog.nunnun.jp/Technology/tun_ko_for_Xperia_Acro_SO-02C.html</comments>
 <pubDate>Sun, 13 Nov 2011 21:38:47 +0900</pubDate>
</item><item>
 <title>AndroidのKernel Moduleをコンパイルする</title>
 <link>http://blog.nunnun.jp/Technology/compile_kernel_module_for_htc_evo_wimax.html</link>
<description><![CDATA[<div>
<p>SoftBankの回線をただ解約するのはもったいないので、WiMaxが付いてて各方面で絶賛投げ売り中のauのHTC EVOたんを入手したよ！(若干ネタが古い感はするーする！)</p>
<p>さてRootも無事取って、Cisco AnyConnect (VPNクライアント)をインストールして接続しようとしたら、"tun.ko"がないからむりぽって言われたので、tun.koをカーネルソースからコンパイルしてみることにした。</p>
<p>もともとOpenVPN用のモジュールなので、インストールするとOpenVPNも使えるようになるはずです。（もちろんカーネルモジュールだけじゃ動かないので他のファイルも必要です！)</p>
<p>最初OSXでやろうとしたんだけど、なんか面倒っぽかったのでLinux上でやってます。僕はたまたま手元にCentOSがあったのでCentOSでやったけど、きっとDebianとかでも動くはずです。</p>
<p>コンパイル済みのtun.koも準備しました。<br /><a href="http://nunnun.jp/evo/tun.ko-2.6.35.10-g04a0907.zip" target="_blank">http://nunnun.jp/evo/tun.ko-2.6.35.10-g04a0907.zip</a><br />/system/lib/modulesに入れれば動くはずです。&nbsp;</p>
<h4>用意するもの</h4>
<ul>
<li>カーネルソース<br />HTCのサイトから入手できます。<a href="http://htcdev.com/devcenter/downloads" target="_blank">http://htcdev.com/devcenter/downloads</a><br />EVOは "HTC EVO 4G &ndash; GB MR &ndash; 2.6.35" です</li>
<li>Android SDK<br />Googleから入手します。<a href="http://developer.android.com/sdk/index.html" target="_blank">http://developer.android.com/sdk/index.html</a></li>
<li>Android NDK<br />こちらもGoogleから入手します。<a href="http://developer.android.com/sdk/ndk/index.html" target="_blank">http://developer.android.com/sdk/ndk/index.html</a><br />ただ、arm-eabi-4.4.0のクロスコンパイラが必要なので、最新版ではなくandroid-ndk-r5cを使用します。<br />リンク:&nbsp;<a href="http://dl.google.com/android/ndk/android-ndk-r5c-linux-x86.tar.bz2" target="_blank">http://dl.google.com/android/ndk/android-ndk-r5c-linux-x86.tar.bz2</a></li>
</ul>
</div>
<h4>手順</h4>
<ol>
<li>ダウンロードしたファイルを展開する<br />ホームディレクトリにandroidというフォルダを作ってそこに展開することにします。（別に場所はどこでも平気です）<br /> <code>
<pre>$ mkdir android
$ cd android
$ wget http://dl.google.com/android/android-sdk_r15-linux.tgz
$ wget http://dl.google.com/android/ndk/android-ndk-r5c-linux-x86.tar.bz2
$ wget http://dl4.htc.com/RomCode/Source_and_Binaries/supersonic-2.6.35-gb-MR.tar.gz
$ tar zxvf android-sdk_r15-linux.tgz
$ tar xvf android-ndk-r5c-linux-x86.tar.bz2
$ tar zxvf supersonic-2.6.35-gb-MR.tar.gz</pre>
</code></li>
<li>デバイス(HTC EVO WiMAX)からカーネルコンフィグを抜きます<br />デバイスがPCに接続された状態で、config.gzを抽出し、展開します。<br /> <code>
<pre>$ adb pull /proc/config.gz .
$ gunzip config.gz
$ mv config .config</pre>
</code>別のマシンから抜いてくる場合は、config.gzを抜いてそれを作業ディレクトリに転送し、展開します。</li>
<li>Configを書き換える<br />デフォルトではコンパイルしないことになっているTUNモジュールをコンパイルするために、展開した.configを書き換えます。vimなりemacsで開いて<br /><code># CONFIG_TUN is not set</code><br />という行を探します。探したらその行の下に、<br /> <code>CONFIG_TUN=m</code><br />という行を追加し、保存します。保存後、.configファイルをカーネルを展開した&nbsp;supersonic_GB_MR フォルダにコピーします。<br /> <code>
<pre>$ cp .config supersonic_GB_MR</pre>
</code></li>
<li>Makefileを変更する<br />コンパイルして生成されるカーネルモジュールとデバイスで動いているカーネルのバージョンを合わせるために、Makefileを変更します。<br />まず、 デバイスを接続したマシン上で、<code>
<pre>$ adb shell uname -a
Linux localhost 2.6.35.10-g04a0907 #1 PREEMPT Tue Aug 30 13:49:12 CST 2011 armv7l GNU/Linux</pre>
</code>を実行します。実行するとカーネルのバージョンがわかります。この場合2.6.35.10-g04a0907がバージョンです。<br />その後、Makefileを変更します。カーネルを展開した&nbsp;&nbsp;supersonic_GB_MR フォルダにMakefileがあるのでそれをvimなりemacsなりで開いて、<br /> <code>EXTRAVERSION =</code><br />という行を探して、先ほどのバージョンのマイナーバージョン以下(つまり2.6.35以下)を追加します。この場合、EXTRAVERSIONの行は、<br /> <code>EXTRAVERSION = .10-g04a0907</code><br />となります。</li>
<li>コンパイルする！<br />準備が終わったので、早速コンパイルしてみる。カーネルを展開したディレクトリに移動して、makeする。<br />ただ、環境変数をちゃんと設定しないと動かない。こんな感じ<br /> <code>
<pre>$ export ARCH=arm
$ export CROSS_COMPILE=arm-eabi-
$ export PATH=$PATH:~/android/android-ndk-r5c/toolchains/arm-eabi-4.4.0/prebuilt/linux-x86/bin/</pre>
</code>環境変数を設定したら、makeする。<br /> <code>
<pre>$ make modules</pre>
</code>なんかエラーが出た場合は何かが足りない。aptitudeとかyumで探してぶち込む。無事コンパイルが終わると、drivers/net/ ディレクトリに tun.ko というカーネルモジュールが生成されているはず。fileすると、<br /><code>
<pre>$ file drivers/net/tun.ko
drivers/net/tun.ko: ELF 32-bit LSB relocatable, ARM, version 1 (SYSV), not stripped</pre>
</code>こんな感じに出るはず。</li>
<li>デバイスに転送する<br />コンパイルしたカーネルモジュールをデバイスに転送して、/system/lib/modules に配置します。<br />デバイスをつないだマシンから、以下のように操作します。<code>
<pre>$ adb push tun.ko /sdcard/tun.ko
$ adb shell su -c "mount -o rw,remount /system /system"
$ adb shell su -c "cp /sdcard/tun.ko /system/lib/modules"
$ adb shell su -c "insmod /system/lib/modules/tun.ko"
$ adb shell su -c "mount -o ro,remount /system /system"</pre>
</code> いずれもエラーが出ずに処理が終われば正常です。エラーが出る場合はroot権限がとれていてsuがインストールされているか確認してください。 </li>
</ol>
<p>以上。最初NDKを最新のもので試したのだけど、付いてきたクロスコンパイラがarm-linux-androideabi-4.4.3で、これだと</p>
<p><code> </code></p>
<pre><code># insmod tun.ko
insmod: init_module 'tun.ko' failed (Exec format error)</code></pre>
<p><code> </code></p>
<p>と言われてしまってモジュールを読み込めなかった。なんかARMのGCC 4.0特有の問題みたい。</p>]]></description>
 <category>Technology</category>
<comments>http://blog.nunnun.jp/Technology/compile_kernel_module_for_htc_evo_wimax.html</comments>
 <pubDate>Sun, 13 Nov 2011 20:46:25 +0900</pubDate>
</item><item>
 <title>ボストン日記 [準備 + セットアップ]</title>
 <link>http://blog.nunnun.jp/Private/staying_at_boston_setup.html</link>
<description><![CDATA[<p>仕事で夏の間ボストンに来ています。</p>
<p>ボストンに来て最初の1週間は本当あっという間で、いろいろ終わってないこともたくさんあるのだけど、忘れないうちに準備＋セットアップについて書いておきたいので適当にざっくり書きます。</p>
<p>半分備忘録的な感じなので、つまらないかも。</p>
<h4>ビザ関係</h4>
<p>今回の渡米は行けるようになるまで本当に大変だった。<br />普通仕事や観光でアメリカに90日以内の旅行をする場合は、ESTAとかを使うことでビザなしで入国できるのね。</p>
<p>去年はビザなしで行ったんだけど、今年はいくつか理由が有ってボスと相談してビザをとって行くことにした。<br />だけど、これがむちゃくちゃ大変だった。</p>
<p>まずB-1ビザ（商用）を取ろうとしたんだけど、どうも僕の身分（一応大学で働いてる）と向こうですること的にB-1ではなく、J-1（交流訪問者）でないと行けないらしく、DS-2019というフォームをもらわないと行けなくなってしまった。これが渡航1ヶ月前のこと。</p>
<p>で、仕方がないのでMITのISO(International Student Office)にお願いしてDS-2019をもらうことにしたのだけど、DS-2019の発行に1ヶ月かかると書いてあった(ソース無くした)。知ってる人は知ってるかもだけど、DS-2019は受け入れ先の大学の人のサインがあるただのフォームでそれを実際発行するのに時間がかかるわけじゃないんだけど、事務手続きにだいたい1ヶ月ぐらいかかるみたい。</p>
<p>ただそれだと全く間に合わないので、受け入れ先のラボの人に猛烈にプッシュしてもらった結果3週間ぐらいで発行された。（発行手続きを開始したのが7月6日で発行されたのが7月27日)&nbsp;</p>
<h4>健康保険</h4>
<p>J-1ビザで入国する人は受け入れ先の機関の健康保険に入るか、日本で海外旅行保険に加入しないといけないことになっている。MITでも保険のプランがあるのだけど、日本で入ってしまった方が楽（＋携行品とかがMITのプランだとないので）なので、日本で加入した。</p>
<p>ググるといろいろなひとがAIUの保険がいいと言っていたので、AIUの海外旅行保険にした。</p>
<p>契約期間はDS-2019に書いてある機関で契約しないと、Waiverを受けられないので注意。（ただMIT Medicalの人は保険の証明書をまともに目を通してなかったので本当にチェックしているかはなぞ）</p>
<h4>入国</h4>
<p>機内でI-94をもらって記入しておく。（ビザなしの人はいらないフォームなので頼まないとくれないことが多い）</p>
<p>入国審査の時はほとんど何も聞かれずに終了。忘れずにI-94をもらう＋ステータスがJ-1、滞在期間がD/Sになってることを確認する。</p>
<h4>チェックイン</h4>
<p>できるだけ早めに、入国したら受け入れ先の機関に連絡をする。そうすることでオリエンテーションやRegistrationの日程が早めに決まるので、その後面倒なことにならなくてすむ。</p>
<p>MITの場合、チェックインするとオリエンテーションのアポイントメントをくれる。<br />たぶん週1・2回 やってるっぽくて僕の場合は月曜日にチェックインして木曜日のオリエンテーションだった。</p>
<p>オリエンテーションでは、Immigrationの話が半分とMITでの登録の話が半分ぐらいだった。</p>
<h4>銀行口座</h4>
<p>僕は去年行ったときに作ってしまっていたので、今回は作る必要がなかったのだけど、受け入れ先機関から給与を受け取ったり、そうじゃなくてもいろいろと便利なので口座を作った方が楽です。</p>
<p>大学に支店がある銀行だと簡単に開設できるはずです。そのときにパスポートとI-94を忘れずに持って行きましょう。</p>
<h4>SSN</h4>
<p>これも給与を受け取る人はつくらないといけないのですが、そうじゃない人も有った方が便利。J-1ステータスの人は就労と見なされるのでSSNを作ることができるはずです。MITではVisiting StudentにもLetterをくれていました。F-1だと微妙みたいです。</p>
<h4>携帯電話</h4>
<p>無いと不便。というか僕の場合死んじゃうので、こっちに来て早々に作りました。<br />SSNが無いとだいたいほとんどのキャリアが高額なデポジットを要求してきます。</p>
<p>またプリペイドだとデータ通信がかなり割高なので、smartphoneとか使いたい人には不向きです。あとCDMAなキャリア[VerizonとかSprintとか]は端末買っても日本で使えないのでもったいないです。</p>
<p>T-Mobileの<a href="http://prepaid-phones.t-mobile.com/prepaid-plans" target="_blank">Monthly 4G</a>だと(他のキャリアもやってるかもしれませんが未確認) 毎月先払いでデータ定額とかも使えつつデポジットも要求されないで使えるので便利です。僕はSIMだけ契約してNexus Sにさして使っています。</p>
<p>忘れそうなのでAPNは<code>epc.t-mobile.com</code>です。</p>
<p>とりあえずこんな感じ。続きはまた書きます。</p>]]></description>
 <category>Private</category>
<comments>http://blog.nunnun.jp/Private/staying_at_boston_setup.html</comments>
 <pubDate>Sun, 21 Aug 2011 15:05:08 +0900</pubDate>
</item><item>
 <title>フランス・スペインの携帯電話事情</title>
 <link>http://blog.nunnun.jp/Technology/prepaid_sim_in_france_and_spain.html</link>
<description><![CDATA[<p>土曜日から仕事でフランス・スペインに行くので、現地でiPhoneとかを使いたいのでどのキャリアのプリペイドSIMが使えそうか調べてみたので、忘れないようにメモ。</p>
<p>基本的な方針として、</p>
<ul>
<li>電話はおそらく発信しないので、ドコモのSIMでローミングを使用する。</li>
<li>データはローミングでは死ぬほど高いので、プリペイドを現地で調達する。</li>
<li>おそらくiPad向けにプリペイドを提供しているはずなので、それを探す。</li>
</ul>
<h3>スペイン</h3>
<p>スペインはいくつかキャリアあるのだけど、前にいったときに使ったことがあるMovistarで調べてみた。</p>
<p>iPadは取り扱っているが、どうやらプリペイドプランは提供していないみたい。<br /><a href="http://www.movistar.es/on/pub/servicios/onTOEntrada/0,,entrada%2Bipad%2Bv_segmento%2BAHOG%2Bv_idioma%2Bes%2Bmenu_cab_sup%2Bmovil%2BambitoAcceso%2Bpub,00.html?v_segmento=AHOG&amp;v_idioma=es" target="_blank">Movistar - iPad</a></p>
<p>仕方がないので普通のプリペイドプランをあさってみる。<br /><a href="http://www.tarifas.movistar.es/particulares/voz/tarjetamas#contratar" target="_blank">http://www.tarifas.movistar.es/particulares/voz/tarjetamas#contratar</a></p>
<p>通話: 22.8 cent euro / min<br />データ: 1.5 Euro / 10MB</p>
<p>これだとちょっと高い。10MBとか一瞬で使っちゃうし。というわけでプリペイドに使えるプランを探してみる。</p>
<p>あったあった。<br /><a href="http://www.tarifas.movistar.es/web/movistar/detalle-tarifas-datos-particulares?vista=detalle&amp;name=Bono%20Mensual%20Internet%20en%20el%20M&oacute;vil%20Prepago&amp;tipo=tarifas&amp;idContenido=b3c408f2-6ec5-47bc-9908-4fe9b9c071cf" target="_blank">Bono Mensual Internet en el M&oacute;vil Prepago</a><br />これだと20MB/month 6 Euro。まぁこれも一瞬だよね。</p>
<p>ほかにはないかと探してみる。<br /><a href="http://www.tarifas.movistar.es/web/movistar/detalle-tarifas-datos-particulares?vista=detalle&amp;name=Bono%20Internet%20Trimestral&amp;tipo=tarifas&amp;idContenido=b2b9e2a5-5de1-451c-9b7a-e158afce27d9" target="_blank">Bono Internet Trimestral<br /></a>これは1GB/3months 59 Euro ちょっと高いけど、まぁ足りる。</p>
<p>今回は1週間ぐらいいるから、実際どうなんだろう。</p>
<h3>フランス</h3>
<p>フランスもいくつかキャリアあるけど、SFRかOrange。SFRはiPhone 3G向けならプリペイドデータプランがあるが、それ以外はないのでOrangeを調べてみる。</p>
<p>mobicarteっていうのがプリペイドの意味。</p>
<p>ここに書いてあった。<br /><a href="http://paygsimwithdata.wikia.com/wiki/France" target="_blank">http://paygsimwithdata.wikia.com/wiki/France&nbsp;</a></p>
<p>OrangeのWebサイトからわかる情報は<br />200MB / 6 Euro<br /><a href="http://mobile.orange.fr/content/ge/high/v2_offre_boutique/options/options.html" target="_blank">http://mobile.orange.fr/content/ge/high/v2_offre_boutique/options/options.html</a></p>
<p>ただ、SIMつかって操作すればUnlimitedがつかえると、上のページには書いてあったので調査してみる。</p>
<p>まぁいずれの国にしても今回行くところが結構地方なので、まずSIMカードを調達するのが大変かも。<br />かえってきたらまたレビュー書きます。&nbsp;</p>]]></description>
 <category>Technology</category>
<comments>http://blog.nunnun.jp/Technology/prepaid_sim_in_france_and_spain.html</comments>
 <pubDate>Thu, 12 May 2011 14:54:06 +0900</pubDate>
</item>
  </channel>
</rss>
