tag:blogger.com,1999:blog-10804181248159308912024-03-05T23:57:28.808+09:00メモ的な何かひつじhttp://www.blogger.com/profile/03290674908777326201noreply@blogger.comBlogger20125tag:blogger.com,1999:blog-1080418124815930891.post-17108715402201504822018-09-08T00:42:00.002+09:002018-09-17T18:57:00.652+09:00停電時のためのアレコレ<br />
今のうちにメモメモ( ..)φ<br />
<br />
<ul><li>最大24時間(基地局の活動限界時間)で携帯、スマホは通信不可</li>
<li>ラジオ、ワンセグが基本的な情報源(携帯、スマホは上記の通り)</li>
<li>でもやっぱり最新情報はネットのほうが取れる(テレビ・ラジオ等は速報以外は遅れてやってくる) </li>
<li>車持ちはインバーターあるといい(できるだけ容量の大きいやつ)<br />
各機器の充電時、使用時の消費電力量を測れるときは測っておく</li>
<li>モバイルバッテリーももちろんあるといい</li>
<li>古いガラケーはUSBから給電できるよう変換アダプターの用意を</li>
<li>公衆電話が無料解放される場合があるので場所を覚えておくといいかも</li>
<li>ネットの情報は、公的、公式のみを信用し、その他(知り合い以外)は話半分</li>
<li>現金をある程度持っておこう(電子マネーやクレジットカードは使えないと思っておく)</li>
<li>電池は極力光源用に確保 </li>
</ul><br />
<ul></ul><ul><li>冷蔵庫は、冷蔵室は3時間くらい?冷凍室は6時間くらいが限度</li>
<li>チルド、生もの、アイスは優先的に食べる(残してもほぼゴミになるので)</li>
<li>保冷バッグ、クーラーボックス、保冷剤があるといい </li>
</ul><br />
<ul></ul><ul><li>(テレビで見た情報)スマホなどのLEDライトは光が強い割に拡散しないので、ビニール袋などをかぶせるとランタンっぽくなる</li>
<li>ろうそく意外と明るい(ただし火事に十分注意!) </li>
<li>通常、電気で動くものの手動操作を覚えておこう(鍵とかトイレとか)</li>
<li>いくらか動画を端末に保存(ネットにつながなくても見れる状態に)しておく<br />
主に子供用</li>
</ul><br />
水、ガスが不自由なく使えたのが幸いだった。<br />
あと、冬じゃなくてホントよかった。<br />
<br />
他、思いついたら追記しておこう。<br />
<br />
各機器のワット数をワットチェッカーで測ってみたのでまとめ。<br />
正確さはなく、大雑把な目安です。<br />
<br />
<br />
<table><thead>
<tr><th>機器</th><th>消費電力</th><th>備考</th></tr>
</thead> <tbody>
<tr><td>A4 ノートPC</td><td>MAX 25W(起動時), 11W(画面表示無操作)</td><td></td></tr>
<tr><td>B5 ノートPC</td><td>MAX 50W(起動時), 20W(画面表示無操作)</td><td>バッテリー死んでるので充電時は不明…</td></tr>
<tr><td>Android スマホ SH-M05</td><td>MAX 8W(瞬間), 6W(充電時)</td><td></td></tr>
<tr><td>Android スマホ SH90B</td><td>3.6W(充電時)</td><td></td></tr>
<tr><td>iPhone 6</td><td>6.5W</td><td>操作中も画面OFFもほぼ変わらず</td></tr>
<tr><td>iPad Air 2(Wi-fi)</td><td>11W(画面OFF), 12W(画面ON)</td><td></td></tr>
<tr><td>携帯電話 CA004</td><td>2.5W(画面表示時), 1.5W(画面閉じ時)</td><td></td></tr>
<tr><td>モバイルバッテリー(sony)</td><td>1.5W(充電時)</td><td></td></tr>
<tr><td>モバイルバッテリー(maxell)</td><td>5W(充電時)</td><td></td></tr>
<tr><td>Nintendo Switch</td><td>MAX 8W(プレイ中), 5W(画面ON, 待機), 3~5W(画面OFF)</td><td></td></tr>
<tr><td>充電器 4本充電</td><td>4.5W</td><td>エネループ</td></tr>
<tr><td>無印良品 卓上USB扇風機</td><td>1.5W(弱), 2W(強)</td><td></td></tr>
<tr><td>テプラ</td><td>1.5W</td><td>おまけ</td></tr>
</tbody></table>ひつじhttp://www.blogger.com/profile/03290674908777326201noreply@blogger.com0tag:blogger.com,1999:blog-1080418124815930891.post-58338421507993308692015-08-29T18:09:00.003+09:002015-08-29T19:11:37.301+09:00ThinkPad Edge E220s に Windows 10 をクリーンインストールした時のあれこれ購入時 Windows7 だった ThinkPad Edge E220s (以下、E220s) は 優待購入により Windows8 になり、今回無償アップグレードで Windows 10 と相成りましたが、そこで引っかかったことをご紹介。<br />
<br />
<span style="color: orange;"><今日のお題></span><br />
「新しいシステムパーティションを作成できなかったか、既存の…」というエラーが出て、USBメモリからインストールできない!<br />
<br />
♯ しばらく前作業のお話が続きますので、本題以外興味がない場合は飛ばしてください<br />
<br />
もう少し様子を見てからにしようかと思っていたけど、ログインすると毎度右下にあれが出てくるのが邪魔なのと、ちょっと時間ができたのでインストールしてみることに。<br />
<br />
インストール方法としては普通にやれば当然アップグレードだけど、容量が無駄になったり設定などでごみが残ったりもするのでできればクリーンインストールをしてみたいと思い軽く検索すると、<br />
<br />
<ol>
<li>いったんアップグレード</li>
<li>Windows 10 のプロダクトキーを確認</li>
<li>クリーンインストール時取得したプロダクトキーを使用してインストール</li>
</ol>
<br />
という方法でクリーンインストールができるようなのでその方法をとることにしました。<br />
参考: <a href="http://kiritsume.com/2015/08/01/how-to-clean-install-free-upgraded-windows10/">http://kiritsume.com/2015/08/01/how-to-clean-install-free-upgraded-windows10/</a><br />
<br />
インストールメディアは 以下のページから入手可能。<br />
<a href="http://www.microsoft.com/ja-jp/software-download/windows10">http://www.microsoft.com/ja-jp/software-download/windows10</a><br />
<br />
ツールをインストール後、ISO 形式か USBメモリかを選択できるが、E220s は CD/DVD ドライブがないので当然 USBメモリを選択して作成(すみません、ブログを書くつもりはなかったのでSSなどはありませんm(_ _)m )。<br />
<br />
手順に従ってアップグレードを実施。インストール作業を始めてから2~3時間で Windows10 が起動。やはり時間がかかりますね。<br />
インストール前の準備段階のソフトウェアの構成確認とかに時間がかかってました。<br />
<br />
ようやく準備の第1弾となるアップグレードが終了したので、早速プロダクトキーを確認して、早々に終了。<br />
USBメモリから起動してインストール開始!<br />
<br />
<span style="color: orange;"><本題です></span><br />
が、ここで問題発生。<br />
インストールするパーティションを選択するところで<br />
<br />
<b><span style="color: orange;">「新しいシステムパーティションを作成できなかったか、既存のシステムパーティションが見つかりませんでした。」</span></b><br />
<br />
というメッセージが表示され、先に進めず。<br />
結論を書くと、インストール予定の内蔵 HDD のパーティションにインストールデータをコピーして、内蔵 HDD でブート→インストール、という作業をすることでインストールできました。<br />
<br />
実は Windows 8 をインストールする際も同様の問題が発生したのですが、最終的にはネットワークインストールをして成功しました。<br />
<br />
<span style="color: orange;"><以下、顛末></span><br />
<br />
今回はとりあえずメッセージで検索して以下のページを確認(こういう場合、PCが2台もしくはスマホなどがないときついですね)。<br />
<a href="https://support.apple.com/ja-jp/HT203738">https://support.apple.com/ja-jp/HT203738</a><br />
<br />
USBストレージが原因ということですが、USBメモリからインストールしようとしているためこれをどうにか回避せねばなりません。<br />
今回もまたネットワークインストールか、と思いましたが、準備が面倒だったりするのでUSBメモリでのインストールを目指すことに。<br />
<br />
まず最初に、E220s にはメモリカードリーダーなども内蔵しているためそれらが影響していないかと BIOS で不要なデバイスはすべて Disable にしてみたが効果なし。<br />
<br />
次に内蔵 HDD にデータをコピーし、USB メモリで起動後、HDD のセットアップファイルから起動してインストールを試みるが失敗(この時点でほかにもいろいろやっていたので数時間経過)。<br />
<br />
やはりUSB メモリから起動しているのがすべての原因のようで、それを回避する以外方法がなくなったので、以下の方法をとりました。<br />
<br />
<ol>
<li>フォーマットしたインストール予定のパーティションを diskpart で Active に</li>
<li>USB メモリのデータをすべてコピー</li>
<li>USB メモリを差さずに電源ON</li>
<li>内蔵 HDD にコピーしたインストールメディアから起動</li>
</ol>
<br />
あとは普通にインストール処理を進めていくと、件のパーティション選択のところでも何の問題もなくすんなり通り、普通にイントールが完了、となりました。<br />
<br />
ちなみに、上記の作業の前段階ですでに元の OS はフォーマットしてなくなっていたので、どうやってコピーやら diskpart やらをやったかというと、USBメモリから起動後、「インストール」が出ている画面の左下にある「コンピュータを修復」を選択し、「トラブルシューティング」→「コマンドプロンプト」<br />
を選択することでコマンドプロンプトが起動できるので、その状態で xcopy や diskpart の作業をしました。<br />
<br />
diskpart での作業は単純で、<br />
<ol>
<li>select で disk → partition の順でインストール先のパーティションを選択</li>
<li>active で選択したパーティションをアクティブにする</li>
</ol>
<div>
という感じです。</div>
<br />
OS のインストールが完了した後はずいぶん楽になっていました。<br />
もちろん最初はドライバが何も入っていないので、ダウンロードするためにネットにつないだら(おそらく Windows Update 経由だと思いますが)あれよあれよという間に自動的にほとんどのドライバがインストールされました。<br />
<br />
一つだけ「!基本システムデバイス」というのが残ったので調べてみると、メモリーカードリーダー・ライターのようなので、ドライバをダウンロードしてインストール。<br />
結局この1つだけしか自分でインストールしたドライバはありませんでした。<br />
<br />
OS のクリーンインストールは Windows 98 SE が最初でしたが、そのころと比べたら本当に何もしないで使えるようになるので、ほんと楽です(ネット環境の有無などはあるにせよ)。<br />
<br />
以上が今回のインストール時の出来事になります。ほかの方の参考になれば幸いです。<br />
<br />
<おまけ><br />
Windows 10 の使用感ですが、個人的には Windows 8.1 update よりも使いやすい印象です。<br />
スタートメニューも悪くないです (元々 claunch を使っていてWin7のスタートもWin8のスタートもサブ的な扱いということもありますが、私にはちょうどいい仕様になっています)<br />
仮想デスクトップもやはり便利。<br />
はやいとこ、エクスプローラーのタブ化をしてほしいところです。<br />
<br />
<おまけ2><br />コマンドプロンプトが強化されています。<br /> <a href="https://technet.microsoft.com/en-us/library/mt427362.aspx?f=255&MSPPError=-2147217396">https://technet.microsoft.com/en-us/library/mt427362.aspx?f=255&MSPPError=-2147217396</a><br />Ctrl+CやCtrl+Vが使えたり、選択が矩形から行になっていたり。<br />cmdのプロパティで「従来のコンソールを使う」をオフ (デフォルトはオン) にすると使えるようになります。<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgW9WxQr26cjhK0wwPYdepTaDNKVob7G1DEkti7P5to-G4tW4SYbbuVnB0ugRqoyAfWUSbNVvhIFPDrOO2K1bcZk1SR4gAWxBXkU4r_wJRt218NRxx1Oc8-7A4iTpM5VKrjTTspno46H7k/s1600/cmd%25E3%2581%25AE%25E3%2583%2597%25E3%2583%25AD%25E3%2583%2591%25E3%2583%2586%25E3%2582%25A3.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgW9WxQr26cjhK0wwPYdepTaDNKVob7G1DEkti7P5to-G4tW4SYbbuVnB0ugRqoyAfWUSbNVvhIFPDrOO2K1bcZk1SR4gAWxBXkU4r_wJRt218NRxx1Oc8-7A4iTpM5VKrjTTspno46H7k/s320/cmd%25E3%2581%25AE%25E3%2583%2597%25E3%2583%25AD%25E3%2583%2591%25E3%2583%2586%25E3%2582%25A3.png" width="271" /></a></div>
ひつじhttp://www.blogger.com/profile/03290674908777326201noreply@blogger.com0tag:blogger.com,1999:blog-1080418124815930891.post-29041083427591747572013-10-22T00:15:00.000+09:002015-08-29T22:38:25.659+09:00VitualPCやVirtualBoxでホストマシンとの時刻同期を解除するVirtualPCやらVirtualBox上で動作している仮想マシンは基本的にはホストマシンの時刻と同期をとっているのだけれど、それを解除する方法。<br />
<br />
まずはVirtualPCから。<br />
なお、ここでいうVirtualPCはWindows7に入っているWindows Virtual PCです。 <br />
<br />
こちらは簡単で、設定ファイルをいじるだけです。<br />
.vhdファイルなどが保存されているフォルダを開くと、一緒に.vmcファイルが格納されています。<br />
これをテキストエディタで開き、以下の箇所を変更します。<br />
仮想マシンはシャットダウンした状態で行ってください。<br />
<br />
<pre class="linux"><host_time_sync>
<enabled type="boolean"><span style="color: lime;">true</span></enabled></pre>
<div style="text-align: center;">
↓</div>
<pre class="linux"> <enabled type="boolean"><span style="color: lime;">false</span></enabled></pre>
<br />
これで同期が解除されます。<br />
<br />
次にVirtualBox。<br />
簡単に言ってしまうと<a href="http://www.virtualbox.org/manual/ch09.html#disabletimesync" target="_blank">こちら</a>に書かれているのですが、以下のコマンドをコマンドプロンプトで実行すると時刻同期が停止します。<br />
<pre class="linux">VBoxManage setextradata "<span style="color: lime;">VM name</span>" "VBoxInternal/Devices/VMMDev/0/Config/GetHostTimeDisabled" 1</pre>
VBoxManageはexeなので、VirtualBoxのインストールフォルダをカレントにして実行するか、フルパスでVBoxManage.exeを指定して実行します。<br />
「<span style="color: lime;"><tt>VM name</tt></span>」は仮想マシンにつけた名前をそのまま入力します。<br />
時刻の同期を再開する場合、最後の「<span style="color: lime;">1</span>」を「<span style="color: lime;">0</span>」に変更して実行すれば、同期が開始されます。 <br />
仮想マシン起動中でも実行できますが、再起動するまで有効になりませんのでご注意を。ひつじhttp://www.blogger.com/profile/03290674908777326201noreply@blogger.com0tag:blogger.com,1999:blog-1080418124815930891.post-39271297555928680592013-05-14T00:21:00.002+09:002013-05-14T00:25:58.129+09:00Always On TopができてWebサイトが見れるアプリ(もどき)作った先週の土曜日、<a href="http://cod.ms/Pages/default.aspx" target="_blank">Community Open Day 2013</a>があり、北海道会場である<a href="http://clr-h.jp/" target="_blank">CLR/H</a>でも<a href="http://www.ustream.tv/channel/clr-h1" target="_blank">Ustream配信している</a>ので、途中からだけどみてみる事に。<br />
<br />
で、見ながらも他の作業をしていたわけですが、ウィンドウを操作するたび画面が隠れてしまう。<br />
<br />
動画プレイヤーで再生できないものかと、SMPlayer、WMP、VLC Playerなんかで試してみたけど、再生できなさそう。<br />
<br />
そこで「そういや.Net FrameworkでWebページ見れるようにするコントロールがあったような」と思い、それならばと作ってみました。<br />
<br />
<a href="https://webpageviewer.codeplex.com/" target="_blank">Web Page Viewer(CodePlex)</a><br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiKmoHWIhUqIJMLVPhyN2O9SLGDFrnSLGPrvsnTEEDDVmCJwMuxVNBH6wR6fbmCJUfUm6VOSAOqKe-dQhMnPyJISV_e4NlmiUkGvY1Dx0qZW5duK7Uhwf-8cheJx8lwwsq-bCSv8ZnL3zM/s1600/webpageviewer_ss2.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="277" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiKmoHWIhUqIJMLVPhyN2O9SLGDFrnSLGPrvsnTEEDDVmCJwMuxVNBH6wR6fbmCJUfUm6VOSAOqKe-dQhMnPyJISV_e4NlmiUkGvY1Dx0qZW5duK7Uhwf-8cheJx8lwwsq-bCSv8ZnL3zM/s320/webpageviewer_ss2.png" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">サンプル画像</td></tr>
</tbody></table>
<br />
ついでにCodePlexも使ってみたいと思っていたので、アカウント作成&アップも試してみた。<br />
ソースコードはGitで。Clone用URLにローカルからプッシュ。<br />
<br />
今回作ったアプリもどきの要件は<br />
<br />
<ul>
<li>Webが見れる</li>
<li>「常に手前に表示」ができる</li>
</ul>
以上!シンプルです。<br />
<br />
作り方も簡単。<br />
WPFアプリケーションを作って、Webbrowserコントロールを配置して、「TopMost」をOn/Offできるようにして、URL入力欄と適用するためのボタンを作って終わり。<br />
<br />
表示領域が伸び縮みするようにしたり、伸び縮みの際、画面下部に配置したコントロールがおかしくならないように微調整はしたものの、こんなところです。 <br />
<br />
サンプル画像では、埋め込みコードから再生用URLだけをコピーして、そのURLだけを貼り付けて開いています。<br />
再生ページを開いたら自動的に動画部分だけを表示する、なんて機能はありません。 <br />
<br />
単純にWebbrowserでWebサイトを開いているだけですので、YouTubeやニコニコ動画なんかでも使えるので、意外と使い道あるかも?(YouTubeは見づらかったですが^_^; )。<br />
<br />
ちなみに、URLは「http://」が無くても自動付加します。たいていコピペなので、あまり必要のない機能ですが。<br />
あと、URL入力後、そのままEnterキーでも「Open」できます。ひつじhttp://www.blogger.com/profile/03290674908777326201noreply@blogger.com0tag:blogger.com,1999:blog-1080418124815930891.post-53623055785616623332012-07-08T12:51:00.001+09:002012-07-11T20:07:10.877+09:00PlayStation Stuite Studioが起動しなかった時の対処のメモPlayStation Suite Studio(以下、PSS Studio)に興味を持ったので、早速インストール(入手は<a href="http://www.playstation.com/psm/index_j.html" target="_blank">こちら</a>)してみたら、起動時に強制終了を食らって起動しなかったので、その時の対処をメモ。<br />
<br />
とりあえず、「PlayStation Suite Studio 起動しない」や「pss suite 起動しない」でググったら、「libgtk-win32-2.0.0.dll」が影響しているらしいというのがわかった。<br />
<br />
そこでコマンドプロンプトで「where libgtk-win32-2.0.0.dll」をしたら2つヒット。<br />
1つは、PSS Studioをインストールした際に一緒にインストールされるGTK#。<br />
もう一つは、別にインストールしていたGIMP。<br />
<br />
そもそもGTKはThe GIMP ToolKitらしいので、当然といえば当然なのかもしれません。<br />
<br />
そこで、試しにGIMPのbinフォルダに入っている「libgtk-win32-2.0.0.dll」をリネームしたらPSS Studioが起動。GIMPの方はエラーが出るけど一応起動。<br />
次に、GTKsharpの方をリネームすると、GIMPは起動して、PSS Studioは起動しない。<br />
<br />
ということでこれが原因と特定できたので、あとはどう対処するか。<br />
<br />
ググった際に、バージョンが違うとどうのこうの、とあったので、サクっとGTKSharpの方からGIMPへとコピーしたところ、すんなり両方立ち上がるようになりました。<br />
<br />
ちなみに逆にコピー(GIMPフォルダ→GTKSharpフォルダ)した場合はPSS Studioは起動しませんでした。<br />
<br />
もしかするとGIMPを最新版にすれば大丈夫なのかもしれません(うちのGIMPは2.6なので…)が、PSS StudioバンドルのGTK#に入っているDLLを使うのが妥当なようです。<br />
#GIMPの動作を見ていないので、GIMPで動作不良を起こすかも…?<br />
<br />
(2012年7月11日追記) <br />
サンプルを試しに動かしてみようと、実行しようとしたらデバッグでエラー(エラーをメモするのを忘れました^^;)。<br />
何事かと調べてみたら、どうやら「.NET Framework 4.5」がインストールされているとデバッグできないらしい(.NET Framework 4.0が必要)。<br />
.NET Framework 4.5は、Visual Studio 2012 RCをインストールした時に一緒にインストールされます。<br />
Visual Studio 2012 RCをアンインストールするか、.NET Framework 4.5をアンインストールすればよいのですが、私の場合、.NET Framework 4.5をアンインストールしてデバッグできるようになりました。ひつじhttp://www.blogger.com/profile/03290674908777326201noreply@blogger.com0tag:blogger.com,1999:blog-1080418124815930891.post-88787684495431190752012-05-13T14:28:00.000+09:002012-12-13T00:10:28.462+09:00UbuntuでXampp+Mongrelを使ってRedmine 1.3.3を動かす最近、RedmineをUbuntuで動かしてみているので、インストールについてのメモ。<br />
サーバーの環境は全てデフォルトのまま、セキュリティ面など特に何も気にした設定にはなっていないので、その点ご了承ください。 <br />
Ubuntuは12.04 日本語Remixを使用し、VirtualBoxにインストールしてあります。<br />
Ubuntu 12.04 日本語 Remixの入手は<a href="http://www.ubuntulinux.jp/home" target="_blank">こちら</a>。<br />
Redmineの入手は<a href="http://rubyforge.org/frs/?group_id=1850" target="_blank">こちら</a>。今回は1.3.3を使用します。 <br />
<br />
◆XAMPPをインストール<br />
<ol>
<li><a href="http://www.apachefriends.org/jp/xampp-linux.html" target="_blank">こちら</a>からXampp for linuxを入手</li>
<li>入手先に記載してある手順で圧縮ファイルを展開<br />
<pre class="linux">sudo tar zxvf xampp-linux-1.7.7.tar.gz -C /opt</pre>
</li>
<li>xamppを起動する<br />
<pre class="linux">sudo /opt/lampp/lampp start</pre>
</li>
</ol>
<br />
これで、apache、MySQLが起動します<br />
<br />
◆Ruby環境のインストール<br />
以下のバージョンをインストールしていきます。 <br />
<ul type="square">
<li>Ruby 1.8.7</li>
<li>rubygems 1.3.7</li>
<li>rake 0.8.7</li>
<li>rack 1.1.1</li>
<li>mongrel </li>
<li>その他付随するもの</li>
<li>(railsはRedmineのパッケージにバンドルされているものを使用) </li>
</ul>
<br />
<ul type="square"></ul>
<ul>
<li>Ruby 1.8.7のインストール<br />
<pre class="linux">sudo apt-get install ruby1.8</pre>
バージョンは「ruby -v」で確認します</li>
</ul>
<ul></ul>
<ul>
<li>rubygems 1.3.7のインストール<br />
<ol>
<li><a href="http://rubyforge.org/frs/?group_id=126" target="_blank">こちら</a>から「rubygems-1.3.7.tgz」を入手</li>
<li>任意のフォルダで解凍<br />
<pre class="linux">sudo tar rubygems-1.3.7.tgz</pre>
</li>
<li>解凍したフォルダに移動<br />
<pre class="linux">cd rubygems-1.3.7.tgz</pre>
</li>
<li>rugygemsをセットアップ<br />
<pre class="linux">ruby setup.rb</pre>
</li>
<li>(※こちらは必要な方のみ任意で)<br />
このままだとgem実行の際「gem1.8」と入力しなければならないので「gem」で実行できるようシンボリックリンクを作成する<br />
<pre class="linux">cd /usr/bin
sudo ln -s gem1.8 gem</pre>
バージョンは「gem -v」で確認します </li>
</ol>
</li>
</ul>
<ul>
<li>rake 0.8.7のインストール<br />
<pre class="linux">sudo gem install rake -v=0.8.7
(sudo gem1.8 install rake -v=0.8.7)</pre>
バージョンは「rake --version」で確認します</li>
</ul>
<ul>
<li>rack 1.1.1のインストール<br />
<pre class="linux">sudo gem install rack -v=1.1.1
(sudo gem1.8 install rack -v=1.1.1)</pre>
</li>
</ul>
<ul>
<li>mongrelのインストール<br />
<pre class="linux">sudo gem install mongrel
(sudo gem1.8 install mongrel)</pre>
</li>
</ul>
<ul>
<li>その他インストール<br />
<pre class="linux">sudo apt-get install ruby1.8-dev redmine-mysql </pre>
</li>
</ul>
インストールしたgemの一覧とバージョンを確認する場合は<br />
<pre class="linux">gem list --local</pre>
とすることでみることができます <br />
<br />
◆Redmineの入手と設定<br />
基本的には<a href="http://redmine.jp/guide/RedmineInstall/" target="_blank">Redmine公式ページのインストール方法</a>に従っています。<br />
<ol>
<li><a href="http://rubyforge.org/frs/?group_id=1850" target="_blank">こちら</a>から1.3.3をダウンロード </li>
<li>任意のフォルダに展開<br />
<pre class="linux">sudo tar zxvf redmine-.1.3.3.tar.gz</pre>
</li>
<li>MySQLにredmine用のデータベースを作成<br />
<pre class="linux">/opt/lampp/bin/mysql -u root -p</pre>
mysql >になったら<br />
<pre class="linux">create database redmine character set utf8;
create user 'redmine'@'localhost' identified by '(任意のパス)';
grant all privileges on redmine.* to 'redmine'@'localhost';</pre>
</li>
<li>(GUIで操作します)database.ymlを設定する<br />
config/database.yml.exampleをコピーしてdatabase.ymlを作成し、以下のように設定します<br />
<pre>production:
adapter: mysql
database: redmine
host: localhost
username: redmine
password: (設定したパスワード)
socket: /opt/lampp/var/mysql/mysql.sock</pre>
</li>
<li> Redmineを展開したフォルダに移動</li>
<li>セッションストア秘密鍵を生成<br />
<pre class="linux">rake generate_session_store</pre>
</li>
<li>データベースのマイグレーションを実行<br />
<pre class="linux">RAILS_ENV=production rake db:migrate</pre>
</li>
<li>デフォルトデータベースを登録<br />
<pre class="linux">RAILS_ENV=production rake redmine:load_default_data</pre>
</li>
<li>(必要に応じてtmp、log、filesのパーミッションを変更してください)</li>
</ol>
◆mongrelでサーバーを起動する<br />
<ol>
<li>(カレントディレクトリは引き続きRedmineを展開したフォルダです)<br />下記のコマンドでmongrelを起動する<br />
<pre class="linux">ruby server/script mongrel_rails -e production
(ポート3001の場合:ruby server/script mongrel_rails -e production -p 3001)</pre>
</li>
<li>以下のような感じで出ていれば起動成功です<br />
<pre class="linux">=> Booting Mongrel
=> Rails 2.3.14 application starting on http://0.0.0.0:3001
=> Call with -d to detach
=> Ctrl-C to shutdown server</pre>
</li>
<li>サーバーが起動しましたので、アクセスしてみる(ポート3000の場合)<br />
ブラウザでURL「http://localhost:3000」にアクセス</li>
</ol>
<br />
これで一通り完了です。<br />
それと、このままではxamppもmongrel_railsも自動起動しないので、/etc/rc.localにコマンドを追記してシステム起動時に実行されるようにしておきましょうか。<br />
追記するコマンドは以下のとおり。<br />
<pre class="linux">/opt/lampp/lampp start
ruby /(redmine保存先までのパス)/redmine-1.3.3/script/server /usr/bin/mongrel_rails start -d -e production</pre>
ひつじhttp://www.blogger.com/profile/03290674908777326201noreply@blogger.com2tag:blogger.com,1999:blog-1080418124815930891.post-21991485185094178652012-05-04T10:16:00.000+09:002012-05-04T10:16:27.929+09:00USBストレージまたはSDカードにインストールできませんでしたIS05いじってたらハングアップして、リセットボタンで再起動後、アプリのアップデートなんかをする時、SDカードに移しているアプリで<br />
<blockquote class="tr_bq">
USBストレージまたはSDカードにインストールできませんでした</blockquote>
てなエラーが出てインストールやアップデートが上手くいかなくなってしまった。<br />
<br />
で、ググったら以下のページを発見したので、忘れはしないだろうけどφ(..)メモメモ。<br />
<blockquote class="tr_bq">
SDカードにアプリをインストール出来ない現象 - 価格.com掲示板 - <br />
<a href="http://bbs.kakaku.com/bbs/-/SortID=12922435/">http://bbs.kakaku.com/bbs/-/SortID=12922435/</a></blockquote>
なんでも<b style="color: #f1c232;">「.android_secure」フォルダにある「smdl2tmp1.asec」を削除</b>すればいいのだとか。<br />
<b style="color: #f1c232;">削除する場合は、PCと接続してPC上から操作</b>をする。ESファイルエクスプローラーでSDカード内を見たときは表示されませんでした。<br />
IS05に限らず、Android端末であれば起きるっぽいですね :(<br />
<br />ひつじhttp://www.blogger.com/profile/03290674908777326201noreply@blogger.com0tag:blogger.com,1999:blog-1080418124815930891.post-92034582557089446542012-04-09T22:48:00.001+09:002013-06-08T23:28:07.367+09:00右クリックからクリップボードにパスをコピーするツールググるといろいろなツールが出てくるパスのコピーツールですが、なんとなくコンテキストメニューに表示される文字とか、追加したい種類とかがまちまちでどうにもちょうどいいのがなかったので、作ってみました。<br />
<br />
ドロップボックスにアップしましたので、使ってみたい方はこちらからダウンロードしてください。 <br />
◆Path Copy in Context Menu <br />
<strike>http://dl.dropbox.com/u/XXXXXXX/pathcopy.zip</strike><br />
CodePlexに移しました。<br />
<a href="https://pathcopy.codeplex.com/">https://pathcopy.codeplex.com/</a><br />
<br />
<br />
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi0dobhXy6X6IEJO2UPbUO3F289NSIBnRfcSKPC90F3wEKGUk0_UoXlcZEoINKSOxlROXTUQjoQDe3Yh0RrE-ppo8EkelXcU_tpYs4iVcJU6SyliZ-Frc130CtxoLrDqxinZ_O1dekWIL4/s1600/%E3%83%A1%E3%83%8B%E3%83%A5%E3%83%BC%E8%A1%A8%E7%A4%BA.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi0dobhXy6X6IEJO2UPbUO3F289NSIBnRfcSKPC90F3wEKGUk0_UoXlcZEoINKSOxlROXTUQjoQDe3Yh0RrE-ppo8EkelXcU_tpYs4iVcJU6SyliZ-Frc130CtxoLrDqxinZ_O1dekWIL4/s1600/%E3%83%A1%E3%83%8B%E3%83%A5%E3%83%BC%E8%A1%A8%E7%A4%BA.png" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">コンテキストメニューに追加した状態</td></tr>
</tbody></table>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjkMfresDMUCDaTl0lUBqwOOxsJgBbg6Be30DaGT_7rxQnF3czytL91Qkm6C4qWuO4Yo8-wZp4NNfPZU-Rnbfe3GUeTVw0saOV781ajrpfEG8XEXGCCo1zCUq05GEyz29xcQ1L_6AOMu5w/s1600/%25E8%25A8%25AD%25E5%25AE%259A%25E7%2594%25BB%25E9%259D%25A2.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjkMfresDMUCDaTl0lUBqwOOxsJgBbg6Be30DaGT_7rxQnF3czytL91Qkm6C4qWuO4Yo8-wZp4NNfPZU-Rnbfe3GUeTVw0saOV781ajrpfEG8XEXGCCo1zCUq05GEyz29xcQ1L_6AOMu5w/s320/%25E8%25A8%25AD%25E5%25AE%259A%25E7%2594%25BB%25E9%259D%25A2.png" width="287" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">設定画面</td></tr>
</tbody></table>
<span id="goog_998975911"></span><span id="goog_998975912"></span>readme.txtにも書いていますが、仕組みは簡単で、実行ファイルに2つの引数を渡して渡された引数を元にクリップボードにパスをコピーする、という動きになっています。<br />
<br />
このため―レジストリを直接操作することになってしまいますが―コンテキストメニューに表示される文字列も書き換えることができます(実行ファイルから再設定すると元に戻ってしまいますが^_^; )。<br />
<br />
本当ならコンテキストメニューに表示される文字列も自由に設定できるようにしたかったんですが、最近脱線しっぱなしなのでここでやめてしまいました。 <br />
<br />
簡単にプログラムの解説をしますと、<br />
<br />
第一引数をswitch文で振り分けて、第二引数を「System.IO.Path.GetFullPath(args[1])」などとしてパスを取得し、「Clipboard.SetDataObject(取得したパス)」でクリップボードにコピーしています。<br />
<br />
引数が2つ未満の場合や第一引数が指定の値以外だった場合は、設定画面が表示されるようになっています。<br />
<br />
という単純な作りです。ひつじhttp://www.blogger.com/profile/03290674908777326201noreply@blogger.com0tag:blogger.com,1999:blog-1080418124815930891.post-35833046055465581462012-03-10T01:45:00.000+09:002013-06-08T23:28:47.448+09:00Androidの各Density用に画像を変換するツール1つの画像を選択して、各Density用に変換・フォルダーに格納するツールを作ってみました。<br />
<br />
Image Resize For Android<br />
<strike>(Dropboxのパブリックフォルダーに入れましたが、ちゃんとDL出来るのかな…)</strike><br />
<br />
CodePlexに移しました。<br />
<a href="https://irfa.codeplex.com/">https://irfa.codeplex.com/</a><br />
<br />
<br />
DLしたZIPを解凍して、exeファイル実行で起動できます。<br />
readme.txtやevolus pencilで作ったモックアップもあるので、御覧ください。<br />
また、<b><span style="color: orange;">実行には「.Net Framework 4.0」が必須</span></b>となりますので、インストールしていない場合はインストールが必要になります(<a href="http://www.microsoft.com/downloads/ja-jp/details.aspx?FamilyID=9cfb2d51-5ff4-4491-b0e5-b386f32c0992" target="_blank">こちら</a>からダウンロードできます)。<br />
WPF(?)&C#が初めてということもあり大雑把な作りなので、甘いところは多めに見て頂くか、こっそり教えていただけたらと思います。<br />
<br />
<br />
細かい経緯や使い方などは下記に書いていきますが、端的に申しますと<br />
<br />
<blockquote class="tr_bq">
”毎回同名でサイズの違う画像を用意するのが面倒”</blockquote>
<blockquote class="tr_bq">
”SDK付属のアイコンを使うにしても、各フォルダーからそれぞれのフォルダーにコピーするのも面倒”</blockquote>
<br />
ということで、ひとつの画像を選択することで、必要なサイズの画像と対応するフォルダーを用意するアプリケーションがあったらいいなと思い、いっその事作ってしまえ、と作った次第です。 <br />
<br />
Androidアプリ開発をする時、ホーム画面やドロワーなどのアイコンやメニュー、タブなどのアイコンを作成するにあたって、いろいろな画面サイズに対応させるために複数のサイズの画像を用意して、それぞれの画面サイズに対応するdrawableフォルダーに追加しないといけません。<br />
drawableに一つの解像度を用意するだけでも良いかもしれませんが、アイコンが綺麗に表示されなかったりもするので、やはり各画面サイズに対応したアイコンを用意したいところです。<br />
<br />
ちなみに、各画面サイズに対応させるための方法について、Android Developersの「<a href="http://developer.android.com/guide/practices/screens_support.html" target="_blank">Supporting Multiple Screens</a>」に記載されていますが、簡単に言うとresフォルダ下に<br />
<ul>
<li>drawable-xhdpi</li>
<li>drawable-hdpi</li>
<li>drawable-mdpi</li>
<li>drawable-ldpi</li>
<li>drawable-nodpi</li>
<li>drawable-tvdpi</li>
</ul>
というフォルダを用意してそれぞれのフォルダに「同名」の画像ファイルやXMLファイルを格納し、プログラムやLayoutでそのリソースを指定することで、対応する画面サイズに対応するサイズのアイコンが表示されるという仕組みになっています。<br />
<br />
Android SDKに入っている標準アイコンを使用する際も、hdpiのファイルをコピーし、mdpiのファイルをコピーし、hdpiのファイルをコピーし…イメージが違ったら一からコピーしなおし…を繰り返していて、日頃からもっと楽にできたらいいなと思っていた次第です。<br />
<br />
で、誰かのお役に立てればと、公開してみようかと思ったので、公開してみました。ひつじhttp://www.blogger.com/profile/03290674908777326201noreply@blogger.com0tag:blogger.com,1999:blog-1080418124815930891.post-82800041240421630472012-02-20T22:49:00.002+09:002012-02-21T20:35:53.158+09:00自分でスマホをいじってみてわかったことデバッグ用にとIS05を買ったわけですが、実際にスマホを所有するのはこれが初めて。<br />
<br />
それで触ってみて気付いたことをメモがてら忘れないようにと書き留めておきます。<br />
<br />
<b>◆Androidマーケットのアプリ紹介画像は、全部縦長(Portrait)のほうが良さげ</b><br />
横長の画像をアップしていると、縦持ち(Portrait)でその画像を表示した後、次の画像へスワイプしようとすると縦方向(Landscapeで横方向)にスワイプしないといけなくなる。ちょっとややこしい上面倒なので、アップする画像は全て横か縦に統一したほうが良さげ。<br />
<br />
<b>◆更新情報の自動付加される「1. 2.」は無視したほうが良さげ</b><br />
「1. 2.」が自動付加されるのはPCからみた時のみで、マーケットアプリから見たときは入力したままに表示されるようなので、<br />
Ver 1.0.0<br />
・ファーストリリース<br />
Ver 1.0.1<br />
・バグ修正<br />
のように書いていったほうが良さげ。<br />
<br />
<b>◆ボタンはある程度大きいほうがいい</b><br />
当たり前の話だけど、アプリによってはボタンがやたら小さかったり細かったりして、人差し指の”先”でタップしないとなかなか反応してくれなかったり。片手持ちの場合、持ち手の親指で操作することになるけど、その場合ほぼ反応してくれない。<br />
<br />
<b>◆SDカードへのインストールは許可しておいたほうが無難</b><br />
本体の容量が意外と手狭なので、SDカードへのインストールが出来るようにしておいたほうがユーザーフレンドリー <br />
<b><br /></b><br />
<b>◆使用するPermissionの説明をアプリ概要に書いておいたほうが良さげ</b><br />
必要とするPermissionの一部しか使わない場合でもマーケット上やアプリ情報ではいろいろな情報を取得されているというように見えるので、どういった意図でそのPermissionを使用しているのか書いておいたほうが多少なりともユーザーに安心感を与えるかも。そのうち、各Permissionとマーケット上やアプリ情報で表示される内容の対応表でも作ろうかな(誰かもう作ってそうだけど)。<br />
<br />
◆プリインストールアプリはアンインストールできない?<br />
アプリの評価を見ていると、「アンインストールできない」とか「アンインストールできるようにしてください」てな内容もあり、見ているとどうやらプリインストールされているアプリがアンインストールができない場合がある様子。端末メーカーによる仕様なので、アプリにどうこう言ってもしょうがないんだけどね。それでも使わないアプリが容量を占拠しているのはある意味ウィルス… <br />
<br />
ここからはIS05を使っての感想。SIM使ってないので、ケータイアップデートが出来ず、そのおかげでメジャーアップデート(2.2.1→2.3.4)もできない状態なので、アップデートをすれば改善される点もあるかもしれません。<br />
<br />
<b>・本体データ容量が少ない</b><br />
400MBですが、アプリをほいほい入れていったらあっと言う間になくなりました。SDカードに移せば、と思うところですが、次に出てくる弊害が…<br />
<br />
<b>・SDカードにアプリを入れておくと再起動後にしばらくアプリが見えない</b><br />
バッテリー切れや意図的に電源OFFして再起動させた後、SDカードに移しておいたアプリがしばらく表示されませんでした。突然インストールしたアプリが消えてはじめは何事かと思いましたが、共通してSDカードに移動したアプリだったこともあり、しばらく待ってみたらポコポコと現れてきました。そんなこともあり、SDカードに移動するアプリもあまりサイズが大きくないものや頻繁に利用するもの以外を中心に移動しています(アプリ情報だけなら大小関係ないかもしれませんが)。<br />
<br />
<b>・ホーム画面にショートカットを増やしたら挙動が…</b><br />
壁紙やウィジェットが表示される画面にショートカットを増やしていったら、ホーム画面をスワイプして移動する際にプチフリーズすることがしばしば。3ページ分がある程度埋まるくらいショートカットを置いた状態でアプリをあれこれいじっていたらフリーズ(電源ボタンも効かないので背面のリセットスイッチをポチ)。なので今は頻繁に使う分だけに厳選して置いてます。<br />
追記:ホームアプリを入れると結構そちらでは調子いいので、現在は<a href="https://market.android.com/details?id=com.gau.go.launcherex">GO LAUNCHER EX</a>を利用しています。 <br />
<br />
<b>・イヤフォンジャックカバーェ…</b><br />
IS05のイヤフォンジャックカバー、ただ差してあるだけなんですねw びっくりしました。しかもちょっと出っ張ってるし…なんか…ださい… <br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjCimP_mbKmB8DS6zvMFOIB0kKUVbLwOxOUkof2CpXKGFD19Qa-EOznv5RyNyLuldAnY0GjfXE8kgHdhIJ2qmWJ-pi5j0cZbijR1XC8FgXMOX0Jw3lwmQYHYAQMPJb_k7yMo5wkqrCSBVE/s1600/IS05%E3%82%A4%E3%83%A4%E3%83%95%E3%82%A9%E3%83%B3%E3%82%B8%E3%83%A3%E3%83%83%E3%82%AF%E3%82%AB%E3%83%90%E3%83%BC.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjCimP_mbKmB8DS6zvMFOIB0kKUVbLwOxOUkof2CpXKGFD19Qa-EOznv5RyNyLuldAnY0GjfXE8kgHdhIJ2qmWJ-pi5j0cZbijR1XC8FgXMOX0Jw3lwmQYHYAQMPJb_k7yMo5wkqrCSBVE/s320/IS05%E3%82%A4%E3%83%A4%E3%83%95%E3%82%A9%E3%83%B3%E3%82%B8%E3%83%A3%E3%83%83%E3%82%AF%E3%82%AB%E3%83%90%E3%83%BC.jpg" width="240" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">上がカバー装着時。下が外した状態</td></tr>
</tbody></table>
<b>・スクリーンショットが取れる (・∀・)イイ!!</b><br />
これは端末ごとに状況が異なるんでしょうか。IS05の場合、電源ボタンを押したままホームキーを押すとスクリーンショットが取れるんですね。端末をルート化しないといけないとか、ルート化しなくても済むアプリはあるけど登録が必要とかいろいろ情報を見ていた分、端末に標準でスクリーンショットが付いているのはありがたいですね。<br />
<br />
こんなところですか。IS05はサイズが小さい分画面サイズも小さいですが、手にすっぽり収まるサイズで普段使用するにはこのくらいの大きさがちょうどいいのかな、と思いました。店頭でデモ機を触ってる感じでは、大きくても4インチくらい、それ以上になると大きすぎて扱いにくそうな印象がありました。<br />
<br />
最近になってようやくAndroid 4.0対応端末の情報もちらちら出てきて、<a href="http://k-tai.impress.co.jp/docs/news/20120213_511760.html">シャープもハイエンドモデルを中心にバージョンアップをする計画がある</a>ようですし、 Android 4.0端末が待ち遠しいですね。もう<a href="http://www.itmedia.co.jp/news/articles/1202/17/news025.html">Android5.0(Jelly Bean)の発表が6月かも</a>、という情報も出てきていますが。<br />
<br />
ちなみに、IS05を2.3.4にバージョンアップするには、まず端末のビルド番号が「1.00.07」以上でなくてはなりませんが、私の持っている端末は「1.00.02」。ビルドを上げるにはケータイアップデートをしなければなりませんので、SIMが必要になります。SIMを利用できるようにするには事務手数料2100円かかります。2.2.1のまま使うか、2.3.4にあげるか。Android DevelopersのResourcesにあるPlatform Versionsを見るとAPI Level 10が58.1%(2012年2月20日現在)になっているので、デバッグ用としても2.3.4にあげたほうがいいのかなぁ。などと思案中。ひつじhttp://www.blogger.com/profile/03290674908777326201noreply@blogger.com0tag:blogger.com,1999:blog-1080418124815930891.post-15870757780364775582012-02-13T00:47:00.000+09:002012-02-13T00:56:18.887+09:00Action Bar実装編(前回の続き)<a href="http://hi2zlog.blogspot.com/2012/02/actionbar_12.html">前回</a>の続きです。<br />
<br />
メニュー用のリソースも出来ましたので、メニュー表示をプログラムに実装して使えるようにしましょう。<br />
<br />
と言っても今回はいろいろ工夫したりしているわけではないので、Android Developersの「<a href="http://developer.android.com/guide/topics/ui/menus.html">Menus</a>」にあるようなリファレンスどおりの作り方になりますが(^^ゞ<br />
<br />
onCreateOptionsMenu()はこんな感じ。<br />
<br />
<pre class="brush:java">@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.menu_main, menu);
return true;
}</pre>
<br />
ちょこっと解説。<br />
MenuInflater でXMLからメニューの情報を使用します。<br />
で、nflater.inflate()で、作成したmenu_main.xmlをIDで指定します。 <br />
<br />
次に、メニューが選択された時の動作、onOptionsItemSelected()はこんな感じです。<br />
<pre class="brush:java">@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch( item.getItemId() ) {
case R.id.appfinish:
finish();
break;
case R.id.howto:
showHelp();
break;
case R.id.about:
showCredit();
break;
}
return super.onOptionsItemSelected(item);
}</pre>
<br />
こちらは簡単ですね。<br />
switch 文を使って、 受け取った MenuItem の getItemId()で選択されたメニューアイテムのIDを取得して、caseで各IDを指定します。<br />
IDはmenu_main.xmlで各メニューアイテムに指定したIDを利用します。<br />
<br />
これでAndroid3.0以上の環境で実行すると Action Bar として実行され、Android 3.0以前では従来のようなメニューで表示されます。<br />
<br />
Action Barでの表示方法は前回書きました、show As Action の指定の方法で変わってきます。実際に設定して動かしてみると違いがよくわかると思います。<br />
<br />
最後に、アプリのバージョンアップです。<br />
<br />
マニフェストファイルの Version Codeを前回よりも大きい数字(今回の私の場合、1 → 2)に変更して、Version Nameも任意の値を指定(今回は1.0.0 → 1.1.0)、アップロード用の apk ファイルを作成したらAndroidマーケットのデベロッパーコンソールでアップロード済みのアプリを選択し、「APKファイル」タブを選択して、新規のAPKファイルをアップロード。アップロードが完了したら新しい方のパッケージを有効にして、必要に応じて「商品の詳細」タブでRecent Changes(更新情報)を記入して、「保存」をクリック。<br />
<br />
すぐ見ても反映されませんでしたが、一晩たった時点では反映されていました(最短どのくらいかは…あとで調べてみようと思います)。<br />
ちなみに、更新情報に<br />
<br />
あああ<br />
いいい<br />
<br />
というように書いたらそのまま出るのかと思ったら、<br />
<ol>
<li>あああ</li>
<li>いいい</li>
</ol>
というように、各行が番号付きで表示されるようでした。ひつじhttp://www.blogger.com/profile/03290674908777326201noreply@blogger.com0tag:blogger.com,1999:blog-1080418124815930891.post-36391208838360958522012-02-12T01:09:00.002+09:002012-08-28T00:12:59.421+09:00今までのメニュー表示からActionBarを利用したメニュー表示に変更<a href="http://hi2zlog.blogspot.com/2012/02/actionbar.html">前回のエントリー</a>でAction Barを使ってみようということで軽く調べてから、Androidマーケットにアップしている「<a href="https://market.android.com/details?id=jp.gr.java_conf.hi2z.simplecalculator">シンプル電卓</a>」を改良して、ついでにバージョンアップのテストもやってみようかという企画(?)です。<br />
<br />
一般的なMenuの作り方は<br />
<pre class="brush:java">private static final int MENU1_ID = Menu.FIRST;
private static final int MENU2_ID = Menu.FIRST + 1;
pivate static final int MENU3_ID = Menu.FIRST + 2;
</pre>
というような感じで、Menu用のIDを作って、<br />
<pre class="brush:java">@Override
public boolean onCreateOptionsMenu(Menu menu) {
boolean result = super.onCreateOptionsMenu(menu);
// メニューアイテムを追加する
menu.add(0, MENU1_ID, Menu.NONE, R.string.menu1Label).setIcon(R.drawable.ic_menu_close_clear_cancel);
menu.add(0, MENU2_ID, Menu.NONE, R.string.menu2Label).setIcon(R.drawable.ic_menu_info_details);
menu.add(0, MENU3_ID, Menu.NONE, R.string.label_about).setIcon(R.drawable.ic_menu_notifications);
return result;
}
</pre>
と、onCreateOptionsMenu()でMenuボタンを押した時に表示されるメニューを作成し、<br />
<pre class="brush:java">@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch( item.getItemId() ) {
case MENU1_ID:
finish();
break;
case MENU2_ID:
showHelp();
break;
case MENU3_ID:
showCredit();
break;
}
return super.onOptionsItemSelected(item);
}
</pre>
てな感じで、onOptionsItemSelected()でメニューが選択された時の動作を決定するわけです。<br />
<br />
これを、Action Barを使用した作りにします。<br />
まずは、作成しているアプリのmin SDK VersionとTarget SDK Versionを決定します。<br />
Action Barが使えるようになったのはAndroid 3.0(Level 11)からなので、Target SDK Versionは11以上に設定しましょう。min SDK Versionは自分のアプリの最低条件をつけてやりましょう(私の場合はAndroid 1.6なので4です。)。<br />
<br />
次に「project.properties」にあるTarget SDKにも先ほど設定したTarget SDK Versionと同じ数字を「Android-xx」の「xx」につけましょう。そして、eclipse再起動。私の場合、eclipse再起動で後ほど設定するshow As Actionが有効になってくれました。<br />
<br />
下準備が整いましたので続いて、menu用のリソースを/res/menuの下に作ります(resの下のmenuフォルダはresを右クリックして[新規]-[フォルダー]です(eclipseの場合))。<br />
「Android XML File」を新規作成し、Resource Typeに「Menu」を設定、ファイル名を入力して(ここでは menu_main)完了。<br />
こんな感じの画面になります(Itemなどすでに追加済みですが…)<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiqHFI0AFPJpujVRKSiP-Hn9V0nu2Tgq6AIqYw5q74NZwLW9mldDDmd7oAGslI5Yol4lUW0TDR8bK7XRExx6IB8SPSdwe7hRtU4kJjdfOrDdEA25an4p9b6J2meeSspNCXmaHpL2tUJQZg/s1600/menu_xml.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="239" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiqHFI0AFPJpujVRKSiP-Hn9V0nu2Tgq6AIqYw5q74NZwLW9mldDDmd7oAGslI5Yol4lUW0TDR8bK7XRExx6IB8SPSdwe7hRtU4kJjdfOrDdEA25an4p9b6J2meeSspNCXmaHpL2tUJQZg/s320/menu_xml.png" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">res/menuのxml編集画面</td></tr>
</tbody></table>
xmlを直接記述でもいいですが、ここはGUIで操作をしましょう。<br />
はじめは Menu Elements には何もありませんので、Add ボタンをクリックして、「Group」か「Item」を選択してOKを押します。<br />
すると、Menu Elements に一つデータが追加されました。<br />
後はそのアイテムのIDやTitle、Iconを設定します。<br />
次に、ようやくここで show As Action の設定です。<br />
show As Actionの右側の Select ボタンを押すと<br />
<ul>
<li>never … Action Barには表示されない</li>
<li>ifRoom … Action Barにスペースがあれば表示する</li>
<li>always … 必ずAction Barに表示する</li>
<li>withText … Action BarにIconと共にテキストを表示する(Land Scape時のみ?)</li>
<li>collapseActionView … action viewを関連付けることで折り畳めるメニューを表示(Level 14から)</li>
</ul>
の選択肢が表示されます。 <br />
collapseActionViewですが、エミュレータで確認した限りでは、WVGA800では通常のMenuと同様にポップアップ表示、WXGA720ではひとまとめになって表示されました。<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgsaJsaitC67FiAIRLcMyFg3veesHiE-gjUlVTBeZvBID5MGUfPyEedUAbRbBxPerZi5XtTKQf-OdOKIm7D6_OjAtMfceAXbobFWUhalM9bUOPmQxMDri0CaGren3_9HPIAsB4F_tgYQ4A/s1600/collapseActionView.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="177" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgsaJsaitC67FiAIRLcMyFg3veesHiE-gjUlVTBeZvBID5MGUfPyEedUAbRbBxPerZi5XtTKQf-OdOKIm7D6_OjAtMfceAXbobFWUhalM9bUOPmQxMDri0CaGren3_9HPIAsB4F_tgYQ4A/s320/collapseActionView.png" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">collapseActionView</td></tr>
</tbody></table>
<strike>なので、「ある程度の解像度から」と書きました。が、間違っていればご指摘をお願いいたします(他に設定すればWVGA800でもひとまとめ表示になるよ、など)。</strike><br />
※訂正:Nagoya0さんからのコメントにありますとおり、collapseActionViewを指定したために通常表示やまとまった表示になっていたのではなく、action viewを指定していないためにデフォルトの動作になっていただけのようです。<br />
collapseActionViewを使用する場合はandroid.widget.SearchViewのようなaction viewと関連付けて使用することで伸縮するメニューを利用することができるようです。<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg8OvadO-Em8ieZaVoOZywaOKc-tqmZ9OTaUAEiPUrZ2NYrQdR-BR3xNP4_qtNDk6N9r8QBuM0jUtUC64pFVRx_yXwzrx0Rqj5oOb5SZnG7kw5uveXawLRSVqxGiC9jZavXsCSMFbg_2Tk/s1600/searchview_sample.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="161" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg8OvadO-Em8ieZaVoOZywaOKc-tqmZ9OTaUAEiPUrZ2NYrQdR-BR3xNP4_qtNDk6N9r8QBuM0jUtUC64pFVRx_yXwzrx0Rqj5oOb5SZnG7kw5uveXawLRSVqxGiC9jZavXsCSMFbg_2Tk/s320/searchview_sample.png" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">SearchView を使った例。上が閉じた状態、下が展開した状態</td></tr>
</tbody></table>
<br />
<br />
と、とりあえず、今回はここまで。次回は続きとAndroidアプリのバージョンアップについて書きたいと思います。<br />
<br />
<a href="http://hi2zlog.blogspot.com/2012/02/action-bar.html">次回:Action Bar実装編</a>ひつじhttp://www.blogger.com/profile/03290674908777326201noreply@blogger.com2tag:blogger.com,1999:blog-1080418124815930891.post-54437823987186367372012-02-06T01:30:00.001+09:002012-02-13T00:48:26.548+09:00ActionBarを使ってみようかと…android developers blogの「<a href="http://android-developers.blogspot.com/2012/01/say-goodbye-to-menu-button.html">Say Goodbye to the Menu Button</a>」でActionBarを使おうって言ってるので、とりあえず軽く触ってみて、ついでに、<a href="http://hi2zlog.blogspot.com/2012/01/android-market_27.html">テストアップしたアプリ</a>もActionBar対応にしようかと思ったのですが…<br />
<br />
Dev GuideのAction Barのページ(<a href="http://developer.android.com/guide/topics/ui/actionbar.html">こちら</a>)を参照しながら作ってみると、res/menuのmenu.xmlで「android:showAsAction」を使おうとするとエラーでアプリがビルドできず。<br />
<br />
さてどうしたもんかと、Menu Resource(<a href="http://developer.android.com/guide/topics/resources/menu-resource.html">こちら</a>)のページを見てみると「Introduced in API Level 11.」という記載が。<br />
<br />
Min SDK : 4、Target SDK : 14でやっていたのを両方11にしたら動くようになりましたが、はて、11以外では動かないのかな? <br />
それともサボってソースとその周辺だけ読んでいるせいでなんか見逃してるのかな?<br />
ちなみに、Min SDK:11だけでTarget SDKをなしにしてもダメでした。<br />
<br />
もうちょっと調べてみよう。<br />
<br />
追記:<br />
調べた結果、というか動かしているうちにMin SDK : 4、Target SDK : 14でも動くようになったので、更に見てみると「project.properties」のtarget-SDKも「android-14」にすることと、eclipseを再起動することで使えるようになりました。<br />
res/menu/menu.xmlを編集する際にGUI編集画面に「show as action」の入力欄が出ていない時はビルド出来ず、表示されるようになればビルドできるようになりました。 <br />
<br />
あ、調べるついでに、Androidのマスコットの名前を再調査しました。<br />
以前調べた時には、もうなくなったページの配布画像の下に「droid : jpeg」とあったので、droidかなぁ、と思っていました(droidもロボットの意味でしょうけど)が、実際は「公式の名前はない」ということらしいです(<a href="http://blogs.itmedia.co.jp/katabami/2010/08/droidandroid-af.html">こちらを参照</a>)。<a href="http://www.android.com/branding.html">Brand Guidelines</a>でも「Android Robot」ってしか書いてないですしね。<br />
他に、Googleの中の人たちはマイクと読んでいたり、犬のマスコットをアレックスと読んでいたり。<br />
まあそれでも、今後も言いやすいので「ドロイドくん」 と呼ぼうと思いますが。<br />
<br />
ちなみに、<a href="http://ja.wikipedia.org/wiki/Android">WikipediaのAndroid</a>を見ると「正式名称はGoodies」と書いてありますが、もうなくなった「http://www.android.com/media/goodies.html」というページ(<a href="http://blogs.itmedia.co.jp/katabami/2010/08/android-849e.html">こちらの記事</a>でスクリーンショットが見れました)に画像やらフラッシュバナーがあったのですが、このページのファイル名「goodies」やサムネイルの上の「Goodies」を名前と勘違いしたんだと思います。Goodiesは「グッズ」っていう意味でしょうからね。ひつじhttp://www.blogger.com/profile/03290674908777326201noreply@blogger.com0tag:blogger.com,1999:blog-1080418124815930891.post-72781785450306294882012-01-27T00:21:00.002+09:002012-02-13T00:48:18.920+09:00Android MarketにテストアップしてみたAndroidマーケットへ開発者登録が無事完了(<a href="http://hi2zlog.blogspot.com/2012/01/android-market_24.html">前回エントリー</a>)しましたので、続いてテストアップして見ました。<br />
<br />
手順としては、<br />
<ol>
<li>アップロード用のapkファイルを作成</li>
<li>デベロッパーコンソール画面からアプリケーションをアップロード</li>
<li>「商品の詳細」で必要事項を設定</li>
<li>設定が終わったら、上の方にある「公開」ボタンをクリック</li>
<li>apkファイル画面に「有効にする」というリンクがあるのでクリックする<br />おそらく有効にしないと公開されないと思われます。</li>
</ol>
これで完了。<br />
アップロード用のapkファイルは署名を付けないといけないのですが、私は<a href="http://ascii.jp/">ASCII.jp</a>の<br />
<a href="http://ascii.jp/elem/000/000/561/561345/index-2.html">これで作れる! Androidのアプリケーション ― 第11回</a><br />
を参考に作成しました。<br />
また、アップロード時の参考に<a href="http://thinkit.co.jp/">ThinkIT</a>の<br />
<a href="http://thinkit.co.jp/story/2011/01/27/1976?page=0,1">第4回 アンドロイドマーケットにアプリを公開しよう!(その2)</a><br />
を参考にしました。<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg5YOZlY59RxDYNQ5DZyDKi8bAVimpjQkxkGIQrqL862wwvc_J5kSB5wlJqq9Rm_bPZDuQsw4zcXYI9txhkHdmMUqnxMS-zeu0ThMuXx4_fCUmShPBYIA75A9MYONTBKqprEc-ZFs3rDFQ/s1600/%25E3%2582%25A2%25E3%2583%2583%25E3%2583%2597%25E7%2594%25BB%25E9%259D%25A22.PNG" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="182" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg5YOZlY59RxDYNQ5DZyDKi8bAVimpjQkxkGIQrqL862wwvc_J5kSB5wlJqq9Rm_bPZDuQsw4zcXYI9txhkHdmMUqnxMS-zeu0ThMuXx4_fCUmShPBYIA75A9MYONTBKqprEc-ZFs3rDFQ/s320/%25E3%2582%25A2%25E3%2583%2583%25E3%2583%2597%25E7%2594%25BB%25E9%259D%25A22.PNG" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">「アプリケーションをアップロード」をクリックするとこんな画面が出ます</td></tr>
</tbody></table>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEieWHvEdTWDAj7zUNY-lUhjU3oqZ_FDOx3y8n3ax4q7aRvqO-Y11W9dYfswqv87vvtQ3DsyLIPXIXFk2NzfHbc1d5GUk3B0l2KF5ydCDYDGybHNUg6S5gWyE8E5m8Hq-sqAvi_IcxyJ_2o/s1600/%25E3%2582%25A2%25E3%2583%2583%25E3%2583%2597%25E7%2594%25BB%25E9%259D%25A2.PNG" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="147" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEieWHvEdTWDAj7zUNY-lUhjU3oqZ_FDOx3y8n3ax4q7aRvqO-Y11W9dYfswqv87vvtQ3DsyLIPXIXFk2NzfHbc1d5GUk3B0l2KF5ydCDYDGybHNUg6S5gWyE8E5m8Hq-sqAvi_IcxyJ_2o/s320/%25E3%2582%25A2%25E3%2583%2583%25E3%2583%2597%25E7%2594%25BB%25E9%259D%25A2.PNG" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">こちらはアップロード後&有効にした後です</td></tr>
</tbody></table>
<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEimAxcbZpBpBpQpK690Xxo5lgkEFUIgoVenluCc0cLZvR4N_Ap9vxst5yxTbiCr24kEvUJZG6m81Hfv0PPpWey46g47nzdszp6yeC1d1NQ_kFUAtv4gCH5tOzzv0YXx27xYuxjeJa7y_j0/s1600/%25E3%2582%25A2%25E3%2583%2583%25E3%2583%2597%25E7%2594%25BB%25E9%259D%25A23.PNG" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="309" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEimAxcbZpBpBpQpK690Xxo5lgkEFUIgoVenluCc0cLZvR4N_Ap9vxst5yxTbiCr24kEvUJZG6m81Hfv0PPpWey46g47nzdszp6yeC1d1NQ_kFUAtv4gCH5tOzzv0YXx27xYuxjeJa7y_j0/s320/%25E3%2582%25A2%25E3%2583%2583%25E3%2583%2597%25E7%2594%25BB%25E9%259D%25A23.PNG" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">必要事項を設定</td></tr>
</tbody></table>
スクリーンショットは2枚以上必須。高解像度アプリケーションアイコンというのはAndroidマーケット上の各所で表示されるときのアイコンになります。<br />
「マーケティングの除外」というのは、これを有効にすると「GoogleがAndroidマーケットやGoogleが運営しているサイトなど以外ではマーケティングしないでください」という意思表示になるようです。<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh5m7G1L6rU7I3uuD1yl-R1PaJxVovQhK5V3Gw2EbUhxveCyLNL4-1soxX5mRjK6jmc1dzjy-7TZKcssGKwxrEiol9BrkToL4ipn_SJUUFjcOEOsi-Uiytaozari37wDsX0SCU_xqoO6-c/s1600/%25E3%2582%25A2%25E3%2583%2583%25E3%2583%2597%25E7%2594%25BB%25E9%259D%25A24.PNG" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="171" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh5m7G1L6rU7I3uuD1yl-R1PaJxVovQhK5V3Gw2EbUhxveCyLNL4-1soxX5mRjK6jmc1dzjy-7TZKcssGKwxrEiol9BrkToL4ipn_SJUUFjcOEOsi-Uiytaozari37wDsX0SCU_xqoO6-c/s320/%25E3%2582%25A2%25E3%2583%2583%25E3%2583%2597%25E7%2594%25BB%25E9%259D%25A24.PNG" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">商品の説明を記入</td></tr>
</tbody></table>
言語を設定(今回の場合、日本語のみに設定)して、タイトルと詳細説明(Description)を記入。ファーストリリースなので、Recent Changesは未記入。プロモーション画像なども無いので、Promotion Textも未入力です。<br />
あとはアプリケーションタイプとカテゴリを選択して、コピー防止(近々なくなるのでどちらもで変わらないらしいです)、レーティング、価格、公開地域、連絡先を入力し、同意事項をよく読んで同意したら「公開」です。<br />
<br />
公開後、Androidマーケットから検索してもすぐにはヒットしません。<br />
PCなどのWebからアクセス限定ですが、直接アプリのページや自分が公開しているアプリ一覧を表示する方法があります。 <br />
<ul>
<li>アプリのページを表示<br />https://market.android.com/Details?id=(パッケージ名)<br />とアドレスバーに入力して移動するとアプリのページを開くことができます。<br />今回私がアップしたアプリの場合、<br /><a href="https://market.android.com/details?id=jp.gr.java_conf.hi2z.simplecalculator">https://market.android.com/details?id=jp.gr.java_conf.hi2z.simplecalculator</a><br />となります。</li>
<li>Androidマーケット内の自分のページを表示<br />https://market.android.com/Developer?pub=(デベロッパー名)<br />とアドレスバーに入力して移動すると自分のページを開けます。<br /><a href="https://market.android.com/developer?pub=%E3%81%B2%E3%81%A4%E3%81%98">https://market.android.com/developer?pub=ひつじ</a></li>
</ul>
一応、一晩立ってからAndroidマーケットの検索機能で検索して表示されるようになりましたが、アップ後直ぐに自分でダウンロードテストしてみたい場合は上記の方法を試してみてください。ちなみに、現在も同じかはわかりませんが、自分のアカウントで自分の有料アプリを購入することはできないようです(Google Groupsの日本アンドロイドの会の<a href="https://groups.google.com/forum/#%21topic/android-group-japan/abs1HI8A8H0/discussion">こちらを参照</a>)。ひつじhttp://www.blogger.com/profile/03290674908777326201noreply@blogger.com0tag:blogger.com,1999:blog-1080418124815930891.post-65634033016223037522012-01-24T19:22:00.002+09:002012-01-24T19:22:46.222+09:00Android Market開発者登録完了!昨日のエントリー(<a href="http://hi2zlog.blogspot.com/2012/01/android-market.html">こちら</a>)でAndroid Marketの開発者登録をしたけど処理中で完了しないから問い合わせした、ということを書いたけど、ついに登録完了しました!<br />
<br />
問い合わせ後のメールに返信して、それの回答メールのタイムスタンプが6:30頃なので、その頃に対応してくれたようです。<br />
<br />
登録処理が進むと以下のような画面になります。<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh_VE59nJ4mpQB3kd4oxsCEze6ivcEpoxT32hdvZco7CGnmqF9AOyVLHE8tMvibgulaCu9l5L5BiMRphlW19Z43ejC4mnmGqAdQQtpZYl9qmGXhmZtxXpasv5gjCXDuy02wArJXPNZQd-Y/s1600/%25E5%2587%25A6%25E7%2590%2586%25E5%25AE%258C%25E4%25BA%2586.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="261" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh_VE59nJ4mpQB3kd4oxsCEze6ivcEpoxT32hdvZco7CGnmqF9AOyVLHE8tMvibgulaCu9l5L5BiMRphlW19Z43ejC4mnmGqAdQQtpZYl9qmGXhmZtxXpasv5gjCXDuy02wArJXPNZQd-Y/s320/%25E5%2587%25A6%25E7%2590%2586%25E5%25AE%258C%25E4%25BA%2586.png" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">販売/配布契約書</td></tr>
</tbody></table>
この契約書を読み、「同意して次へ」を押すと登録完了です。<br />
そして、自分のデベロッパーコンソール画面が以下のようになります。<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg9a-cYgRB2Qy9_bpXPBrr9_iy9miIHtBr8j9LnWuguYb3givImydmjxhpzVjOZaSYC64T5in_89eBq6iyC-woHb084myEHLX8axYfo5hQcSJuptFe0FxV2Cjlcd_qFrwLttMZkeGQPl4w/s1600/%25E6%2589%25BF%25E8%25AA%258D.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="231" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg9a-cYgRB2Qy9_bpXPBrr9_iy9miIHtBr8j9LnWuguYb3givImydmjxhpzVjOZaSYC64T5in_89eBq6iyC-woHb084myEHLX8axYfo5hQcSJuptFe0FxV2Cjlcd_qFrwLttMZkeGQPl4w/s320/%25E6%2589%25BF%25E8%25AA%258D.png" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">承認されました</td></tr>
</tbody></table>
これでようやくアプリを公開できるようになったわけです。よかったよかった:-)ひつじhttp://www.blogger.com/profile/03290674908777326201noreply@blogger.com0tag:blogger.com,1999:blog-1080418124815930891.post-14525247622950375362012-01-24T01:19:00.001+09:002012-01-24T19:12:56.392+09:00Android Marketへ開発者登録。しかし…Twitterでもつぶやいてますが、Android Marketへデベロッパー登録から現時点(1/24 1:15)までの状況を。<br />
<br />
Androidアプリの公開にあたって、一番手っ取り早いのはGoogleが運営している<a href="https://market.android.com/?hl=ja">Android Market</a>に登録・公開する方法です。Android Marketに開発者登録をする場合、<b>25USドルの登録料</b>を<u>クレジットカードで決済</u>する必要があります(執筆時点のレートが1ドル約77円なので約1925円)。 <br />
<br />
私は<a href="http://www.adakoda.com/android/">逆引きAndroid入門</a>というサイトの「開発者登録するには」というところを参考に実施しました。詳細はこちらをみていただくとして、下に簡単な手順を記します。<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<ol>
<li>(持っていない場合)Googleアカウントを作成する</li>
<li><a href="http://market.android.com/publish/">http://market.android.com/publish/</a>にアクセスし、ログインする</li>
<li>必要な情報を入力し先にすすめる<br />ここで電話番号を入力しますが、私の場合、携帯番号を「+81-90-xxxx-xxxx」と入力しました</li>
<li>クレジットカードの情報と各必須項目を入力します</li>
<li>全て入力が終了したら注文を確定する</li>
<li>完了画面が表示されたら、「Android Market Developer Site」というリンクをクリックして開発者サイトに移動します</li>
<li>すると以下のような画面が表示されます</li>
</ol>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgMAR0XdvcAMNJkCsj7czuldIgfgo-MSVSnworSV5CFU_zaVjoo82c8sSG6doxli0hCbdUWMDOgkj6m5UgTqLSnzv0Qb56wo5lNzg9L9B9FONz0SdOYW8y_572in1MDyo5ZolaekHBmk7I/s1600/developer+console.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="261" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgMAR0XdvcAMNJkCsj7czuldIgfgo-MSVSnworSV5CFU_zaVjoo82c8sSG6doxli0hCbdUWMDOgkj6m5UgTqLSnzv0Qb56wo5lNzg9L9B9FONz0SdOYW8y_572in1MDyo5ZolaekHBmk7I/s320/developer+console.png" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">デベロッパーコンソール</td></tr>
</tbody></table>
この画面の上部にある「Androidマーケットへの登録はまだ処理中です。」が消えれば、アップロードしたアプリが公開されるようになるのですが…私の場合、一晩経っても変わらないまま(´・ω・`)<br />
もう少しまとうかとも思いましたが、ググると、別アカウントで再登録したらすぐに処理が完了して、アプリを公開できるようになったということでしたので、とっとと問い合わせを出すことにしました。<br />
その問い合わせ先が<a href="https://support.google.com/androidmarket/developer/?hl=ja">こちら</a>の右にある「サポートに連絡」へ進みます。アクセスするとわかるかと思いますが、この連絡先、<u>英語しかありません</u>。なんということでしょう\(^o^)/<br />
しかし、戸惑っていても仕方がありませんので先に進み、「Android Market Developers: Publishers & Merchants」から「Registration or Account Issues」の入力フォームに。<br />
<br />
必須項目を入力しつつ、Issue Typeに「I can not complete developer registration」を設定しFull Descriptionに(英語で)「注文処理したけど未だに処理中なんですが」的な内容を書いてsubmit!<br />
<br />
すると即効でメールが一通。こんなことをやってみてねという内容で大雑把に書きだすと以下のとおり。<br />
<ol>
<li> Known Issue Pageを見てみてね</li>
<li>そのアカウント、以前にAndroid MarketでSuspendedしてない?</li>
<li> 違うクレジットカードで試してみて</li>
<li>Cookieや履歴を削除してから試してみて</li>
<li>JavaScriptを有効にしてね</li>
<li>違うブラウザで試してみてね。その際、拡張機能は全て止めてね</li>
<li>それでもダメならこのメールに返信してね。ついでにスクリーンショットとOSのバージョンとブラウザのバージョンとブラウザのエラー情報やらhttpログやらがあったら頂戴</li>
</ol>
このへんの情報もググッたときに見ていたので(クレカ以外)実施済み。ということでこちらも速攻で返信。<br />
<br />
で…その後、まだ「処理中」のまま。まあ、問い合わせしたばかりだし、とりあえず、もう一日待ってみることにして、進展があったら追記します。<br />
<ol>
</ol>ひつじhttp://www.blogger.com/profile/03290674908777326201noreply@blogger.com0tag:blogger.com,1999:blog-1080418124815930891.post-8026571584051870522012-01-21T16:08:00.000+09:002014-01-17T21:57:55.871+09:00Windows 7でイベントビューアーにいくつかのエラーを対処イベントビューアーを見たら色々エラーでてました。<br />
<br />
その中でMSのサポートなどに情報があり、無視しても良いものや対処方法が見つかったものを記載。<br />
<ul>
<li><span style="color: #3d85c6; font-size: small;"><b><span style="font-family: inherit;">ソース:WMI「クエリ…云々…使用できませんでした」(Event ID 10)</span></b></span><span style="font-size: small;"><br />
<span style="font-size: small;"><a href="http://support.microsoft.com/kb/950375/ja">Windows Vista Service Pack 1、Windows 2008、Windows 7 または Windows Server 2008 R2 をインストールした後にイベント ID 10 がアプリケーション ログに記録されます。</a></span> <br />
無視していいそうですが、リンク先にvbsのソースがあってそれを実行するとエラーが出ないようになるようです。</span></li>
<li><span style="font-size: small;"><span style="color: #3d85c6; font-size: small;"><b>ソース:Kernel-EventTracing「セッション"ReadyBoot"の最大ファイルサイズに達しました」(Event ID 4)</b></span><a href="http://support.microsoft.com/kb/2001347"><br />
<span style="font-size: small;">Error: "Session "ReadyBoot" stopped due to the following error: 0xC0000188" in Windows 7</span></a><br />
こちらも無視していいそうで対処方法などは書いてありませんが、ネットで調べるとレジストリを書き換て最大ファイルサイズを変更する方法が載ってました。<br />
<span style="color: red;">※ レジストリの変更は自己責任でお願いします</span><br />
<span style="font-size: small;"><i>HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\WMI\Autologger\ReadyBoot\</i><br />
にある「<i>MaxFileSize</i>」を「<i>14</i>(16進数)」から「<i>60</i>(16進数)」などに変更する</span></span></li>
<li><span style="font-size: small;"><b style="color: #3d85c6;">ソース:Kernel-EventTracing 「セッション "Microsoft Security Client OOBE" が次のエラーで停止しました: 0xC000000D」(Event ID 3)</b><br />
MSのサポート情報はありませんでしが、MS Answersに同じような現象がありました(リンクは<a href="http://answers.microsoft.com/ja-jp/protect/forum/protect_start/%E3%82%BB%E3%83%83%E3%82%B7%E3%83%A7%E3%83%B3/7ce2a2f2-1a08-420e-bd48-e447842b62b2">こちら</a>)。<br />
Security EssentialsとSecurity Clientの違いがありますが、同じ対処をして一応治まってます。</span>「<i>C:\ProgramData\Microsoft\Microsoft Security Client\Support\EppOobe.etl</i>」を削除して再起動(私はそのまま削除しましたが、一応<u>Safe Modeを使ったほうが良い</u>と思います)。</li>
</ul>
その他、私の環境では、内蔵有線LANアダプターでのエラーが出ていたり(無線LANアダプターを使用しているので有線LANの「ローカルエリア接続」を無効に)、DNS関連エラーが出ていたり(IPv6を無効に) していましたが、それぞれ対処してまだちょっと残ってはいますが、だいたい落ち着いた感じです。<br />
<br />
あ、ちなみに、私は知らなかったのですが、 管理ツールの中に「Windowsメモリ診断」てのがあって、内容を見るとMemTest86+のようなチェックをしているようです。<br />
実行して再起動をするとWindowsが起動する前にメモリチェックを行ない、終了後Windowsを起動して診断結果をポップアップ表示しました。<br />
メモリのチェックは3段階あり、今回は標準で実施。特に問題なしとのことで一安心。<br />
Windowsメモリ診断の詳細はMSの「<a href="http://windows.microsoft.com/ja-JP/windows7/Diagnosing-memory-problems-on-your-computer">コンピューターのメモリの問題を診断する</a>」を参照してみてください。<br />
<ul></ul>
ひつじhttp://www.blogger.com/profile/03290674908777326201noreply@blogger.com0tag:blogger.com,1999:blog-1080418124815930891.post-16703726347224859282012-01-19T01:08:00.003+09:002012-01-19T01:52:59.670+09:00ブログにファビコンを設定してみましたサイトにアクセスした際に、アドレスバーやタブに表示されるアイコン「ファビコン」を当ブログでも設定して見ました。<br />
<br />
使用した画像はTwitterと同じ画像です。<br />
<br />
Bloggerの場合、ファビコンの設定が簡単なんですね。<br />
設定画面のレイアウトから左上のファビコンにある編集をクリック、使用したい画像を選択して設定するだけ(今回はPNGファイルをアップしました)。<br />
<table cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjRenfkXuIMSXCv5WkSgzyQZsFQW0QLUhLPCOBM8S5prXml1-8abSH8hyeDzzrKuxDBU2SjLGwgjz9lzh5pVVWTCss5os455FRqel1AY5t9kaNzuT6Q08mBQgzwSoVoe7TVeBRJygQ_PMw/s1600/%25E3%2583%2595%25E3%2582%25A1%25E3%2583%2593%25E3%2582%25B3%25E3%2583%25B3%25E8%25A8%25AD%25E5%25AE%259A.PNG" imageanchor="1" style="clear: left; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" height="163" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjRenfkXuIMSXCv5WkSgzyQZsFQW0QLUhLPCOBM8S5prXml1-8abSH8hyeDzzrKuxDBU2SjLGwgjz9lzh5pVVWTCss5os455FRqel1AY5t9kaNzuT6Q08mBQgzwSoVoe7TVeBRJygQ_PMw/s320/%25E3%2583%2595%25E3%2582%25A1%25E3%2583%2593%25E3%2582%25B3%25E3%2583%25B3%25E8%25A8%25AD%25E5%25AE%259A.PNG" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">ファビコンにある編集を選択し</td><td class="tr-caption" style="text-align: center;"><br /></td><td class="tr-caption" style="text-align: center;"><br /></td><td class="tr-caption" style="text-align: center;"><br /></td><td class="tr-caption" style="text-align: center;"><br /></td><td class="tr-caption" style="text-align: center;"><br /></td><td class="tr-caption" style="text-align: center;"><br /></td><td class="tr-caption" style="text-align: center;"><br /></td></tr>
</tbody></table>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiL6G40YlKByztsL3NCJKvOqMKwzXicunFp_wsB7B8VdVpNmRNjWM_uAyYqEL0JziiABvhW7iev9vu_gszTLKDQrKNCdKfbxmUddxMqS0g6bb6nll4_E6Pkf_SmvZJGVTOf9dEzMgslJZY/s1600/%25E3%2583%2595%25E3%2582%25A1%25E3%2583%2593%25E3%2582%25B3%25E3%2583%25B3%25E8%25A8%25AD%25E5%25AE%259A2.PNG" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="152" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiL6G40YlKByztsL3NCJKvOqMKwzXicunFp_wsB7B8VdVpNmRNjWM_uAyYqEL0JziiABvhW7iev9vu_gszTLKDQrKNCdKfbxmUddxMqS0g6bb6nll4_E6Pkf_SmvZJGVTOf9dEzMgslJZY/s320/%25E3%2583%2595%25E3%2582%25A1%25E3%2583%2593%25E3%2582%25B3%25E3%2583%25B3%25E8%25A8%25AD%25E5%25AE%259A2.PNG" width="320" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">画像を選択するとサムネと「削除」が表示されアップ完了</td></tr>
</tbody></table>
通常は、16x16の.icoファイルを作って、favicon.icoという名前にし、サイトのルートにファイルを配置して<head></head>にタグを追加(タグの内容は<a href="http://ja.wikipedia.org/wiki/Favicon">Favicon - Wikipedia</a>を御覧ください)…なんてことをしなければならないけど、Bloggerは上記のようにファイルをアップするだけで自動変換して設置してくれました。<br />
<br />
簡単で良いですね。<br />
<br />
それにしても「Snipping Tool」は便利 :-)ひつじhttp://www.blogger.com/profile/03290674908777326201noreply@blogger.com0tag:blogger.com,1999:blog-1080418124815930891.post-64169758309235402742012-01-16T01:04:00.001+09:002012-01-16T19:00:56.732+09:00Androidアプリで使用するサイズの単位<a href="http://developer.android.com/guide/topics/resources/more-resources.html#Dimension">Android Developers - Dev Guide - Dimension</a><br />
<br />
Androidアプリで各サイズを指定するときの単位は以下のものがある。<br />
<br />
<b style="color: #3d85c6;">dp</b>(dip) - Density-independent Pixels<br />
160dpiの画面に対して1dp(1dip)=1pxとして扱い、実際のピクセル数はユーザーが利用している端末の解像度に応じて変化する。dpもdipも同じだが、dpを使ったほうがspとの関係がわかりやすい<br />
<br />
<b style="color: #3d85c6;">sp</b> - Scale-independent Pixels<br />
dpに似ているが、ユーザーが設定しているフォントサイズに応じて変化する。このため、フォントサイズの指定はspを使うことが推奨されている。実際のピクセル数は解像度とフォントサイズに準ずる<br />
<br />
<b style="color: #3d85c6;">pt</b> - Points<br />
物理的な画面サイズの1/72インチを1ptとして扱う<br />
<br />
<b style="color: #3d85c6;">px</b> - Pixels<br />
使用している画面のピクセル数。デバイスによってピクセル数が異なる場合があるため、この単位は推奨されない<br />
<br />
<b style="color: #3d85c6;">mm</b> - Millimeters<br />
物理的な画面サイズでのミリメートル単位の長さ<br />
<br />
<b style="color: #3d85c6;">in</b> - Inches<br />
物理的な画面サイズでのインチ単位の長さ<br />
<br />
res/valuesの下にdimens.xmlなどで大きさを定義することができる<br />
<pre class="brush: xml"><?xml version="1.0" encoding="utf-8"?>
<resources>
<dimen name="textview_height">25dp</dimen>
<dimen name="textview_width">150dp</dimen>
<dimen name="ball_radius">30dp</dimen>
<dimen name="font_size">16sp</dimen>
</resources>
</pre>
<br />
アプリケーションコードから参照する場合は<br />
<pre class="brush:java">float font_size = getResources().getDimension(R.dimen.font_size);
</pre>
と書き、xmlから参照する場合は<br />
<pre class="brush:xml"><textview android:layout_height="@dimen/textview_height" android:layout_width="@dimen/textview_width" android:textsize="@dimen/font_size">
</textview></pre>
と書くようです。ひつじhttp://www.blogger.com/profile/03290674908777326201noreply@blogger.com0tag:blogger.com,1999:blog-1080418124815930891.post-64204160273470306232012-01-15T22:34:00.003+09:002012-01-16T19:00:48.040+09:00AndroidアプリのデザインガイドAndroid DevelopersのBlogの以下のエントリーで紹介されてます。<br />
<a href="http://android-developers.blogspot.com/2012/01/introducing-android-design-site.html?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+blogspot%2FhsDu+%28Android+Developers+Blog%29">Introducing the Android Design site </a><br />
<br />
詳しい内容はこちらのページ。<br />
<a href="http://developer.android.com/design/get-started/principles.html">Android Design</a>ひつじhttp://www.blogger.com/profile/03290674908777326201noreply@blogger.com0