tag:blogger.com,1999:blog-48964215943004926462024-02-07T17:02:01.857+09:00taku1974のデジタル機器漬けデジタル機器大好き人間。
色々いじくるが、どうやったかすぐに忘れるので備忘録として運用してます。taku1974http://www.blogger.com/profile/17385313096440580362noreply@blogger.comBlogger50125tag:blogger.com,1999:blog-4896421594300492646.post-40545796229712230112015-09-05T11:32:00.000+09:002015-09-05T11:32:55.579+09:00XPERIA_AをXPERIA_ZR(Lollipop)化ドコモの契約更新月になったのでFREETELへMNPし、ようやくスマホ1台持ちとなった。料金は、<br />
以前:ケータイ使用料980円(無料通話1000円込み)+ U-mobile 680円(~1Gbyte)<br />現在:<a href="https://www.freetel.jp/sim/charge/" target="_blank">音声通話+データ通信(~1Gbyte)1199円</a>+通話料<div>
3Gbyte使っても1600円。通話はほとんどしないし<a href="http://taku1974-digital.blogspot.jp/" target="_blank">050free</a>や<a href="https://www.freetel.jp/service/half/" target="_blank">通話料いきなり半額</a>もあるので1台持ちにして安くもなった。</div>
<div>
<br /></div>
<div>
ただドコモと縁を切ったのにスマホにはドコモ専用アプリやドコモID連携アプリがてんこ盛りで嫌になった。</div>
<div>
root化してちまちまドコモアプリを削除する手もあるが、androidの新バージョンLollipopも使ってみたいし、XPERIA Aの海外版XPERIA ZRの最新ファームをインストールすることにした。</div>
<div>
<br /></div>
<div>
手順1:<a href="http://matome.naver.jp/odai/2141483498742950701" target="_blank">この辺り</a>を参考にflashtool-0.9.19.0でXPERIA ZR用の最新ファームをダウンロードする。今回はC5503_10.6.A.0.454_Customized HK.ftfをダウンロード。</div>
<div>
手順2:通常ならこのままflashtool-0.9.19.0でftfを焼けばいいのだが、何故かうまく焼けなかったので、少し前の日本語版Flashtool-0.9.14.0-windows-JPNv1をつかって焼いた。</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjGEQTfthZaZD3PVPa9_z_9u5qZR-paRKsAggVmEjqOiYlth1k89qNVQK_VEHu62Um-kCS49JB8JT9M8nRVymeK9zRlMIn7WlhDkMSAiHFBG5uIU6RoTaFK-oT2X0JTb7pc_FDQAxq5JO-0/s1600/Screenshot_2015-09-05-10-12-22.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjGEQTfthZaZD3PVPa9_z_9u5qZR-paRKsAggVmEjqOiYlth1k89qNVQK_VEHu62Um-kCS49JB8JT9M8nRVymeK9zRlMIn7WlhDkMSAiHFBG5uIU6RoTaFK-oT2X0JTb7pc_FDQAxq5JO-0/s320/Screenshot_2015-09-05-10-12-22.png" width="180" /></a></div>
<div>
結果、不要なドコモアプリのないサクサク動くXPERIA ZR(Lollipop)になった。</div>
<div>
但し、海外版にはない日本独自仕様のワンセグ、お出かけ転送、おサイフケータイが使えない他、NFCも使えなくなった。</div>
<div>
<br /></div>
<div>
・ワンセグ→もともと使ってないので問題なし。</div>
<div>
・お出かけ転送→不便だが<a href="http://twonky.com/wp-content/themes/twonky2/japanese/" target="_blank">Twonky Beam</a>を使えば録画番組の持ち出し、再生可能。しかもDTCP-IPアドオンを購入しなくても再生できた。(おそらくXPERIA Aがハード的に対応しているからだと思う)</div>
<div>
・おサイフケータイ→スマでのチャージはできないがコンビニでチャージして使用することは可能。<a href="http://www.sony.co.jp/Products/felica/consumer/products/RC-S380.html" target="_blank">パソリ</a>でも買ってパソコンからチャージできるようにするか。</div>
<div>
・NFC→使えない、、、若干不便だがなくても不自由することはないので諦める。</div>
<div>
<br /></div>
taku1974http://www.blogger.com/profile/17385313096440580362noreply@blogger.com0tag:blogger.com,1999:blog-4896421594300492646.post-17506015208165251892015-08-12T15:13:00.000+09:002015-09-05T10:05:49.060+09:002台持ちからほぼ1台持ち<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg7X3ndnKc2WuNHGReuOK7PqRC6dhyphenhyphenhxOZ4QPvezFp_Mk5gb5nyKd5gxBQBVq9c790W7pcsaD7obAIrLKmCBbPGjy8ZHNeOxUwIrsBESlDcNrOD8x2kxHzQdxPQ6jC3SOA8RX5jDAMm6Rch/s1600/play_store.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg7X3ndnKc2WuNHGReuOK7PqRC6dhyphenhyphenhxOZ4QPvezFp_Mk5gb5nyKd5gxBQBVq9c790W7pcsaD7obAIrLKmCBbPGjy8ZHNeOxUwIrsBESlDcNrOD8x2kxHzQdxPQ6jC3SOA8RX5jDAMm6Rch/s320/play_store.jpg" width="180" /></a></div>
<br />
今まで、<a href="http://taku1974-digital.blogspot.jp/2014/01/mvno.html" target="_blank">この</a>ようにケータイとスマホの2台持ちをしていたが、<br />
<a href="http://www.brastel.co.jp/web/WIMS/Manager.aspx?xslFile=apps.xsl&Style=personal&Service=1&acr=3" target="_blank">050free(ブラステル)</a>に登録して050番号を無料で取得した。<br />
この取得した050番号にケータイ(ドコモ)から転送してやれば、<br />
多少のデメリットはあるがケータイを持ち歩く必要は無くなり<br />
晴れて1台持ちとなる。<br />
<div class="separator" style="clear: both; text-align: center;">
</div>
<br />
デメリット:<br />
1.着信時、ドコモから050番号への転送料がかかる(ドコモ無料通話分で補えるが)<br />
2.発信時、ブラステル側に通話料が発生するのでドコモ無料通話分が適用できない<br />
3.発信時、相手側への番号通知が050番号になってしまう<br />
メリット:<br />
1.2台持ち歩かなくて良い<br />
2.ドコモ無料通話分は適用できないが、ブラステルの通話料は安い<br />
その他:<br />
1.ドコモの家族間無料通話は適用できないが050free同士は無料なので家族全員050freeに登録すれば問題なし。<br />
<br />
まあ、これは暫定措置でMVNOの音声通話付きが非常に安くなっていてMNP転入可能なので、次のドコモ更新月で解約して@モバイルくんに変える予定。。。<br />
<br />
現状:ケータイ使用料980円(無料通話1000円込み)+ U-mobile 680円(~1Gbyte)<br />
予定:音声通話付き@モバイルくん使ったぶんだけプラン800円(500Mbyte)+500Mbyte/500円+通話料<br />
データ通信も1Gbyte以下しか使わないし通話もほとんどしないから月1300円ぐらいになりそう。<br />
<br />
<br />taku1974http://www.blogger.com/profile/17385313096440580362noreply@blogger.com0tag:blogger.com,1999:blog-4896421594300492646.post-29172743288331671542014-12-04T22:52:00.000+09:002014-12-04T22:52:28.309+09:00Chromebook購入<div class="separator" style="clear: both;">
Dell Chromebook 11 15Q31をネットサーフィン専用のセカンドマシンとして購入(<a href="http://www.amazon.co.jp/Dell-Chromebook-%E3%83%8E%E3%83%BC%E3%83%88%E3%83%96%E3%83%83%E3%82%AFPC-Chromebook11-15Q31/dp/B00OLFM7OC/ref=sr_1_cc_1?s=aps&ie=UTF8&qid=1417698228&sr=1-1-catcorr&keywords=15Q31" target="_blank">Amazon</a>で¥31,396)。</div>
<div class="separator" style="clear: both; text-align: left;">
Windowsのネットブックは遅くてダメダメなイメージがあるので、起動が早くサクサク動くという噂のChromebookを買ってみた。</div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
外観</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEivTTts5mEmd7l67TDvkxRhGW9-OMo5Fr5gLqrhGskdEJpn_skJjUXSEQo4oCGat6YJS5n0MvS0tia-_aBAqZiqXRyf0YKSXZ3IizpfQJWjZbcnZLP4p8_ITeY9XR_fosgju0CzJVEKHtcb/s1600/DSC_0102.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEivTTts5mEmd7l67TDvkxRhGW9-OMo5Fr5gLqrhGskdEJpn_skJjUXSEQo4oCGat6YJS5n0MvS0tia-_aBAqZiqXRyf0YKSXZ3IizpfQJWjZbcnZLP4p8_ITeY9XR_fosgju0CzJVEKHtcb/s1600/DSC_0102.jpg" height="180" width="320" /></a></div>
<div style="text-align: center;">
キーボードはこんな感じ</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgKvdprbhgxHg2LukQsyxbL4GTcnpF_YcqefVJXqMRJgWogCBSq3Kh5M0Uqg0p1S4Ts1F2jmhbn5aAAPGcPs9TqgJGstyXHSRmUjb7XQgUipNyksfwEuoVOIpzbhE7KS-jtc8R-KuuYdKJ8/s1600/DSC_0103.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgKvdprbhgxHg2LukQsyxbL4GTcnpF_YcqefVJXqMRJgWogCBSq3Kh5M0Uqg0p1S4Ts1F2jmhbn5aAAPGcPs9TqgJGstyXHSRmUjb7XQgUipNyksfwEuoVOIpzbhE7KS-jtc8R-KuuYdKJ8/s1600/DSC_0103.jpg" height="180" width="320" /></a></div>
<br />
1週間ほど使ってみたが、快適!!<br />
画面を開けると自動的に電源が入り、ものの5秒ほどでログイン画面、パスワードを入力して、これまた5秒ほどでChromeが立ち上がりgoogle検索画面が表示される。<br />
ChromeはWindowsで使ってる環境が同期されていてブックマークや拡張機能がそのまま使える。タッチパッドの操作性も良く、特に二本指で縦にスライドするとスクロール動作してくれるのでマウスがなくても快適にネットサーフィンできる。まだあまり慣れていないので意識しないと使わないけど二本指で横にスライドすると「戻る」「進む」動作をしてくれる。慣れれば便利かも。まさにネットサーフィンのためのPCって感じ。<br />
印刷も「googleクラウドプリント」で出来るし、WindowsPCをChromeリモートデスクトップから操作できるし、ブログ書いたりメール書いたりはキーボードがある分スマホやタブレットより書きやすいし、日本語IMEはgoogle日本語入力なので賢いし、かなり気に入った。<br />
機能性:WindowsPC>>Chromebook>androidタブレット≒スマホ<br />
手軽さ:androidタブレット≒スマホ>Chromebook>>WindowsPC<br />
操作性:Chromebook>WindowsPC>androidタブレット>スマホ<br />
<br />
<br />
<br />
<br />taku1974http://www.blogger.com/profile/17385313096440580362noreply@blogger.com0tag:blogger.com,1999:blog-4896421594300492646.post-84346856923158702902014-01-08T22:32:00.000+09:002014-01-08T22:32:35.480+09:00Xperia A ブックマークの[dメニュー]削除Xperia AのChromeで最初からあるブックマークで削除できないのがある(長押ししても削除メニューが表示されない) 。<br />
それがこれ、「モバイルのブックマーク」-「docomo」-「dメニュー」<br />
鬱陶しいので、削除方法を調べた。<br />
<br />
<br />
<ol>
<li>「設定」-「アプリ」-「すべて」からcom.android.providers.partnerbook...(長すぎて...以降が表示されないが2つある)を見つけて、2つとも無効化する。</li>
</ol>
<br />
以上。taku1974http://www.blogger.com/profile/17385313096440580362noreply@blogger.com0tag:blogger.com,1999:blog-4896421594300492646.post-38134719492931075972014-01-07T01:13:00.000+09:002014-01-07T01:13:42.792+09:00Xperia A root取得後にしたことroot取得に成功したXperia Aだが、root取得が目的ではない。<br />
やりたかったこととやり方は以下の通り。<br />
<br />
<ul>
<li>セルスタンバイ対策</li>
</ul>
<ol><ol>
<li><a href="http://kilin.clas.kitasato-u.ac.jp/howto/so-04e.html" target="_blank">ここ</a>を参考に、<a href="http://forum.xda-developers.com/showthread.php?t=1574401" target="_blank">ここ</a>からXposedというアプリのインストーラlatest.apkを端末(Xperia A)にダウンロード。</li>
<li>ここから最新のDocomoSimPatcherXXXXXXXX.apkを端末にダウンロード。</li>
<li>Xposed Installer を起動して Install/Update ボタンを押す。</li>
<li>Modules タブに切り替えて docomo MVNO Dataonly-SIM Patcher の左にチェックを付ける。</li>
<li>再起動。</li>
</ol>
</ol>
<div style="text-align: center;">
これで、データ通信専用SIMでもセルスタンバイで電池消費が増えることはない。</div>
<div style="text-align: center;">
<br /></div>
<ul>
<li>テザリング対策</li>
</ul>
<ol><ol>
<li><a href="https://play.google.com/store/apps/details?id=com.estrongs.android.pop&hl=ja" target="_blank">ESファイルエクスプローラー</a>と<a href="https://play.google.com/store/apps/details?id=com.mixo.sqlitedbeditor&hl=ja" target="_blank">sqlite Database Editor</a>をインストールしておく。</li>
<li>ESファイルエクスプローラーを起動して、Rootエクスプローラをオンする。</li>
<li>ESファイルエクスプローラーで/data/data/com.android.providers.settings/のdatabases/フォルダをsdカードにコピーする。(変更用とバックアップ用に2つコピーする)</li>
<li>変更用にコピーしたsettings.dbをsqlite Database Editorで開き、[secure]をタップして、[SELECT*]をタップする。</li>
<li>tether_dun_required(本環境ではid=73)を探しvalueを1から0に変更して[UPDATE]。</li>
<li>tether_dun_apn(本環境ではid=74)を探しvalueの文字を全て消して[UPDATE]。</li>
<li>修正したsettings.dbをESファイルエクスプローラで元の場所/data/data/com.android.providers.settings/databases/に上書きコピーする。</li>
<li>プロパティでパーミッションをrw-rw---, Owner=system, Group=systemにする。</li>
<li>再起動</li>
</ol>
</ol>
<div style="text-align: center;">
これで、テザリング時に勝手にAPNがdocomoに変わってしまうことなく、テザリングが可能になった。</div>
<br />
<ol><ol></ol>
</ol>
<br />
<ul>
<li>カメラのシャッター音OFF</li>
</ul>
<br />
<ol><ol>
<li>ESファイルエクスプローラーを起動して、Rootエクスプローラをオンする。(この時R/Wマウント設定で/systemをRWに設定しておく事)</li>
<li>/system/media/audio/cameraフォルダを適当にリネームする。</li>
<li>スクリーンショットを撮った時の音も消したい場合は、/system/media/audio/ui/camera_click.oggを適当にリネームする。</li>
</ol>
</ol>
<div style="text-align: center;">
<br /></div>
<br />
<ul>
<li>不要なプリインストールアプリの削除</li>
</ul>
<ol><ol>
<li><a href="https://play.google.com/store/apps/details?id=com.keramidas.TitaniumBackup&hl=ja" target="_blank">Titanium Backup</a>をインストールする。</li>
<li>バッチ処理...から全ユーザーアプリとシステムデータをバックアップしておく。</li>
<li>バックアップ/リストアからdocomoと名の付く不要アプリを根こそぎアンインストール!</li>
</ol>
</ol>
<div style="text-align: center;">
<br /></div>
<div style="text-align: left;">
後は、root取得状態のままだと起動できないアプリがあるので(例えばWOWOWオンデマンドとか)unrootしておく。</div>
<div>
<ol>
<li>SuperSUを起動して、「ルート権限を放棄」をタップ。</li>
</ol>
<div style="text-align: center;">
再度、root取得したい時は面倒だが、<a href="http://taku1974-digital.blogspot.jp/2014/01/xperia_6.html" target="_blank">Xperia A ルート取得</a>の手順5,6を実施する。</div>
</div>
taku1974http://www.blogger.com/profile/17385313096440580362noreply@blogger.com0tag:blogger.com,1999:blog-4896421594300492646.post-80555633938107747282014-01-06T00:36:00.001+09:002014-01-06T00:36:13.071+09:00Xperia A ルート取得今回購入したXperia A のバージョンはAndroid4.1.2 ビルド番号10.1.1.D.2.31だった。<br />
これのroot取得方法。<br />
<br />
<ol>
<li><a href="http://developer.android.com/sdk/index.html" target="_blank">Get the Android SDK</a>からADT Bundle for Windowsをダウンロードして解凍。</li>
<li>SDK Manager.exeを実行してAndroid SDK platform-toolsをインストール又は更新。</li>
<li>adb.exeのある\sdk\platform-toolsフォルダを環境変数PATHに追加。</li>
<li><a href="http://cubeundcube.blogspot.jp/2013/11/xperiarootz-so-02e-so-04e.html" target="_blank">キューブ実験室</a>から<a href="http://sdrv.ms/HKHqHb" style="background-color: white; color: #9900ff; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; line-height: 18px; text-decoration: none;" target="_blank">rootkitZ_20131112.zip</a>をダウンロードして解凍。</li>
<li>XperiaAの「開発者向けオプション」→「USBデバッグ」にチェックを入れる。</li>
<li>XperiaAをUSBケーブルで繋ぎinstall.batを実行する。</li>
</ol>
<div>
以上、非常に簡単だった。</div>
taku1974http://www.blogger.com/profile/17385313096440580362noreply@blogger.com0tag:blogger.com,1999:blog-4896421594300492646.post-73259836677614453802014-01-04T11:17:00.000+09:002014-01-04T11:18:11.587+09:00MVNO(仮想移動体通信事業者)変更Xperia A購入に合わせてSIMサイズが変わったのでMVNOも変更した。<br />
<br />
今までSo-netを使って<a href="http://taku1974-digital.blogspot.com/2012/04/blog-post.html">ケータイ・スマホ2台持ち</a>していたが、格安の<a class="l" href="https://my.umobile.jp/d/lp/itmedia/makotobiz/" style="color: #660099; cursor: pointer; font-family: arial, sans-serif; white-space: nowrap;">U-mobile*d</a>に変えた。<br />
<br />
結果:<br />
ケータイ使用料980円(無料通話1000円込み)+ So-net 2,665円=3,645円<br />
↓<br />
ケータイ使用料980円(無料通話1000円込み)+ U-mobile 714円(1Gbyteまで)=<span style="color: red;">1,694円</span>!<br />
ケータイ使用料980円(無料通話1000円込み)+ U-mobile 2,079円(1Gbyte以上)=3,059円<br />
<br />
家ではWifiで使うので1Gbyteを超えることは滅多に無いはず。超えても今までより安いのでGood!<br />
経済的にはやっぱり2台持ち、やめられない。。。taku1974http://www.blogger.com/profile/17385313096440580362noreply@blogger.com0tag:blogger.com,1999:blog-4896421594300492646.post-82925310057594611822014-01-04T10:49:00.000+09:002014-01-04T10:49:08.073+09:00Xperia A 購入手頃なサイズで気に入っていた<a href="http://taku1974-digital.blogspot.jp/search/label/Xperia" target="_blank">Xperia sola</a>だが、使っているアプリを更新しているとドンドン重くなってきて快適に使えなくなってきた。<br />
サイズ的に大きくて好みではないが、値段も下がってきた<a href="http://ja.wikipedia.org/wiki/SO-04E" target="_blank">Xperia A</a>を購入した。<br />
<a href="http://taku1974-digital.blogspot.jp/2012/04/blog-post.html" target="_blank">ケータイとスマホの2台持ち</a>をしている身としては、やっぱりサイズがデカイ!と言うことでガラケーの方も新しく<a href="https://www.nttdocomo.co.jp/product/kids_junior/hw01d/index.html" target="_blank">HW-01D</a>(キッズケータイ!)を購入。<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgXOEiF4RxnAZFwE9ASvoFDzkXSqe3m5nu1TS1vyxTbEt9lxgpvorG7bgGmaDrly-GOtUyHWxHc0-E9lCdRSQQcEniEGDjXiPSXp-idIzg_OEQeFdpGWou_LGggcFQuVrOCSjRuvTcEmgg9/s1600/P1010711" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="240" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgXOEiF4RxnAZFwE9ASvoFDzkXSqe3m5nu1TS1vyxTbEt9lxgpvorG7bgGmaDrly-GOtUyHWxHc0-E9lCdRSQQcEniEGDjXiPSXp-idIzg_OEQeFdpGWou_LGggcFQuVrOCSjRuvTcEmgg9/s320/P1010711" width="320" /></a></div>
<div style="text-align: center;">
左が以前のF-09Aとsola、右が今回購入したHW-01DとA</div>
<div style="text-align: left;">
購入価格:</div>
<div style="text-align: left;">
</div>
<ul>
<li>Xperia A(新品) 36,800円(そこそこ値段下がってきた)</li>
<li>HW-01D(新品) 1,460円(送料込みで激安)</li>
</ul>
<br />
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
使い勝手:</div>
<div style="text-align: left;">
</div>
<ul>
<li>Xperia A さすがクワッドコア&LTE、速い!</li>
<li>HW-01D ちっちゃい!電話機能オンリーで使う分には問題なし。SMSも一応使える。電話帳登録が10件までで登録した番号にしか発信できないのがちょっと不便だけど、頻繁に使う番号は5,6件なので、それ以外は発信前にスマホで番号調べて登録して発信と言う手順になるけど許容範囲。</li>
</ul>
<br />
<div>
<br /></div>
taku1974http://www.blogger.com/profile/17385313096440580362noreply@blogger.com0tag:blogger.com,1999:blog-4896421594300492646.post-6554662092823595862013-06-02T20:44:00.001+09:002013-06-02T20:44:53.998+09:00Xperia SolaのAndroid4.1 JellyBean化先日、Xperia SolaをICSにアップデートしたが、イマイチ(セルスタンバイ問題があったり、動作が遅かったり、中華フォントのままだったり)良くないので非公式のJellyBeanを入れてみた。<br />
JellyBean導入にあたり色々することがあって上手くいかない部分もあったのでメモ。<br />
<br />
◇root取得<br />
1.前回、ビルド番号:6.1.1.B.1.54を焼いていたがこのバージョンは簡単にroot取得できなさそうなので6.1.1.B.1.10を<a href="http://forum.xda-developers.com/showthread.php?t=1914264" target="_blank">このへん</a>からダウンロードしてFlashToolで書き込む。<br />
2.Root_with_Restore_by_Bin4ryを<a href="http://forum.xda-developers.com/showthread.php?t=1886460" target="_blank">このへん</a>からダウンロード。今回ダウンロードしたのはv30。解凍してRunMe.batを実行。1番のNormalでsolaのroot取得。<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjnqfVsrjUC7loRtc_ftEFK7o0jj7LlSkhZDHymPSLExTdkoIvqPBO-RE_dJjnWJPc37joT_SB6T1hUD59U2nuGXcwGpGKpi0bLzstTj_XqPuzc0xAzqqiCq7WGgtMnXIORf8-3VGkKNKWm/s1600/Root_with_Restore_by_Bin4ry.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="232" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjnqfVsrjUC7loRtc_ftEFK7o0jj7LlSkhZDHymPSLExTdkoIvqPBO-RE_dJjnWJPc37joT_SB6T1hUD59U2nuGXcwGpGKpi0bLzstTj_XqPuzc0xAzqqiCq7WGgtMnXIORf8-3VGkKNKWm/s320/Root_with_Restore_by_Bin4ry.JPG" width="320" /></a></div>
<br />
◇CWM(ClockworkMod)インストール<br />
1.<a href="http://www.androidgadgematic.com/2012/12/install-cwm-touch-recovery-sony-xperia-sola.html" target="_blank">このへん</a>からダウンロードしたら解凍してinstall.batを実行。<br />
2.solaの開発者向けオプションでUSBデバッグを有効にしてPCに接続。<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3Tega0lelviV_jA-r7Ry9eE2whCd1sJwRoMxz7Kmv72zVwGunn_u1nUlYFlZLroo9YmiIT_fFiPD5OHJ5IFeKETYXlzKYM5ith8EvXlfDc_AVkHosgMpFwqezqpVAq8k3EdZq0ltFxjVa/s1600/cwm-install.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="232" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3Tega0lelviV_jA-r7Ry9eE2whCd1sJwRoMxz7Kmv72zVwGunn_u1nUlYFlZLroo9YmiIT_fFiPD5OHJ5IFeKETYXlzKYM5ith8EvXlfDc_AVkHosgMpFwqezqpVAq8k3EdZq0ltFxjVa/s320/cwm-install.JPG" width="320" /></a></div>
3.「Finished!」が表示されたらUSBケーブルを抜いてsolaを再起動<br />
4.起動時のSONYロゴを連打してバイブレーションしたら「戻る」か「ホーム」か「メニュー」ボタンを連打。ダメならSONYロゴ表示中にボリューム↓ボタンを連打。(←<a href="http://www1.plala.or.jp/tsoma/nikki12-3.html" target="_blank">ここ</a>の記事を参考にした)<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiKdtO8eVpnq0vBveDxHVI6VqXUZI-ndaDthLDvw1Q7sX3ztbIYlT071r0Px7qeDG471NMH_edzCu4QYqIO5baw3nF-8p2rJJI1_ZcSW4G17p5sCrSNA4fMtcxYMvtkev0HUGWal2pLozFf/s1600/P1010470.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiKdtO8eVpnq0vBveDxHVI6VqXUZI-ndaDthLDvw1Q7sX3ztbIYlT071r0Px7qeDG471NMH_edzCu4QYqIO5baw3nF-8p2rJJI1_ZcSW4G17p5sCrSNA4fMtcxYMvtkev0HUGWal2pLozFf/s320/P1010470.JPG" width="165" /></a></div>
<br />
◇BootLoaderアンロック(必要だったのか不明)<br />
1.Sonyの<a href="http://unlockbootloader.sonymobile.com/instructions" target="_blank">公式サイト</a>を見ながら(英語だけど、、、)アンロックキーを取得する。電話(ダイヤラー)で「*#06#」を入力して表示された端末識別番号をメモして、公式サイト一番下の<span style="-webkit-appearance: none; background-color: transparent !important; border-bottom-left-radius: 3px; border-bottom-right-radius: 3px; border-top-left-radius: 3px; border-top-right-radius: 3px; border: 0px; box-sizing: border-box; color: white; cursor: pointer; display: inline-block; font-family: Helvetica, Arial, sans-serif; font-size: 13px; height: auto; margin: 0px; outline: 0px; padding: 0px; position: relative; text-align: center; text-decoration: none; vertical-align: baseline; white-space: nowrap;"><a class="btn btn-primary" href="http://unlockbootloader.sonymobile.com/node/add/ubs-request" style="-webkit-appearance: none; background-color: #2aabe4; border-bottom-left-radius: 3px; border-bottom-right-radius: 3px; border-top-left-radius: 3px; border-top-right-radius: 3px; border: 0px; box-sizing: border-box; color: white; cursor: pointer; display: inline-block; font-family: Helvetica, Arial, sans-serif; font-size: 13px; height: auto; margin: 0px; padding: 0.3076923076923077em 0.7692307692307692em; position: relative; text-align: center; text-decoration: none; vertical-align: middle; white-space: nowrap;">Continue</a></span><br />
をクリック。<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgcdEvt7-XWoNPP6ixCGEgI6mj6FWjoJ6PAmNaW_DIkXUvYeJR8gHNIbFhN1Uw1ZD-bTEi3cLGBLBQxpcgaBDZsr9nPnXsamA9URjxZlS6DzqGnNWazma6cQzbw1vQWHojfr9L-Ep-r-ofR/s1600/%E7%AB%AF%E6%9C%AB%E8%AD%98%E5%88%A5%E7%95%AA%E5%8F%B7%E5%8F%96%E5%BE%97.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="302" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgcdEvt7-XWoNPP6ixCGEgI6mj6FWjoJ6PAmNaW_DIkXUvYeJR8gHNIbFhN1Uw1ZD-bTEi3cLGBLBQxpcgaBDZsr9nPnXsamA9URjxZlS6DzqGnNWazma6cQzbw1vQWHojfr9L-Ep-r-ofR/s320/%E7%AB%AF%E6%9C%AB%E8%AD%98%E5%88%A5%E7%95%AA%E5%8F%B7%E5%8F%96%E5%BE%97.JPG" width="320" /></a></div>
<br />
2.表示される画面の「Yes, I'm sure」をクリック。次の画面チェックボックスにチェックを入れて「I accept」をクリック。次の画面に名前と端末識別番号、メールアドレスを入力して「Submit」をクリック。アンロックキーが書かれたメールが来る。<br />
※ここからがなかなか上手くいかずに苦労したところ。。。(<a href="http://ameblo.jp/ilsner/entry-11278227041.html" target="_blank">ここ</a>を参考にさせて頂きました、有力な情報有り難うございます。)<br />
3.<a href="http://developer.android.com/sdk/index.html" target="_blank">ここ</a>からAndroid SDKをダウンロードして解凍。SDK Manager.exeを実行して「Extras」の「Google USB Driver」をインストールする。「\adt-bundle-windows-x86_64-20130522\sdk\extras\google\usb_driver」にある「android_winusb.inf」をテキストエディタで開いて以下の編集を行う。<br />
<br />
[Google.NTx86]の項目に<br /><br />[Google.NTx86]<br />; SonyEricsson<br />%SingleAdbInterface% = USB_Install, USB\VID_0FCE&PID_0DDE<br />%CompositeAdbInterface% = USB_Install, USB\VID_0FCE&PID_0DDE&MI_01<br />%SingleBootLoaderInterface% = USB_Install, USB\VID_0FCE&PID_0DDE<br /><br /><div>
を追記<br /><br />[Google.NTamd64]の項目に<br /><br />[Google.NTamd64]<br />; SonyEricsson<br />%SingleAdbInterface% = USB_Install, USB\VID_0FCE&PID_0DDE<br />%CompositeAdbInterface% = USB_Install, USB\VID_0FCE&PID_0DDE&MI_01<br />%SingleBootLoaderInterface% = USB_Install, USB\VID_0FCE&PID_0DDE</div>
<div>
<br /></div>
<div>
を追記</div>
<div>
<br /></div>
<div>
4.PCのデバイスマネージャーを開いておき、電源OFFしたSolaのボリューム↑ボタンを押しながらUSBケーブルをPCに接続する。端末のランプが紫になると、デバイスマネージャー上に「その他のデバイズ」で「S1Boot Fastboot」というのが表示されるので、「プロパティ」-「ドライバの更新」をクリック(すぐに消えてしまうので素早くやる)。先ほど編集したinfファイルを選択し「Android bootloader・・・」をインストールする。</div>
<div>
5.無事にインストールできたら、再度ボリューム↑ボタンを押しながらUSBケーブルを接続するとランプが紫のままになる。</div>
<div>
6.PCのコマンドプロンプトを起動し「\adt-bundle-windows-x86_64-20130522\sdk\platform-tools」に移動して「fastboot.exe -i 0x0fce getvar version」を実行してバージョンが返ってきたら「fastboot.exe -i 0x0fce oem unlock 0xKEY」を実行(KEYの部分は先ほどSonyサイトよりゲットしたアンロックキー)</div>
<div>
<br /></div>
<div>
◇JellyBeanインストール</div>
<div>
1.<a href="http://forum.xda-developers.com/showthread.php?t=2302836" target="_blank">ここらへん</a>から「Unoficial_Stockrom_JB_Sola_4.1.2__6.2.A.0.400.zip」をダウンロード</div>
<div>
2.バグFIXもあるので<a href="http://forum.xda-developers.com/showthread.php?t=2258416" target="_blank">ここらへん</a>から「JB Fixes v2.zip」をダウンロード。</div>
<div>
3.microSDカードにダウンロードしたファイルをコピーしてsolaに挿す。</div>
<div>
4.solaの電源を入れてSONYロゴを連打してバイブレーションしたら「戻る」か「ホーム」か「メニュー」ボタンを連打。</div>
<div>
5.CWMが起動したら、「wipe data/factory reset」と「wipe cache partition」を実行。</div>
<div>
6.「install zip from sdcard」-「choose zip from ext-SD」で「Unoficial_Stockrom_JB_Sola_4.1.2__6.2.A.0.400.zip」を書き込む。</div>
<div>
7.もう一度、「wipe data/factory reset」と「wipe cache partition」を実行。</div>
<div>
8.「reboot system now」でしばらく待つ(SONYのロゴにcustomの文字が!)</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgfnOjlzbxed2tGIuu_YRdGl-BGjLoe5BgpOyc_hvEPbqK7XoQEiVCPbynqByhS_VSfjJplp8RKNTnBaQuLCHkOS9V3Q3gun6b4n_-zorARV129MMfv-QP3ushVg4iK8gOfrEdIpaQxBl8n/s1600/P1010472.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgfnOjlzbxed2tGIuu_YRdGl-BGjLoe5BgpOyc_hvEPbqK7XoQEiVCPbynqByhS_VSfjJplp8RKNTnBaQuLCHkOS9V3Q3gun6b4n_-zorARV129MMfv-QP3ushVg4iK8gOfrEdIpaQxBl8n/s320/P1010472.JPG" width="164" /></a></div>
<div>
<br /></div>
<div>
9.無事 JellyBean化したら一旦電源OFFして、再度電源を入れてボリューム↓ボタンを連打。</div>
<div>
10.CWMが起動したら、「install zip from sdcard」-「choose zip from ext-SD」で「JB Fixes v2.zip」を書き込む。</div>
<div>
11.「advanced」-「wipe Dalvik cache」と「Fix Permissions」を実行して、「reboot system now」でしばらく待つと完了!</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjt_rfYvnbtkjcNkW34BJXPFGaKychqaHjC1maLaxxAKLlcSF32Hq_382yH_gOafhMP0uzRUrs59-kilHKjIrQuUuZoaKbgf7TYw9kTBaU8drdhA6DP1EoKeZmApurxOGnFWKTWBEjFMK6R/s1600/Screenshot_2013-06-02-16-49-22.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjt_rfYvnbtkjcNkW34BJXPFGaKychqaHjC1maLaxxAKLlcSF32Hq_382yH_gOafhMP0uzRUrs59-kilHKjIrQuUuZoaKbgf7TYw9kTBaU8drdhA6DP1EoKeZmApurxOGnFWKTWBEjFMK6R/s320/Screenshot_2013-06-02-16-49-22.png" width="179" /></a></div>
<div>
<br /></div>
<div>
<br /></div>
<div>
セルスタンバイ問題もなくアンテナピクトが正常に表示されてるし、動作は結構ヌルヌル、ちゃんとした日本語フォント、ステータスバーに音・BT・WiFi・データ通信設定アイコンが追加されてて良い感じ。</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiilj3HyBFdWRqPRlaXqzh_wxGNvtF7dNT86GVHfMxe5b920KUHIq_WILKSFhLekBB8rgWJGFvdcaQkGM43Y9R4M0bAG0ffqufck9Yg2PFQi1oOtfJmiUrFOXaVWHoHFMUXitw19bj3ANGV/s1600/Screenshot_2013-06-02-20-33-01.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiilj3HyBFdWRqPRlaXqzh_wxGNvtF7dNT86GVHfMxe5b920KUHIq_WILKSFhLekBB8rgWJGFvdcaQkGM43Y9R4M0bAG0ffqufck9Yg2PFQi1oOtfJmiUrFOXaVWHoHFMUXitw19bj3ANGV/s320/Screenshot_2013-06-02-20-33-01.png" width="179" /></a><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgphHHnv-lnaZRIgqOofs-AK9deyGcZ4_K8bvMEDFI2Ll2ibdK211LXqI1WQyUM0wiZiU4NhRHwj_5G7z_r8vDHtOjTCsc7Xku0M6BBoiX6OJBxuCkBFBESAQJcBcux9HZycost7ipjmjhD/s1600/Screenshot_2013-06-02-20-32-43.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgphHHnv-lnaZRIgqOofs-AK9deyGcZ4_K8bvMEDFI2Ll2ibdK211LXqI1WQyUM0wiZiU4NhRHwj_5G7z_r8vDHtOjTCsc7Xku0M6BBoiX6OJBxuCkBFBESAQJcBcux9HZycost7ipjmjhD/s320/Screenshot_2013-06-02-20-32-43.png" width="179" /></a></div>
<div>
<br /></div>
taku1974http://www.blogger.com/profile/17385313096440580362noreply@blogger.com0tag:blogger.com,1999:blog-4896421594300492646.post-62383003574886927752013-05-26T10:05:00.000+09:002013-05-26T10:06:10.357+09:00XperiaSolaアップデートXperia SolaのISCアップデートが始まって半年以上経つのに自分の持っている端末にはアップデートが全く来ない、、、待ちきれないのでFlashToolを使ってアップデートすることにした。<br />
<br />
1.google検索で「MT27i_6.1.1」と入力すると、google先生がサジェストしてくる中から一番新しそうな「MT27i_6.1.1.B.1.54」を検索して、「MT27i_6.1.1.B.1.54_India.ftf」を何処かからダウンロードした。(このファイルで良いのか不安だがやって見ることに)<br />
2.ダウンロードしたftfファイルをFlashToolのインストールフォルダのfirmwaresフォルダにコピーする。<br />
3.FlashToolを起動して、稲妻マークをクリックしFlashModeを選択して、焼きたいMT27iの6.1.1.B.1.54を選択する。(今回はクリーンインストールしたいのでWipeのチェックは全て外した)<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjAOURqDCpZrqr78ZWUgvUr6TRhyphenhyphenIK6qRNyDCb_7-cljdXFL5gBe6ix8xuH3xzd9zFLnf36gf-d4hfv0dj4BivWheaeHyo7W1GKRcWBy_ZBOEdMWLZ9EjqR_ynkY-1plsP3nLLq5vH0yewe/s1600/FlashTool1.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="201" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjAOURqDCpZrqr78ZWUgvUr6TRhyphenhyphenIK6qRNyDCb_7-cljdXFL5gBe6ix8xuH3xzd9zFLnf36gf-d4hfv0dj4BivWheaeHyo7W1GKRcWBy_ZBOEdMWLZ9EjqR_ynkY-1plsP3nLLq5vH0yewe/s320/FlashTool1.PNG" width="320" /></a></div>
<br />
4.電源を切ったXperiaSolaのボリューム下ボタンを押したまま、USBポートに挿す。<br />
6.しばらく待つと書き込みが終了。<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj3vstgch1arbiUX26O-P09fG5FF9TXjmKE5ZdkS4Q2HNw7wCGQKAPI7giOiyi_4ATBGPL4pS2c7w13g7cTzWl2MTyjqlIpXAvxW6CpXVnZtrXL0a4_1_3VpRPsxVNWOw0ktSrO_SZk-C2Y/s1600/FlashTool2.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="181" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj3vstgch1arbiUX26O-P09fG5FF9TXjmKE5ZdkS4Q2HNw7wCGQKAPI7giOiyi_4ATBGPL4pS2c7w13g7cTzWl2MTyjqlIpXAvxW6CpXVnZtrXL0a4_1_3VpRPsxVNWOw0ktSrO_SZk-C2Y/s320/FlashTool2.PNG" width="320" /></a></div>
7.XperiaSolaをUSBから抜いて、電源ON。初回は起動に結構時間が掛かるが焦らず待つ。<br />
<br />
端末情報を確認すると、無事Ver4.0.4にバージョンアップされてた!<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgCplhZc0J6oItTxvJhN72VpJ2-u2hTm_zuOxycRvt1ZIVqHemdJwiMYrESGlDv3yReqrfxihDllJ3hbcYHfoHKsbYtlrnxJTnPNpbpNilHfWO-lX31MInBjCfUSj500rqZ7iBdjaOvxoPj/s1600/Screenshot_2013-05-26-09-08-16.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgCplhZc0J6oItTxvJhN72VpJ2-u2hTm_zuOxycRvt1ZIVqHemdJwiMYrESGlDv3yReqrfxihDllJ3hbcYHfoHKsbYtlrnxJTnPNpbpNilHfWO-lX31MInBjCfUSj500rqZ7iBdjaOvxoPj/s320/Screenshot_2013-05-26-09-08-16.png" width="179" /></a></div>
<br />taku1974http://www.blogger.com/profile/17385313096440580362noreply@blogger.com0tag:blogger.com,1999:blog-4896421594300492646.post-89153855722807923632013-01-12T12:04:00.000+09:002013-01-12T12:04:04.766+09:00グローバルデータ2韓国出張中のデータ通信用にグローバルデータでモバイルWi-Fiルータをレンタルしていった。<div>
渡された機体はWibro(ワイブロ) egg のようだ。</div>
<div>
実物がこれ。</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhaiqE1zO6shIGAxPc0W__7PtKZcapjJ71Lo341qY6MQ9jlN-6yCuJuKuFq6upeUGA4QLeSzB5OsEcfY1p_vTtfteZm3rf14G2HHG0WSPD_PPWpB_4d9_qShhE5d7fMNGrXJZHKt6Y7gvr9/s1600/DSC_0041.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhaiqE1zO6shIGAxPc0W__7PtKZcapjJ71Lo341qY6MQ9jlN-6yCuJuKuFq6upeUGA4QLeSzB5OsEcfY1p_vTtfteZm3rf14G2HHG0WSPD_PPWpB_4d9_qShhE5d7fMNGrXJZHKt6Y7gvr9/s320/DSC_0041.jpg" width="199" /></a></div>
<div>
<br /></div>
<div>
これをXperia Solaと繋げようとすると、<a href="http://taku1974-digital.blogspot.jp/2012/10/blog-post.html" target="_blank">前回(中国出張)</a>の時と同じ症状で繋がらない。PCやタブレットとは繋がるのに、、、<br />
今回のeggはSIMが付いていないタイプなので前回のようにSIMをぶっこ抜いてSolaに挿すってこともできず、困った。<br />
が、レンタルした説明書にeggのリセットのやり方が書いてあった。ダメ元でこの<span style="color: red;"><b>eggをリセット</b></span>してみたら、何故か繋がるようになった!その後は快調に使用できた。<br />
もちろん、PCやタブレットととも正常に繋がった。<br />
同症状で困っている人はお試しあれ。</div>
taku1974http://www.blogger.com/profile/17385313096440580362noreply@blogger.com0tag:blogger.com,1999:blog-4896421594300492646.post-92010728617995771282013-01-05T22:01:00.000+09:002013-01-05T22:08:49.548+09:00VPNで自宅とスマホを接続中国出張中にFacebookやTwitterを見れない問題を解決するために、自宅のNAS(QNAP)のVNPサービスを有効にしてみた。設定方法は<a href="http://docs.qnap.com/nas/jp/index.html?vpn_service.htm" target="_blank">ここ</a>を参照した。MyCloudNASの有効化と自動ルータ構成でVPNサーバーの転送を有効にするのを忘れないようにする。<br />
VPNサーバーは、PPTPとOpenVPNの両方を設定した。<br />
PPTPはso-netのSIMと「Sony Tablet P(android4.0.3)」の組み合わせで、DNS検索ドメインを8.8.8.8に設定すると、うまく動作したが、docomoのSIMではspモードのNATを超えられず断念。また、「Xperia Sola(android2.3.7)」は、so-netのSIMでも、うまく動作しなかった。とりあえず、パソコンからの接続用にそのまま有効化しておくことにした。<br />
OpenVPNの方は、「Sony Tablet P」と「Xperia Sola」の両方ともSIMに関係なくうまく動作した。<br />
<br />
と言うことで、androidでOpenVPN接続する方法。<br />
androidは標準でOpenVPNをサポートしていないので「FEAT VPN」と言うアプリをインストールする。この「FEAT VPN」は、ルート化の必要がないし、free版もあるので良い(但し、free版は1日1時間の使用に制限される)<br />
①<a href="http://www.featvpn.com/feat-vpn-free" target="_blank">ここ</a>からインストール。android2.x,3.x用と4.x用の2種類あるので注意。<br />
②英語の<a href="http://www.featvpn.com/#howto" target="_blank">HowTo</a>を見ながらセットアップ。なんとなく分かるはず。<br />
③設定用zipファイルは、QNAPの「設定ファイルのダウンロード」でダウンロードしたzipファイルをそのまま使う。<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjT4Xnf78roe1Ws9_gNtQl3LFy83PRmY_GLfQaZXfJkgFq9Az6JhrYmFV8xTSMSqrm3zkPpKdmvhwE_xEUC3ZvOQaWx7NTPOlyKghFjoXBRA7AES0PGil6MxSpqYTkDJlrWSKHZmKk99aa_/s1600/screenshot_2013-01-05_2144.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjT4Xnf78roe1Ws9_gNtQl3LFy83PRmY_GLfQaZXfJkgFq9Az6JhrYmFV8xTSMSqrm3zkPpKdmvhwE_xEUC3ZvOQaWx7NTPOlyKghFjoXBRA7AES0PGil6MxSpqYTkDJlrWSKHZmKk99aa_/s320/screenshot_2013-01-05_2144.png" width="179" /></a> <a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhdfH_9sjfBz2RkB9EOqNy83QiyH5eU8cmKbrXTkk7t_GuoW41NckwjIA-X8RBlYs3h6mkMOCNvFVBJR9CgZ7hqE4KHOU4IVJhMCZM3NhQ2pCQUe1s7oWdDyaMefgogLOToLkCxo0AqMsa6/s1600/screenshot_2013-01-05_2156.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhdfH_9sjfBz2RkB9EOqNy83QiyH5eU8cmKbrXTkk7t_GuoW41NckwjIA-X8RBlYs3h6mkMOCNvFVBJR9CgZ7hqE4KHOU4IVJhMCZM3NhQ2pCQUe1s7oWdDyaMefgogLOToLkCxo0AqMsa6/s320/screenshot_2013-01-05_2156.png" width="179" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
「FEAT VPN」で自宅のLANに接続して共有フォルダにアクセスしているところ</div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
自宅のLANに接続した状態でブラウザーを開くと自宅のプロバイダー経由でインターネットを見ていることになるので、中国からでもFacebookが見れるはず、、、今度出張行った時に試してみよう。</div>
<br />taku1974http://www.blogger.com/profile/17385313096440580362noreply@blogger.com0tag:blogger.com,1999:blog-4896421594300492646.post-7050837540479227072012-11-05T22:59:00.000+09:002012-11-05T22:59:29.830+09:00ヘッドマウントディスプレイsonyの<a href="http://www.sony.jp/hmd/products/HMZ-T2/" target="_blank">HMZ-T2</a>を購入した。ソニーストアでAV機器10%割引クーポンを使って、62,820円。高いオモチャだが、、、<br />
使ってみての感想は、さすが“Personal 3D Viewer”と言うだけあって3D映像は圧巻!3Dテレビの不自然さやチラツキも全くないし、映画館で見る3Dのなんか箱庭っぽい感じもなくて、奥行きが無限遠まで広がる感じで、かなり自然。自然すぎて3Dであることを忘れるぐらい(それって良くないのか?、、、)でも2Dとは明らかに違う感じ。<br />
だた、これを着けているところを他人が見たら、かなり不自然で滑稽。。。<br />
<br />
画面の大きさは、映画館の真ん中からスクリーンを見た時の大きさぐらい、もしくは2m先の65インチテレビを見た時の大きさぐらいに感じる。(画面までの距離感は全くつかめず気持ち次第)<br />
<br />
買ってよかったと思える商品。wowowとかBSで3D放送を録画して楽しも!BDもレンタルしてこよう!<br />
<br />
ちなみに3D放送の録画は、3Dに対応していない機器でも良いし、4倍モードとかでも全く問題なし。<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgi87K-iarR8mausregNi2dTZzGK45wuyRmbO5ffnXMr7o6j0KvYqRBZZTPHSQmawxYbcvXUKoGraV6nHNBC5iAZhJXinEivxPPlH8k3blBaKGY3L4fMmtJbq03X1vtaP9CtU-I_sZQB6yA/s1600/HMZ-T2.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgi87K-iarR8mausregNi2dTZzGK45wuyRmbO5ffnXMr7o6j0KvYqRBZZTPHSQmawxYbcvXUKoGraV6nHNBC5iAZhJXinEivxPPlH8k3blBaKGY3L4fMmtJbq03X1vtaP9CtU-I_sZQB6yA/s1600/HMZ-T2.jpg" /></a></div>
<br />taku1974http://www.blogger.com/profile/17385313096440580362noreply@blogger.com0tag:blogger.com,1999:blog-4896421594300492646.post-57349016092137538012012-10-21T21:09:00.001+09:002012-10-21T22:22:00.652+09:00eeePCのAndroid化ノートPCを買ったことで出番の無くなったネットブックのeeePC901-X。しばらく放っていたけどWeb閲覧とメールをサッと立ちあげてリビングで使うためにAndroidをインストールしてみた。<br />
<br />
<a href="http://code.google.com/p/android-x86/downloads/list" target="_blank">ここ</a>から「android-x86-4.0-RC2-eeepc.iso」をダウンロードして、「DD for Windows」でUSBメモリにisoイメージを書き込んで、eeePCに挿して起動すればインストールできた。<br />
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
あとは、以下の手順で、android x86でARMをエミュレートできるようにすれば完了。<br />
<a href="http://arekorebibouroku.seesaa.net/article/298073373.html" target="_blank">ここ</a>を参考に<a href="http://www.buildroid.org/blog/?p=198" target="_blank">ここ</a>からibhoudiniとlibdvm_houdini.so、houdini_armlibs.tgzをダウンロードして、libhoudiniとlibdvm_houdini.soを/system/lib/ディレクトリ以下にコピー。houdini_armlibs.tgzを解凍してできたファイルを/system/lib/arm/ディレクトリを作ってそこにコピー。再起動。<br />
これで、「google日本語入力」とかが使えるようになる。<br />
<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhOt_BOMERl77oXN5olP3VxQBYRCGk8lh9zhIxPTMYZOYXXFBA_nIEojtdFYRrU8XKmzjk3wIt7oHK0Sw2PWc0RWXoxxfpy7dY63LH-0Jmv-knyNsOOWUx7jGsmfLbeKNI7AUu2ecU4HDa6/s1600/DSC_0020.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="180" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhOt_BOMERl77oXN5olP3VxQBYRCGk8lh9zhIxPTMYZOYXXFBA_nIEojtdFYRrU8XKmzjk3wIt7oHK0Sw2PWc0RWXoxxfpy7dY63LH-0Jmv-knyNsOOWUx7jGsmfLbeKNI7AUu2ecU4HDa6/s320/DSC_0020.jpg" width="320" /></a></div>
<br />
動作はサクサク、キーボード付きのアンドロイド4.0端末の出来上がり!<br />
注意点はキーボード配列がUSなので@を入力する時は「Shift+2」<br />
<div>
<br /></div>
taku1974http://www.blogger.com/profile/17385313096440580362noreply@blogger.com1tag:blogger.com,1999:blog-4896421594300492646.post-68532236462435572602012-10-14T22:05:00.001+09:002013-01-12T12:04:40.126+09:00グローバルデータ北京出張中のデータ通信用にグローバルデータの<a href="http://www.globaldata.jp/mifi/" target="_blank">MiFi</a>をレンタルしていった。<br />
実物がこれ。<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg0_dxJKX2yrr045JCQAEfhyphenhyphencazfx7iLW4p8mdfGTGzPRjgo5o0y06QKRz2qE1AKipVaGbx6sMJMkjn_sl-E2OaVRnMGIPw8nI5s01UKG0EFkTUVwQbBbjeRyne7rggs87MAt48oR4PqZDE/s1600/DSC_0017.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="180" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg0_dxJKX2yrr045JCQAEfhyphenhyphencazfx7iLW4p8mdfGTGzPRjgo5o0y06QKRz2qE1AKipVaGbx6sMJMkjn_sl-E2OaVRnMGIPw8nI5s01UKG0EFkTUVwQbBbjeRyne7rggs87MAt48oR4PqZDE/s320/DSC_0017.jpg" width="320" /></a></div>
これとWiFiでパソコンとかスマホを接続すれば、webサイトやメールを確認できる、はずだったのだが。。。持っていったPCとはすぐに接続できたのに、スマホと接続できない。<br />
スマホは先日購入した<a href="http://taku1974-digital.blogspot.jp/2012/09/xperia-sola.html" target="_blank">Xperia sola</a>。全然接続できず、接続してもすぐに切断されてしまう。スマホと接続できなかったら、これをレンタルした価値が半減以下に。<br />
ネットで調べたら、どうもXperia solaと繋がらないWifi機器がチョイチョイあるようだ。今回レンタルしたMiFiもそれだったようだ。<br />
で、ちょっと強引なことやってみた!<br />
レンタルしたMiFiからSIMカードをぶっこ抜いてXperia solaに挿してみたら、自動的にAPN設定をダウンロードして簡単に通信できた。(ちなみにSIMはChina Unicomだった)<br />
流石SIMフリー!パソコンと繋げるときは、Xperia solaでテザリングすればOKだし、かなり快適なネット環境が手に入った。<br />
(利用規約上、問題が有るかどうかは未確認なので同じことする時は自己責任で。。。)taku1974http://www.blogger.com/profile/17385313096440580362noreply@blogger.com0tag:blogger.com,1999:blog-4896421594300492646.post-42314650540386876592012-09-30T14:11:00.000+09:002012-09-30T14:11:44.029+09:00Xperia sola 購入今まで使っていた<a href="http://www.sonymobile.co.jp/product/docomo/so-01b/" target="_blank">Xperia X10(SO-01B)</a>の動きがもっさり遅くてイライラしてきたので、新しいスマホを購入。<br />
<a href="http://www.sonymobile.co.jp/product/docomo/so-05d/" target="_blank">Xperia SX</a>がサイズ的にも機能的にもベストだったけど、値段が高すぎて手が出ない。安めで小さめサイズとなると<a href="http://www.sonymobile.com/global-en/products/phones/xperia-sola/" target="_blank">Xperia sola</a>がベターな選択になりました。<br />
実際購入したのは、<a href="https://haikara-m.com/products/detail.php?product_id=57" target="_blank">これ</a>。液晶保護シート・送料・関税込みで24,480円でした。<br />
<br />
海外モデルなので最初からSIMフリーなのはいいんですが、フォントが中華フォントでちょっと微妙、、、戻るとか直すがこんな感じ。<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhQ8ySvueeLsLEXZ-qQgFJiQsN7NF0LwDz91ypPztc7m2JLRM5R5tfHCSO5t7GvOVzmQpgXjlIaHOMHjUyGV0MS66FNdZ8RAM_Ay1Cj0VnSSbPqN0Pd-JQmlmNYHW4s3L5PoqE6nUkN8OoF/s1600/screenshot_2012-09-30_1404.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhQ8ySvueeLsLEXZ-qQgFJiQsN7NF0LwDz91ypPztc7m2JLRM5R5tfHCSO5t7GvOVzmQpgXjlIaHOMHjUyGV0MS66FNdZ8RAM_Ay1Cj0VnSSbPqN0Pd-JQmlmNYHW4s3L5PoqE6nUkN8OoF/s320/screenshot_2012-09-30_1404.png" width="179" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
でも、うれしい誤算が<a href="http://smhn.info/201209-sony-update-glovemode" target="_blank">この記事</a>「<span style="background-color: white; color: #666666; font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, 'MS Pゴシック', sans-serif; font-size: 16px; line-height: 28px;">SONYがXperia solaのICSアップデートにおいて、</span><strong style="background-color: white; border: 0px; color: #666666; font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, 'MS Pゴシック', sans-serif; font: inherit; line-height: 28px; margin: 0px; padding: 0px; vertical-align: baseline;">「手袋モード(glove mode)」</strong><span style="background-color: white; color: #666666; font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, 'MS Pゴシック', sans-serif; font-size: 16px; line-height: 28px;">なる新しい機能を追加します。</span>」</div>
<div class="separator" style="clear: both; text-align: left;">
冬に手袋したままスマホを触れる!!寒くなるまでにアップデートしてほしいな。</div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<br />taku1974http://www.blogger.com/profile/17385313096440580362noreply@blogger.com0tag:blogger.com,1999:blog-4896421594300492646.post-59421692760778080852012-05-12T23:46:00.000+09:002012-05-13T10:58:49.096+09:00組込み用RTOS作成(μITRON風)3rot_rdqとdly_tskの実装<br />
<br />
<span style="color: #274e13;">/****************************************************/</span><br />
<span style="color: #274e13;">//<span class="Apple-tab-span" style="white-space: pre;"> </span>タスクの優先順位の回転</span><br />
<span style="color: #274e13;">//<span class="Apple-tab-span" style="white-space: pre;"> </span>次のタスクに制御権を渡す</span><br />
<span style="color: #274e13;">/****************************************************/</span><br />
<span style="color: #990000;">void</span> rot_rdq(<span style="color: #990000;">void</span>)<br />
{<br />
<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #990000;">int</span> i_oldtaskid;<br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>i_oldtaskid = iCurrentTaskID;<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// 現在の実行タスク番号を保存</span><br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>iCurrentTaskID++;<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// 次の実行タスク番号へ</span><br />
<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #990000;">if</span>(iCurrentTaskID >= TASK_MAX)<span class="Apple-tab-span" style="white-space: pre;"> </span>iCurrentTaskID = 0;<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// タスク数以上なら先頭タスクへ</span><br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>dispatch(&TCB[i_oldtaskid].iSP, TCB[iCurrentTaskID].iSP);<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// ディスパッチ</span><br />
}<br />
<br />
説明するほどではないが、現在実行中のタスクのスタックポインタ保存先アドレスと次に実行するタスクのスタックポインタ値をdispatchの引数として渡している。<br />
<br />
<span style="color: #274e13;">/****************************************************/</span><br />
<span style="color: #274e13;">//<span class="Apple-tab-span" style="white-space: pre;"> </span>自タスクの遅延</span><br />
<span style="color: #274e13;">//<span class="Apple-tab-span" style="white-space: pre;"> </span>int dly_time<span class="Apple-tab-span" style="white-space: pre;"> </span>遅延時間(0~)</span><br />
<span style="color: #274e13;">//<span class="Apple-tab-span" style="white-space: pre;"> </span>単位:TAU0チャンネル0のインターバル時間</span><br />
<span style="color: #274e13;">//<span class="Apple-tab-span" style="white-space: pre;"> </span>dly_time時間以上実行を一時停止する</span><br />
<span style="color: #274e13;">/****************************************************/</span><br />
<span style="color: #990000;">void</span> dly_tsk(<span style="color: #990000;">int</span> dly_time)<br />
{<br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>TCB[iCurrentTaskID].iWaitTime = dly_time + 1;<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// 待ち時間をセット</span><br />
<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #990000;">while</span>(TCB[iCurrentTaskID].iWaitTime){<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// 0になるまで待ち</span><br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>rot_rdq();<br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>}<br />
}<br />
<br />
こちらも説明するほどではないが、タスクコントロールブロックの待ち時間に遅延時間をセットしてその値が0になるまでrot_rdqして待っている。dly_timeに1を足しているのは、μITRONの仕様が「遅延時間以上待つこと」となっている為とdly_time=0の時でも1回はrot_rdqさせる為。<br />
<br />
TCB[iCurrentTaskID].iWaitTimeのカウントダウンはこんな感じ。<br />
<br />
<span style="color: #990000;">__interrupt void</span> MD_INTTM00(<span style="color: #990000;">void</span>)<br />
{<br />
<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">/* Start user code. Do not edit comment generated here */</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>/****************************************************/</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>//<span class="Apple-tab-span" style="white-space: pre;"> </span>タスクの待ち時間をカウントダウン</span><br />
<span style="color: #274e13;"><span class="Apple-tab-span" style="white-space: pre;"> </span>/****************************************************/</span><br />
<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #990000;">int</span> i;<br />
<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #990000;">for</span>(i = 0; i < TASK_MAX; i++){<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// 全タスクをループ</span><br />
<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #990000;">if</span>(TCB[i].iWaitTime > 0){ <span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// 待ち時間ありなら</span><br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>TCB[i].iWaitTime--;<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// カウントダウン</span><br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>}<br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>}<br />
<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">/* End user code. Do not edit comment generated here */</span><br />
}<br />
<div>
<br />
インターバルタイマ割り込み(TAU0のチャンネル0)を使用してタスク待ち時間をカウントダウンしている。<br />
<br /></div>
<div>
最後にmain関数でタスクの生成とRTOSのスタート<br />
<br /></div>
<div>
<div>
<span style="color: #990000;">void</span> main(<span style="color: #990000;">void</span>)</div>
<div>
{</div>
<div>
<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">/* Start user code. Do not edit comment generated here */</span></div>
<div>
<span class="Apple-tab-span" style="white-space: pre;"> </span>cre_tsk(0, tsk_task0);</div>
<div>
<span class="Apple-tab-span" style="white-space: pre;"> </span>cre_tsk(1, tsk_task1);</div>
<div>
<span class="Apple-tab-span" style="white-space: pre;"> </span>cre_tsk(2, tsk_task2);</div>
<div>
<span class="Apple-tab-span" style="white-space: pre;"> </span>sta_TmRtos();</div>
<div>
<span class="Apple-tab-span" style="white-space: pre;"> </span>while (1U)</div>
<div>
<span class="Apple-tab-span" style="white-space: pre;"> </span>{</div>
<div>
<span class="Apple-tab-span" style="white-space: pre;"> </span>;</div>
<div>
<span class="Apple-tab-span" style="white-space: pre;"> </span>}</div>
<div>
<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">/* End user code. Do not edit comment generated here */</span></div>
<div>
}</div>
</div>
<div>
<br /></div>
<div>
タスク関数はμITRONと同じで無限ループにして、こんな感じで定義<br />
<br /></div>
<div>
<div>
<span style="color: #990000;">void</span> tsk_task0(<span style="color: #990000;">void</span>)</div>
<div>
{</div>
<div>
<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #990000;">while</span>(1){</div>
<div>
<span class="Apple-tab-span" style="white-space: pre;"> </span>P8.0 ^= 1;<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// LED0反転</span></div>
<div>
<span class="Apple-tab-span" style="white-space: pre;"> </span>rot_rdq();</div>
<div>
<span class="Apple-tab-span" style="white-space: pre;"> </span>}</div>
<div>
}</div>
<div>
<br /></div>
<div>
<span style="color: #990000;">void</span> tsk_task1(<span style="color: #990000;">void</span>)</div>
<div>
{</div>
<div>
<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #990000;">while</span>(1){</div>
<div>
<span class="Apple-tab-span" style="white-space: pre;"> </span>P8.1 = 0;<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// LED1点灯</span></div>
<div>
<span class="Apple-tab-span" style="white-space: pre;"> </span>dly_tsk(200);<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// ms待ち</span></div>
<div>
<span class="Apple-tab-span" style="white-space: pre;"> </span>P8.1 = 1;<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// LED1消灯</span></div>
<div>
<span class="Apple-tab-span" style="white-space: pre;"> </span>dly_tsk(300);<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// ms待ち</span></div>
<div>
<span class="Apple-tab-span" style="white-space: pre;"> </span>}</div>
<div>
}</div>
<div>
<br /></div>
<div>
<span style="color: #990000;">void</span> tsk_task2(<span style="color: #990000;">void</span>)</div>
<div>
{</div>
<div>
<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #990000;">while</span>(1){</div>
<div>
<span class="Apple-tab-span" style="white-space: pre;"> </span>P8.2 ^= 1;<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// LED2反転</span></div>
<div>
<span class="Apple-tab-span" style="white-space: pre;"> </span>dly_tsk(500);<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// ms待ち</span></div>
<div>
<span class="Apple-tab-span" style="white-space: pre;"> </span>}</div>
<div>
}</div>
</div>
<div>
<br /></div>
<div>
シミュレータ実行画面はこんな感じ。</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgKVYCo2Ot7f1wRg2S6aWAItaket15pAHpQVXKozpZw0OeIfe9NQ7KmvWHHmw1ioNKULrz7pdESUq9If6FLHm4scilEmxyQunoF8makul7gY0aFDdja6VcTYBX8gfiauUYc1eQ6FwVjTCwS/s1600/TmRtosSim.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="284" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgKVYCo2Ot7f1wRg2S6aWAItaket15pAHpQVXKozpZw0OeIfe9NQ7KmvWHHmw1ioNKULrz7pdESUq9If6FLHm4scilEmxyQunoF8makul7gY0aFDdja6VcTYBX8gfiauUYc1eQ6FwVjTCwS/s320/TmRtosSim.JPG" width="320" /></a></div>
<div>
<br /></div>
<div>
今回作成した、なんちゃってRTOSのソースファイル<span style="color: #0c343d;">TMrtos.zip</span>は<a href="https://docs.google.com/open?id=0B2sM0we2c-6DNlFSU0V4d05feE0" target="_blank">ここ</a>からダウンロードできます。</div>
<div>
<br /></div>
<br />taku1974http://www.blogger.com/profile/17385313096440580362noreply@blogger.com0tag:blogger.com,1999:blog-4896421594300492646.post-65964317001833092442012-05-12T22:54:00.000+09:002012-05-13T10:38:54.216+09:00組込み用RTOS作成(μITRON風)2タスクのディスパッチは、出来そうなので次は初っ端のタスク呼び出しをどうするか?考えた。要は最初のディスパッチのときにタスク関数のアドレスがスタックに積まれていれば、そこに戻る(ジャンプする)のでタスクを生成した時点でスタックの中身をいじっておけば良い。<br />
こんな感じ。<br />
<br />
<span style="color: #274e13;">/****************************************************/</span><br />
<span style="color: #274e13;">//<span class="Apple-tab-span" style="white-space: pre;"> </span>タスクの生成</span><br />
<span style="color: #274e13;">//<span class="Apple-tab-span" style="white-space: pre;"> </span>int taskID<span class="Apple-tab-span" style="white-space: pre;"> </span>タスクID(0~TASK_MAX-1)</span><br />
<span style="color: #274e13;">//<span class="Apple-tab-span" style="white-space: pre;"> </span>void (*func_task)()<span class="Apple-tab-span" style="white-space: pre;"> </span>タスク関数のアドレス</span><br />
<span style="color: #274e13;">/****************************************************/</span><br />
<span style="color: #990000;">void</span> cre_tsk(<span style="color: #990000;">int</span> taskID, <span style="color: #990000;">void</span> (*func_task)())<br />
{<br />
<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// スタック初期化</span><span class="Apple-tab-span" style="white-space: pre;"> </span><br />
<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #990000;">char</span>* taskSP;<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// スタックポインタ</span><br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>taskSP = &cTaskStack[taskID][0];<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// スタック先頭アドレス</span><br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>taskSP += TASK_STACK_SIZE;<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// スタック領域の終端</span><br />
<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// 最初のdispatch用にタスクの先頭アドレスをスタックにセット</span><br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>*--taskSP = (char)((long)func_task >> 24);<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// PUSH 戻りアドレス</span><br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>*--taskSP = (char)((long)func_task >> 16);<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// PUSH 戻りアドレス</span><br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>*--taskSP = (char)((long)func_task >> 8);<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// PUSH 戻りアドレス</span><br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>*--taskSP = (char)((long)func_task);<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// PUSH 戻りアドレス</span><br />
<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// 最初のdispatch用にダミーのレジスタ値をスタックにセット</span><br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>*--taskSP = 0xa0;<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// PUSH A (dummy)</span><br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>*--taskSP = 0x0a;<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// PUSH X (dummy)</span><br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>*--taskSP = 0xbb;<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// PUSH B (dummy)</span><br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>*--taskSP = 0xcc;<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// PUSH C (dummy)</span><br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>*--taskSP = 0xdd;<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// PUSH D (dummy)</span><br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>*--taskSP = 0xee;<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// PUSH E (dummy)</span><br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>*--taskSP = 0x50;<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// PUSH H (dummy)</span><br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>*--taskSP = 0x05;<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// PUSH L (dummy)</span><br />
<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// TCB設定</span><br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>TCB[taskID].iSP = (int)taskSP;<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// スタックポインタ保存</span><br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>TCB[taskID].iWaitTime = 0;<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// 待ち時間設定</span><br />
}<br />
<br />
※ *--taskSP がわかりにくい表現だが、ポインタをデクリメントしてから値を代入している=スタックにPUSHする動作と同じ<br />
<br />
これで、最初のディスパッチの時にタスク関数へ戻る(ジャンプする)準備ができた。<br />
では、最初のディスパッチをしてみよう。<br />
こんな感じ。<br />
<br />
<span style="color: #274e13;">/****************************************************/</span><br />
<span style="color: #274e13;">//<span class="Apple-tab-span" style="white-space: pre;"> </span>リアルタイムOSのスタート</span><br />
<span style="color: #274e13;">//<span class="Apple-tab-span" style="white-space: pre;"> </span>全タスク生成後1度だけコールする。</span><br />
<span style="color: #274e13;">//<span class="Apple-tab-span" style="white-space: pre;"> </span>コール後はタスクを起動し戻ってこない</span><br />
<span style="color: #274e13;">/****************************************************/</span><br />
<span style="color: #990000;">void</span> sta_TmRtos(<span style="color: #990000;">void</span>)<br />
{<br />
<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #990000;">int</span> i_dummy_sp;<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// OS起動前のスタックポインタ値保存用</span><br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>TAU0_Channel0_Start();<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// TmRtosOS用タイマ起動</span><br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>iCurrentTaskID = 0;<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// TaskID = 0からスタート</span><br />
<span class="Apple-tab-span" style="white-space: pre;"> </span>dispatch(&i_dummy_sp, TCB[iCurrentTaskID].iSP);<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// ディスパッチ</span><br />
}<br />
<br />
※TAU0_Channel0_Start();は、これから作成するdly_tsk()で使用するインターバルタイマの起動。<br />
<br />
タスク関連の変数などの定義はこんな感じ。<br />
<br />
<br />
<span style="color: #990000;">#define</span><span class="Apple-tab-span" style="white-space: pre;"> </span>TASK_MAX<span class="Apple-tab-span" style="white-space: pre;"> </span>3<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// タスク数</span><br />
<span style="color: #990000;">#define</span><span class="Apple-tab-span" style="white-space: pre;"> </span>TASK_STACK_SIZE<span class="Apple-tab-span" style="white-space: pre;"> </span>128<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// タスクスタックサイズ</span><br />
<br />
<span style="color: #990000;">typedef struct</span> _TaskControlBlock{<br />
<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #990000;">int</span><span class="Apple-tab-span" style="white-space: pre;"> </span>iSP;<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// スタックポインタ保存用</span><br />
<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #990000;">int</span><span class="Apple-tab-span" style="white-space: pre;"> </span>iWaitTime;<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// 待ち時間</span><br />
}TaskControlBlock;<br />
<div>
<div>
<br /></div>
<div>
TaskControlBlock TCB[TASK_MAX];<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// タスクコントロールブロック</span></div>
<div>
<span style="color: #990000;">char<span class="Apple-tab-span" style="white-space: pre;"> </span></span>cTaskStack[TASK_MAX][TASK_STACK_SIZE];<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// タスク用スタック領域</span></div>
<div>
<span style="color: #990000;">int<span class="Apple-tab-span" style="white-space: pre;"> </span></span>iCurrentTaskID;<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #274e13;">// 実行中タスクID</span></div>
<div>
<br /></div>
<div>
<span style="color: #990000;">extern void</span> dispatch(<span style="color: #990000;">int</span>* pSaveSP, <span style="color: #990000;">int </span>iRestoreSP);</div>
</div>
<div>
<br /></div>
<br />
次はrot_rdqとdly_tskを実装しよう。<br />
(<a href="http://taku1974-digital.blogspot.jp/2012/05/rtositron3.html" target="_blank">続く</a>)<br />
<br />
<br />taku1974http://www.blogger.com/profile/17385313096440580362noreply@blogger.com0tag:blogger.com,1999:blog-4896421594300492646.post-3991046276150929402012-05-12T21:58:00.001+09:002012-05-13T10:32:19.196+09:00組込み用RTOS作成(μITRON風)1仕事で開発ツール<a href="http://japan.renesas.com/products/tools/ide/cubesuite/index.jsp" target="_blank">CubeSuite</a>(マイコン:78K0R)を使うことがあったけど、このCubeSuite、Freeでコードジェネレータが付いていてシミュレータまで付いている!!<br />
これは、趣味や組込みC言語の勉強に持って来いだ。<a href="http://www5.pf-x.net/~jr1wfhbbs/micom/header2.htm" target="_blank">ここ</a>とか見て勉強したらどうだろう。ただ対応したマイコンボードが秋月とかであんまり売ってないが、、、<br />
とりあえずなんか作ってみようと思ったが、ソフトを組むのにやっぱりOSがないと組みにくい。と言ってもゴリゴリに使うわけではないし、趣味で組むのにRTOSを購入なんて出来ない。なので自作の<span style="color: orange;">なんちゃってRTOS(μITRON風)</span>を作ってみた。<br />
機能はとりあえず、<span style="color: #274e13;">cre_tsk</span>と<span style="color: #274e13;">rot_rdq</span>と<span style="color: #274e13;">dly_tsk</span>だけ。<br />
タスクのディスパッチをどう実現するか?<br />
タスク毎にスタック領域を持っておき、ディスパッチの時にレジスタ値をPUSHして、スタックポインタの値はタスクコントロールブロックに保存する。次に実行するタクスのスタックポインタを保存先からリストアしてレジスタ値をPOPすれば、元の状態に戻るのでRET命令でリストアしたスタックポインタに積まれた戻りアドレスに従って戻っていく。<br />
こんな感じにしてみた。(dispatch.asm)<br />
<br />
<span style="color: #274e13;">;-----------------------------------------------------------</span><br />
<span style="color: #274e13;">; void dispatch(int* pSaveSP, int iRestoreSP)</span><br />
<span style="color: #274e13;">; AX = pSaveSPのアドレス</span><br />
<span style="color: #274e13;">; SP+0 = 戻りアドレス(LL)</span><br />
<span style="color: #274e13;">; SP+1 = 戻りアドレス(LH)</span><br />
<span style="color: #274e13;">; SP+2 = 戻りアドレス(HL)</span><br />
<span style="color: #274e13;">; SP+3 = 戻りアドレス(HH)</span><br />
<span style="color: #274e13;">; SP+4 = iRestoreSPの値</span><br />
<span style="color: #274e13;">;-----------------------------------------------------------</span><br />
<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #990000;">PUBLIC</span><span class="Apple-tab-span" style="white-space: pre;"> </span>_dispatch<br />
<br />
@@LCODEL<span class="Apple-tab-span" style="white-space: pre;"> </span>CSEG<br />
_dispatch:<br />
<span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #990000;">PUSH<span class="Apple-tab-span" style="white-space: pre;"> </span>AX</span><br />
<span style="color: #990000;"><span class="Apple-tab-span" style="white-space: pre;"> </span>PUSH<span class="Apple-tab-span" style="white-space: pre;"> </span>BC</span><br />
<span style="color: #990000;"><span class="Apple-tab-span" style="white-space: pre;"> </span>PUSH<span class="Apple-tab-span" style="white-space: pre;"> </span>DE</span><br />
<span style="color: #990000;"><span class="Apple-tab-span" style="white-space: pre;"> </span>PUSH<span class="Apple-tab-span" style="white-space: pre;"> </span>HL</span><br />
<span class="Apple-tab-span" style="color: #990000; white-space: pre;"> </span><span style="color: #990000;">MOVW</span><span class="Apple-tab-span" style="color: #990000; white-space: pre;"> </span><span style="color: #990000;">DE,AX</span><span class="Apple-tab-span" style="color: #990000; white-space: pre;"> </span><span style="color: #274e13;">;pSaveSPのアドレスをDEに保存</span><br />
<span class="Apple-tab-span" style="color: #990000; white-space: pre;"> </span><span style="color: #990000;">MOVW</span><span class="Apple-tab-span" style="color: #990000; white-space: pre;"> </span><span style="color: #990000;">AX,SP</span><span class="Apple-tab-span" style="color: #990000; white-space: pre;"> </span><span style="color: #274e13;">;SP値取り出し</span><br />
<span class="Apple-tab-span" style="color: #990000; white-space: pre;"> </span><span style="color: #990000;">MOVW</span><span class="Apple-tab-span" style="color: #990000; white-space: pre;"> </span><span style="color: #990000;">[DE],AX</span><span class="Apple-tab-span" style="color: #990000; white-space: pre;"> </span><span style="color: #274e13;">;*pSaveSP に SP値を保存</span><br />
<span class="Apple-tab-span" style="color: #990000; white-space: pre;"> </span><span style="color: #990000;">MOVW</span><span class="Apple-tab-span" style="color: #990000; white-space: pre;"> </span><span style="color: #990000;">HL,AX</span><span class="Apple-tab-span" style="color: #990000; white-space: pre;"> </span><span style="color: #274e13;">;SPをHLに保存</span><br />
<span class="Apple-tab-span" style="color: #990000; white-space: pre;"> </span><span style="color: #990000;">MOVW</span><span class="Apple-tab-span" style="color: #990000; white-space: pre;"> </span><span style="color: #990000;">AX,[HL+4+8]</span><span class="Apple-tab-span" style="color: #990000; white-space: pre;"> </span><span style="color: #274e13;">;iRestoreSP値取り出し</span><br />
<span class="Apple-tab-span" style="color: #990000; white-space: pre;"> </span><span style="color: #990000;">MOVW</span><span class="Apple-tab-span" style="color: #990000; white-space: pre;"> </span><span style="color: #990000;">SP,AX</span><span class="Apple-tab-span" style="color: #990000; white-space: pre;"> </span><span style="color: #274e13;">;SPにiRestoreSPをセット </span><br />
<span style="color: #990000;"><span class="Apple-tab-span" style="white-space: pre;"> </span>POP<span class="Apple-tab-span" style="white-space: pre;"> </span>HL</span><br />
<span style="color: #990000;"><span class="Apple-tab-span" style="white-space: pre;"> </span>POP<span class="Apple-tab-span" style="white-space: pre;"> </span>DE</span><br />
<span style="color: #990000;"><span class="Apple-tab-span" style="white-space: pre;"> </span>POP<span class="Apple-tab-span" style="white-space: pre;"> </span>BC</span><br />
<span style="color: #990000;"><span class="Apple-tab-span" style="white-space: pre;"> </span>POP<span class="Apple-tab-span" style="white-space: pre;"> </span>AX</span><br />
<span style="color: #990000;"><span class="Apple-tab-span" style="white-space: pre;"> </span>RET</span><br />
<span style="color: #990000;"><br /></span><br />
<span style="color: #990000;"><span class="Apple-tab-span" style="white-space: pre;"> </span>END</span><br />
<div>
<br /></div>
<div>
これでタスクの切り替えが可能になった。後はタスクの初っ端をどうやって呼び出すか?</div>
<div>
とりあえず、アセンブラが必要そうなのはここまでなので後はすべてC言語で書くとする。</div>
<div>
(<a href="http://taku1974-digital.blogspot.jp/2012/05/rtositron2.html" target="_blank">続く</a>)</div>taku1974http://www.blogger.com/profile/17385313096440580362noreply@blogger.com0tag:blogger.com,1999:blog-4896421594300492646.post-47382969202347621142012-04-29T11:25:00.000+09:002012-04-29T20:01:53.184+09:00ケータイ・スマホ2台持ち以前、「<a href="http://taku1974-digital.blogspot.jp/2011/02/blog-post.html" target="_blank">スマホ半額導入記</a>」で書いたが、現在でもケータイとスマホの2台持ちをしている。理由はそのほうが安いから。。。<br />
スマホの方は、<a href="http://www.bmobile.ne.jp/sim/" target="_blank">b-mobile(U300)</a>のSIMを使って、<br />
ケータイの基本使用料1200円ぐらい+ b-mobile 1ヶ月あたり2300円=3500円。<br />
<div>
今回、b-mobile(U300)の期限が切れた&やっぱり300kbps通信では遅いと感じるので</div>
<div>
<a href="http://www.so-net.ne.jp/access/mobile/3g/index.html" target="_blank">So-netモバイル3G</a>に乗り換えることにした。</div>
<div>
キャンペーン中で2年縛りながら、1年間は2,455円+210円(モバイルコース)、その後も2,770円+210円(モバイルコース)と3,000円以下で14Mbpsの3G環境が手に入る。</div>
<div>
ついでにほとんど使用しなくなったi-modeの契約を解除して-300円。</div>
<div>
結果、</div>
<div>
ケータイの基本使用料900円ぐらい+ So-net2,665円=3,565円!</div>
<div>
キャンペーン終了後で、</div>
<div>
<div>
ケータイの基本使用料900円ぐらい+ So-net2,980円=3,880円!</div>
やっぱり安い2台持ち。。。<br />
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjqP0w0t2lcPHVAMmLoidaT1EpMpO4NHTQ90IDo_DHlLz9VlkSHAuU_3UPq409eSa9Dgky7ATlRaNuEMkoQPJ_MvHhRMSCAhb7uw4PGfmRP9Haon6P5iox9pdg7em1bA7o6HJH60UMnEH0f/s1600/P1000838.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="240" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjqP0w0t2lcPHVAMmLoidaT1EpMpO4NHTQ90IDo_DHlLz9VlkSHAuU_3UPq409eSa9Dgky7ATlRaNuEMkoQPJ_MvHhRMSCAhb7uw4PGfmRP9Haon6P5iox9pdg7em1bA7o6HJH60UMnEH0f/s320/P1000838.JPG" width="320" /></a></div>
<div>
</div>taku1974http://www.blogger.com/profile/17385313096440580362noreply@blogger.com0tag:blogger.com,1999:blog-4896421594300492646.post-89521042281182327872012-02-19T12:12:00.000+09:002012-02-19T12:12:39.207+09:00blog記事をfacebookに自動投稿する「<a href="http://d.hatena.ne.jp/AR30/20110725/1311600214" target="_blank">ここ</a>」を参考に設定。<br />
facebookの検索欄に「rss graffiti」と入力してRSS Graffitiアプリをクリック。<br />
「Click here to authorize RSS Graffiti」をクリックして、許可したら<div>
「Add feed」をクリックして、feed URLを入力。</div>
<div>
Bloggerの場合「ブログのURL」+「/rss.xml」を入力。</div>
うまくPreview表示できたら「save」で完了。taku1974http://www.blogger.com/profile/17385313096440580362noreply@blogger.com0tag:blogger.com,1999:blog-4896421594300492646.post-35907877700403226492012-02-19T11:50:00.000+09:002012-02-19T11:50:42.468+09:00Twitterのつぶやきをfacebookへ自動投稿する<a href="http://nanapi.jp/2755/" target="_blank">ここ</a>を参考にして設定。<br />
facebookの検索欄に「twitter」と入力してTwitterアプリで設定するだけ。taku1974http://www.blogger.com/profile/17385313096440580362noreply@blogger.com0tag:blogger.com,1999:blog-4896421594300492646.post-58023986832619009222012-01-18T23:08:00.003+09:002012-05-15T00:10:29.681+09:00Lenovo G570 購入最近、ディスクトップPCの調子が悪いし、寒いのでコタツでぬくぬくネットサーフィンしたいのでノートPCを購入。<br />
<br />
Lenovo G570 433497J<br />
CPU:Core i5 2430M<br />
HDD:320G<br />
MEMORY:2G<br />
モニタ:15.6インチ(1366x768)<br />
<br />
で、なんと38,456円。安くなったものだ!<br />
メモリを8Gに交換。これが3,480円<br />
合計:41,936円<br />
<br />
日本語キーボードなのだが、メーカサイトや量販店サイトには英語キーボードの写真をそのまま使っている事が多く購入前に少し不安だったのでアップしておきます。<br />
購入を検討中の方のお役にたてれば幸いです。<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjOC-BrfiBJ6vK4oMraH80GMC4XcIhOgMKeg5hrsNSzNdokSZYJz_yuRXVYz2wgoeBXyi8yEhyphenhyphenIVRZcu-BBRnTZC6hQf29uuDu3a2xPiGjOmG_YGI6eLgnfV46P7HqW1RNi8w0U2ivbtxr6/s1600/o6.jpeg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="240" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjOC-BrfiBJ6vK4oMraH80GMC4XcIhOgMKeg5hrsNSzNdokSZYJz_yuRXVYz2wgoeBXyi8yEhyphenhyphenIVRZcu-BBRnTZC6hQf29uuDu3a2xPiGjOmG_YGI6eLgnfV46P7HqW1RNi8w0U2ivbtxr6/s320/o6.jpeg" width="320" /></a></div>
<br />taku1974http://www.blogger.com/profile/17385313096440580362noreply@blogger.com0tag:blogger.com,1999:blog-4896421594300492646.post-65757438268087150602011-10-28T09:32:00.000+09:002011-10-28T09:32:05.467+09:00twtr2src⇛twilog乗り換え「twtr2src」の自動投稿機能を使って「taku1974のTweet日記」を作成していたが、自動投稿が全然配信されなくなって来たので、<br />
<a href="http://twilog.org/"><img border="0" height="20" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgAm6YC4RKofa1wKtGTqeVy_XhIk7wUcEH4b9XQbsAF2_nTA1z9ojY490TTRuO43TR8EejJ1rPb1151TgUCp2ehp9Ha2GPsg4Cwf92dFt0tC4Kd2ZNuaU6icZFhoXKiDPMmkC78YnSM5KLY/s200/banner-t.gif" width="63" /></a>に乗り換え。<br />
これに伴い、「taku1974のTweet日記」は削除、、、twilogをそのまま使い「<a href="http://twilog.org/taku1974_guger">taku1974(@taku1974_guger)のtwilog</a>」として公開することに。<br />
twilogの設定は簡単で、「twilog」にアクセスしてtwitterのアカウントで新規登録・ログインするだけ。<br />
後は、管理画面でツイートの並び順を「古→新」(朝→夜)に変更。<br />
「taku1974のTweet日記」では、リプライを表示していなかったけど「twilog」では表示されてしまう。<br />
「Replyを除く」をデフォルトに設定できればいいのだが、、、<br />
とりあえず、リンクを貼るときには「Replyを除く」オプションを付けて「<a href="http://twilog.org/taku1974_guger/norep">http://twilog.org/taku1974_guger/norep</a>」をリンク先とすればよさそう。<br />
<br />
<br />
<br />taku1974http://www.blogger.com/profile/17385313096440580362noreply@blogger.com0tag:blogger.com,1999:blog-4896421594300492646.post-14627272080892960232011-05-16T23:15:00.001+09:002011-05-16T23:17:47.968+09:00GmailのContentProviderから添付ファイル取得GmailのContentProviderから添付ファイルを取得しようとしたが、イマイチうまくいかない。<br />
とりあえず、画像の添付ファイルは取得できたのでその方法。<br />
getAttachmentUriの第4,5引数にGmail.AttachmentRendition.SIMPLE, falseと指定すると画像の添付ファイル(jpegやgif)は取得できたが、エクセルファイルやPDFファイルは取得できない。<br />
誰か分かる人教えてください、、、<br />
<pre name="code" class="java">MessageCursor mc = gmail.getMessageCursorForMessageId(account, messageId);
if(mc.next()){
ArrayList<Attachment> attInfos = mc.getAttachmentInfos();
if(!attInfos.isEmpty()){ // 添付があるなら
for(Iterator<Attachment> ir = attInfos.iterator(); ir.hasNext();){
Attachment attment = ir.next();
Log.d(LOGTAG, "attment=" + attment);
Uri uri = Gmail.getAttachmentUri(account, messageId, attment,Gmail.AttachmentRendition.SIMPLE, false);
try {
// 画像を読み込む
InputStream in = getContentResolver().openInputStream(uri);
BitmapFactory.Options sBitmapOptions = new BitmapFactory.Options();
Bitmap bm = BitmapFactory.decodeStream(in, null, sBitmapOptions);
Log.d(LOGTAG, "Bitmap size=" + bm.getWidth() + " x " + bm.getHeight()); // 画像サイズ
int dispWidth = this.getWindowManager().getDefaultDisplay().getWidth(); // 画面サイズ(幅)
if(bm.getWidth()> dispWidth){ // 画面幅より大きい時、縮小する
bm = Bitmap.createScaledBitmap(bm, dispWidth, bm.getHeight()*dispWidth/bm.getWidth(), false);
}
// 画像をファイルに書き込む
String sdPash = Environment.getExternalStorageDirectory().getPath(); // SDカードのパス
File sdDir = new File(sdPash + "/android/data/" + getPackageName() + "/cache/");
sdDir.mkdirs(); //書き込みディレクトリ作成
String fname = sdDir.getPath() + "/" + mc.getMessageId() + "_" + attment.name; // 書き込みファイル名
Log.d(LOGTAG, "fname=" + fname);
FileOutputStream out = new FileOutputStream(fname);
bm.compress(CompressFormat.JPEG, 100, out);
out.flush();
out.close();
} catch (FileNotFoundException e) { // InputStreamエラー処理
Log.d(LOGTAG, "InputStream ERR! " + e.getMessage());
} catch (IOException e) { // FileOutputStreamエラー処理
Log.d(LOGTAG, "FileOutputStream ERR! " + e.getMessage());
}
}
}
}
</pre>taku1974http://www.blogger.com/profile/17385313096440580362noreply@blogger.com0