<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
		xmlns:xhtml="http://www.w3.org/1999/xhtml"
>

<channel>
	<title>yamablo &#187; Android</title>
	<atom:link href="http://yamablo.com/category/android/feed" rel="self" type="application/rss+xml" />
	<link>http://yamablo.com</link>
	<description>Just another WordPress weblog</description>
	<lastBuildDate>Sun, 01 Aug 2010 02:53:20 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://yamablo.com/category/android/feed" />
		<item>
		<title>Android アプリ開発時の汎用関数の紹介</title>
		<link>http://yamablo.com/2010/05/16-222757.php</link>
		<comments>http://yamablo.com/2010/05/16-222757.php#comments</comments>
		<pubDate>Sun, 16 May 2010 13:27:57 +0000</pubDate>
		<dc:creator>yama3</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[モバイル]]></category>
		<category><![CDATA[Java]]></category>

		<guid isPermaLink="false">http://yamablo.com/?p=1227</guid>
		<description><![CDATA[自分がAndroid アプリの開発をやるようになって、これでもう1年は経過したのではないかと思っています。1年経った今でも、Androidアプリを開発するときは分からないことが多く、分からないことが出てくるたびにGoog [...]]]></description>
			<content:encoded><![CDATA[<p>自分がAndroid アプリの開発をやるようになって、これでもう1年は経過したのではないかと思っています。1年経った今でも、Androidアプリを開発するときは分からないことが多く、分からないことが出てくるたびにGoogle先生のお世話になったり、過去に自分が書いたコードを探して見てみる、などということをしてきました。そんな中で、自分がAndroid アプリを開発する際に比較的よく使う関数群を汎用関数として、Utilクラスとしてまとめてみましたのでその一部を紹介します。</p>
<h3>バージョン情報の取得</h3>
<p>Androidアプリケーションには、1つのアプリケーションにつき必ず1つの<strong>AndroidManifest.xml</strong>というファイルが存在します。このAndroidManifest.xmlファイルには、アプリケーションの名前や使用するインテント名、サービス名、バージョン情報などなど多くの情報がXMLによって書かれています。このAndroidManifest.xmlファイルに書かれているバージョン情報を取得し、そのバージョンによって処理を変える場合があります。そこで、現在のアプリケーションのバージョンを知るための関数を2つ作成しました。</p>
<h4>作成したバージョン情報取得関数</h4>
<p><code>
<pre class="dos">
// バージョン情報の取得関連
public static int getVersionCode( Context context ) {
    int ver;
    try {
        ver = context.getPackageManager().getPackageInfo( context.getPackageName(), 1 ).versionCode;
    } catch (NameNotFoundException e) {
        ver = -1;
    }
    return ver;
}

public static String getVersionName( Context context ) {
    String ver;
    try {
        ver = context.getPackageManager().getPackageInfo( context.getPackageName(), 1 ).versionName;
    } catch (NameNotFoundException e) {
        ver = "";
    }
    return ver;
}
</pre>
<p></code></p>
<h4>説明</h4>
<p>Android のバージョンには2種類あり、1つ目は整数値で表現された番号。2つ目は1.3.12などのように詳細な情報が文字列として表現されているバージョン名です。今回作成した関数では前者をVersionCode、後者をVersionNameとして取得しています。なお、これらの情報はContextクラスから、PackageManagerクラスを取得し、そこからさらにPackageInfoを取得するとversionCodeとversionNameの情報が得られます。それらを単純にgetVersionCode, getVersionNameとした関数です。</p>
<p><span id="more-1227"></span></p>
<h3>デバッグモードでの実行かどうかを確かめる</h3>
<p>Android アプリケーションを開発する際はりリース版とは違い、多くの情報を出力させることでデバッグの効率を高めたくなることが多いかと思います。そこで単純に、今実行しているモードがデバッグモードであるかどうかを取得する関数を作ってみました。</p>
<h4>作成したデバッグモードであるかを確かめる関数</h4>
<p><code>
<pre class="dos">
public static boolean isDebug( Context context ) {
    PackageManager pm = context.getPackageManager();
    ApplicationInfo ai = new ApplicationInfo();
    try {
        ai = pm.getApplicationInfo( context.getPackageName(), 0 );
    } catch( NameNotFoundException e ) {
        ai = null;
        return false;
    }
    if( (ai.flags &amp; ApplicationInfo.FLAG_DEBUGGABLE) == ApplicationInfo.FLAG_DEBUGGABLE ) {
        return true;
    }
    return false;
}
</pre>
<p></code></p>
<h3>プリファレンスの情報を読み書きする関数</h3>
<p>Android アプリでは、アプリ上で必要になるデータを簡易的に保持するための仕組みとしてプリファレンスと呼ばれるものがあります。このプリファレンスへの書き込み・読み込みを簡単にするための関数です。</p>
<h4>作成したプリファレンス読み書き関数</h4>
<p><code>
<pre class="dos">
public static void setEnvValue( Context ctx, String key, String value ) {
    SharedPreferences pref = ctx.getSharedPreferences( Util.APP_NAME, Context.MODE_PRIVATE );
    SharedPreferences.Editor editor = pref.edit();
    editor.putString( key, value );
    editor.commit();
}

public static void setEnvValue( Context ctx, String key, int value ) {
    Util.setEnvValue( ctx, key, String.valueOf(value) );
}

public static String getEnvValueStr( Context ctx, String key ) {
    SharedPreferences pref = ctx.getSharedPreferences( Util.APP_NAME, Context.MODE_PRIVATE );
    return pref.getString( key, "" );
}

public static int getEnvValueInt( Context ctx, String key ) {
    SharedPreferences pref = ctx.getSharedPreferences( Util.APP_NAME, Context.MODE_PRIVATE );
    return pref.getInt( key, 0 );
}
</pre>
<p></code></p>
<h3>ログの出力関数</h3>
<p>デバッグ時にはログを出力させたいけれど、リリース時にはデバッグ情報は出力させたくない、という人が多いでしょう。それを実現させるために、以下のようなログ出力関数を使ってみてはいかがでしょうか？なお、2つ目のExceptionLog関数は、例外情報を出力させるのにいい方法はないか？と思って試しに作ってみたものです。</p>
<h4>作成したログ出力関連関数</h4>
<p><code>
<pre class="dos">
public static void logMethod( Context ctx, String msg ) {
    if( Util.isDebug(ctx) == true ) {
        Log.v( "Log", msg );
    }
}

public static void ExceptionLog( Context ctx, Exception e ) {
    if( Util.isDebug(ctx) == true ) {
        Log.v( "ExceptionLog", e.getCause().toString() );
    }
}
</pre>
<p></code></p>
<h3>まとめ</h3>
<p>実際にはここで紹介した関数以外にも、ダイアログを表示させる関数や、トーストを表示させる関数、Assetsフォルダからファイルをコピーする関数などなどいろいろな関数を作成しています。そういった情報も今後、公開していこうかと思います。</p>
<p><strong>関連記事</strong>
<ul class="similar-posts">
<li><a href="http://yamablo.com/2009/12/13-112411.php" title="Androidでタグクラウドを実装する（ソースコード付き）">Androidでタグクラウドを実装する（ソースコード付き）</a></li>
<li><a href="http://yamablo.com/2009/11/23-224843.php" title="Androidアプリ開発中">Androidアプリ開発中</a></li>
<li><a href="http://yamablo.com/2010/01/07-105953.php" title="JavaとC++のコラボレーション【JNI】">JavaとC++のコラボレーション【JNI】</a></li>
<li><a href="http://yamablo.com/2009/12/01-093135.php" title="Androidアプリ開発 プログレスダイアログの実装">Androidアプリ開発 プログレスダイアログの実装</a></li>
<li><a href="http://yamablo.com/2009/09/23-114828.php" title="[Android開発] オプションメニューの生成とアイコン">[Android開発] オプションメニューの生成とアイコン</a></li>
</ul>
<p><!-- Similar Posts took 17.812 ms --></p>
]]></content:encoded>
			<wfw:commentRss>http://yamablo.com/2010/05/16-222757.php/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://yamablo.com/2010/05/16-222757.php" />
	</item>
		<item>
		<title>Android Marketに公開して3週間</title>
		<link>http://yamablo.com/2010/05/01-223615.php</link>
		<comments>http://yamablo.com/2010/05/01-223615.php#comments</comments>
		<pubDate>Sat, 01 May 2010 13:36:15 +0000</pubDate>
		<dc:creator>yama3</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[モバイル]]></category>
		<category><![CDATA[mixi]]></category>
		<category><![CDATA[アプリケーション]]></category>
		<category><![CDATA[ブックリスト]]></category>

		<guid isPermaLink="false">http://yamablo.com/?p=1223</guid>
		<description><![CDATA[先日、楽天のクレジットカードを契約しまして、無事にAndroid Marketに自分の開発したアプリケーションをアップロードすることができました。
今までは、クレジットカードを所有していないがために、Android Ma [...]]]></description>
			<content:encoded><![CDATA[<p>先日、楽天のクレジットカードを契約しまして、無事にAndroid Marketに自分の開発したアプリケーションをアップロードすることができました。</p>
<p>今までは、クレジットカードを所有していないがために、Android Marketにアップロードすることができず、代わりにappli.jp(<a href="https://www.application.jp/" target="_blank">appli.jpトップページ / Androidアプリ ダウンロードマーケットappli.jp</a>)というサイトにアプリケーションをアップロードして公開していました。実際に、Android Marketにアップロードして3週間経った感想としては、appli.jpと比べてやはり、認知度が違うなぁということを実感しています。appli.jpでは3ヶ月以上公開していても、総ダウンロード数が50件もいかなかったものが、Android Marketに公開したら、たった2週間ほどで1,000ダウンロードを突破するという状況です。さすが、Google の提供する公式マーケットだなぁという感じです。</p>
<h3>Android Marketへの公開で困ったこと</h3>
<p>Android Marketに公開して困ったことが1つあります。最初に公開したアプリで発覚したことなのですが、アプリをリリースする際に用いたkeystoreファイルを削除してしまうと、アプリケーションをアップデートすることができない、ということです。これには、アプリケーションの公開手順を説明する必要があるので、公開手順を簡単に説明します。</p>
<h4>アプリケーションの公開手順</h4>
<p>まず、EclipseなどのSDKを用いてAndroid アプリケーションを開発します。開発し終わったら、それをUnsignedのapkファイルとして書き出します。次にコマンドプロンプトなどを用いて、キーストア・ファイルを生成し、そのキーストア・ファイルをUnsignedのapkファイルを1つにまとめ上げて、署名付きのapkファイルを生成し、このapkファイルをマーケットにアップロードすることでAndroid アプリケーションを公開することができます。</p>
<p><span id="more-1223"></span></p>
<h4>何が問題？</h4>
<p>問題なのは、appli.jpではアプリケーションのバージョンアップ時に、キーストア・ファイルがバージョンアップ前のキーストア・ファイルと同一であるかどうか？はチェックしないようです。そのため、キーストア・ファイルを削除せずに残しておかなければならない、ということを知らなかったため、最初にアップロードしたアプリケーションはキーストア・ファイルを削除してしまっており、<strong>バージョンアップさせることができない</strong>という状況になりました。これについでは対策はあるのかないのか、全く分からないので諦めようかとも思っています。</p>
<p>この件で勉強したため、2本目にリリースしたアプリケーションについてはちゃんとキーストア・ファイルを削除せず、保管しておくことにしていますｗ</p>
<h3>自分が公開しているアプリケーション</h3>
<p>というわけで、自分が公開しているアプリケーションに関して、ここでちょっとだけ宣伝でもしておきます。公開しているアプリケーションは全部で今現在は2本です。また現在開発中のアプリケーションが1本。構想段階のアプリケーションが1本という状況です。なので、もう少し時間が経ったらまたアプリケーションが増えることでしょう。</p>
<h4>mixiPicChar</h4>
<p>自分が公開しているアプリケーションの1本目がこの<strong>mixiPicChar</strong>です。これが例の一番初めに公開したアプリケーションでバージョンアップさせることができなくなってしまったアプリケーションになります。</p>
<p>このアプリケーションは、かなり単純なアプリケーションで、Simejiのマッシュアップ・アプリケーションです。そのため、このアプリケーションをご利用いただくには日本語IMEとしてSimejiを用いている必要があります。このアプリケーションの目的はかなり単純で、mixiで利用可能な絵文字を入力するためだけの支援アプリです。総開発時間が3時間にも満たないというアプリケーションではあるが、ダウンロード数は2週間で1,000件を突破するというもので自分でもけっこうビックリしています。</p>
<h4>ブックリスト</h4>
<p>このアプリケーションは、蔵書管理用のアプリケーションです。自分が所有する本のバーコードを読み取ることにより、楽天APIを経由して書籍の情報を取得し、その書籍情報を端末内に蓄積していくことができるアプリケーションです。バーコードの情報読み取りには別アプリケーションを経由しているため、そのバーコード読み取り用アプリケーションがインストールされている必要性はありますが、公開から1週間で現在400ダウンロードといったところです。こちらのアプリケーションは荒削りな部分が多いので、これからバージョンアップを繰り返すことで、より便利なアプリケーションに仕上げていこうかと思っています。</p>
<p><strong>関連記事</strong>
<ul class="similar-posts">
<li><a href="http://yamablo.com/2009/04/11-213909.php" title="mixiアプリでMovableTypeの記事を表示させる。">mixiアプリでMovableTypeの記事を表示させる。</a></li>
<li><a href="http://yamablo.com/2010/07/31-133013.php" title="HTML5/CSS3とスマートフォン・アプリケーション">HTML5/CSS3とスマートフォン・アプリケーション</a></li>
<li><a href="http://yamablo.com/2009/10/30-203845.php" title="Android Donutsが配信されました">Android Donutsが配信されました</a></li>
<li><a href="http://yamablo.com/2009/05/06-002651.php" title="今月の参加予定の勉強会">今月の参加予定の勉強会</a></li>
<li><a href="http://yamablo.com/2009/10/09-115054.php" title="Androidアプリケーションの公開方法（署名付きapkファイルの作成）">Androidアプリケーションの公開方法（署名付きapkファイルの作成）</a></li>
</ul>
<p><!-- Similar Posts took 15.097 ms --></p>
]]></content:encoded>
			<wfw:commentRss>http://yamablo.com/2010/05/01-223615.php/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://yamablo.com/2010/05/01-223615.php" />
	</item>
		<item>
		<title>[Androidアプリ] EStrong Exploler</title>
		<link>http://yamablo.com/2009/12/22-011324.php</link>
		<comments>http://yamablo.com/2009/12/22-011324.php#comments</comments>
		<pubDate>Mon, 21 Dec 2009 16:13:24 +0000</pubDate>
		<dc:creator>yama3</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[UNIX/Linux]]></category>
		<category><![CDATA[FTP]]></category>
		<category><![CDATA[Samba]]></category>
		<category><![CDATA[アプリ]]></category>

		<guid isPermaLink="false">http://yamablo.com/?p=895</guid>
		<description><![CDATA[Androidで自分が使っているファイラーアプリ（EStrong Exploler）に先日バージョンアップがあり、とても便利な機能が付いたのでブログに書いてみようと思います。ファイラーといえば、Astroあたりが人気のよ [...]]]></description>
			<content:encoded><![CDATA[<p>Androidで自分が使っているファイラーアプリ（<strong>EStrong Exploler</strong>）に先日バージョンアップがあり、とても便利な機能が付いたのでブログに書いてみようと思います。ファイラーといえば、<strong>Astro</strong>あたりが人気のようだが、自分は、<strong>EStrong Exploler</strong>を使っている。というのも、このアプリは、Android端末のSDカード以外にも実はSambaサーバーのフォルダも参照できるようになっている。これは、自宅などでSambaサーバーを運用している人にとっては重宝する機能だと思う。自分自身、自宅内のみのローカルサーバーではあるが、Linux(CentOS)にSambaを起動させて運用している。そして、自宅内では無線LAN(Wi-Fi)も運用しているので、自宅にいるときにはHT03-AにてCentOSの共有フォルダ内を自由に参照することができるのだ。この機能が以前から重要だと考えていたので、<strong>EStrong Exploler</strong>を使い続けてきた。</p>
<h3>最近の新機能</h3>
<p><a href="http://yamablo.com/wp-content/uploads/2009/12/estrongExp00.jpg"><img alt="" src="http://yamablo.com/wp-content/uploads/2009/12/estrongExp00.jpg" class="aligncenter" width="450" /></a></p>
<p>上で書いたSambaサーバーを利用できるだけでもよかったのだが、さらに今回新機能がついた。それは、FTPサーバー内のフォルダを閲覧できるようになった。残念ながらファイルの閲覧・編集は現在は無理（？）のようだが、これは時期にバージョンアップにより可能になるだろう。とはいえ、FTPサーバー内のファイルをコピーして自端末内やSambaサーバー上に複製したり、自端末やSambaサーバー上からファイルをアップロードすることも可能である。Web運営を行っている人にとっては、ここまで便利なアプリはなかなかないだろう。実は昨日、<strong>AndFTP</strong>というアプリを見てインストールしてみたのだが、これはFTPサーバーとの接続がメインであって、自端末やSambaサーバーとのアップロード・ダウンロードについては考慮されていない気がする。</p>
<p><span id="more-895"></span><br />
<!-- img1 --><br />
<a href="http://yamablo.com/wp-content/uploads/2009/12/estrongExp10.jpg"><img alt="" src="http://yamablo.com/wp-content/uploads/2009/12/estrongExp10.jpg" class="aligncenter" width="400" /></a></p>
<h3>微妙な日本語化がおもしろい</h3>
<p>これは機能というわけではないのだが、もともとは海外製のアプリで、それを何かの翻訳機のようなもので日本語対応させているように思われる。例えば、メニューを開くと<strong>任務管理器</strong>なる項目が存在したり、「新しい」という項目があったりする。ほかにも、「私どもについて」とか「もう一度おすと終了するには」といった項目が操作をしていると出てきます。こういった部分がちょっと面白く疲れた気分のときに癒されたり癒されなかったり。</p>
<p><!-- img2 --><br />
<a href="http://yamablo.com/wp-content/uploads/2009/12/estrongExp06.png"><img alt="" src="http://yamablo.com/wp-content/uploads/2009/12/estrongExp06.png" class="aligncenter" width="250" /></a></p>
<h3>どんなAndroidユーザが使うべき？</h3>
<p>当然、Sambaサーバーを自宅内や会社内などの通常過ごす空間に導入されている方、また、Webサーバ（FTPサーバー）を運用し、Webページを作っている方なんかには役立つアプリケーションではないでしょうか？</p>
<p><strong>関連記事</strong>
<ul class="similar-posts">
<li><a href="http://yamablo.com/2009/09/17-222346.php" title="android 路線探索アプリの比較">android 路線探索アプリの比較</a></li>
<li><a href="http://yamablo.com/2009/10/14-201302.php" title="HT-03Aにインストールしているアプリ一覧">HT-03Aにインストールしているアプリ一覧</a></li>
<li><a href="http://yamablo.com/2009/11/23-224843.php" title="Androidアプリ開発中">Androidアプリ開発中</a></li>
<li><a href="http://yamablo.com/2010/05/01-223615.php" title="Android Marketに公開して3週間">Android Marketに公開して3週間</a></li>
<li><a href="http://yamablo.com/2010/05/16-222757.php" title="Android アプリ開発時の汎用関数の紹介">Android アプリ開発時の汎用関数の紹介</a></li>
</ul>
<p><!-- Similar Posts took 16.908 ms --></p>
]]></content:encoded>
			<wfw:commentRss>http://yamablo.com/2009/12/22-011324.php/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://yamablo.com/2009/12/22-011324.php" />
	</item>
		<item>
		<title>Androidでタグクラウドを実装する（ソースコード付き）</title>
		<link>http://yamablo.com/2009/12/13-112411.php</link>
		<comments>http://yamablo.com/2009/12/13-112411.php#comments</comments>
		<pubDate>Sun, 13 Dec 2009 02:24:11 +0000</pubDate>
		<dc:creator>yama3</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[プログラミング]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[タグクラウド]]></category>

		<guid isPermaLink="false">http://yamablo.com/?p=856</guid>
		<description><![CDATA[Android開発を行っていて、意外にもライブラリなどが存在しなかったのがタグクラウドです。まぁ、見つからないなら自分で作ってしまえ、という考えで下の画像のようなタグクラウドをちょっと実装してみました。なので、そのTag [...]]]></description>
			<content:encoded><![CDATA[<p>Android開発を行っていて、意外にもライブラリなどが存在しなかったのが<strong>タグクラウド</strong>です。まぁ、見つからないなら自分で作ってしまえ、という考えで下の画像のようなタグクラウドをちょっと実装してみました。なので、そのTagCroudクラスとそれを利用するために必要なTagクラスの2つをここに公開します。自分自身Javaにはあまり強くないことと、Androidアプリ開発を始めてまだ間もないということからおかしな実装をしている部分もあるかと思いますが、その場合にはコメントにてお知らせいただくか、twitter(<a href="http://twitter.com/1987yama3" target="_blank">@1987yama3</a>)までご連絡ください。</p>
<p><a href="http://yamablo.com/2009/12/13-112411.php/tagcroud" rel="attachment wp-att-861"><img src="http://yamablo.com/wp-content/uploads/2009/12/tagCroud-300x213.png" alt="tagCroud" title="tagCroud" width="300" height="213" class="aligncenter size-medium wp-image-861" /></a></p>
<h3>Tagクラス</h3>
<p>タグクラスはタグ(語句とその出現数)を格納することが主な役割です。また、これに加えてタグクラウド上でタグをクリック（タップ）した際の挙動をここに記述できるようにしています。具体的には、クリック時には、タグクラス内のIntent型のメンバ変数intentを引数としてインテントを発行します。タグクラスのメンバ変数(語句、出現数、インテント）はSetメソッドによりセットすることができます。</p>
<p><span id="more-856"></span></p>
<h4>ソースコード</h4>
<p>ソースコードを以下に記します。また、ソースコードは記事末尾のリンクからダウンロードすることが可能ですので、ソースコードの利用にはそちらをご利用ください。</p>
<p><code>
<pre class="dos">
import android.content.Intent;
public class Tag {
    /** タグに表示される文字列 */
    private String word;

    /** タグの重要度 */
    private int    count;

    /** タグがクリックされた際に発行するインテント */
    private Intent intent = new Intent();

    /**
     * コンストラクタ
     */
    public Tag( String _word, int _count, Intent _intent ) {
        Set( _word, _count, _intent );
    }

    public Tag( String _word, int _count ) {
        Set( _word, _count );
    }

    public Tag( String _word ) {
        Set( _word );
    }

    public Tag( String _word, Intent _intent ) {
        Set( _word, _intent );
    }

    /**
     * 重要度を増やすためのメソッド
     */
    public void CountUp() {
        this.CountUp(1);
    }

    public void CountUp( int c ) {
        this.Set( this.getCount() + c );
    }

    /**
     * セッター
     */
    public void Set(String _word) {
        this.word = _word;
    }

    public void Set(int _count) {
        this.count = _count;
    }

    public void Set( Intent _intent ) {
        intent = _intent;
    }

    public void Set( String _word, int _count ) {
        Set( _word );
        Set( _count );
    }

    public void Set( String _word, Intent _intent ) {
        Set( _word );
        Set( _intent );
    }

    public void Set( String _word, int _count, Intent _intent ) {
        Set( _word );
        Set( _count );
        Set( _intent );
    }

    /**
     * ゲッター
     */
    public Intent getIntent() {
        return intent;
    }

    public String getWord() {
        return word;
    }

    public int getCount() {
        return count;
    }

}
</pre>
<p></code></p>
<h3>TagCroudクラス</h3>
<p>TagCroudクラスはLinearLayoutクラスを継承したクラスです。継承元がLinearLayoutクラスということが正しい判断であるかどうかは分からないのですが、とりあえず上手く動いているので良しとします。（ってこんなんでいいのかな？）</p>
<p>TagCroudクラスで設定可能な項目は、タグの文字の色とタグがクリック可能であるかどうか、それに加え、表示するタグの追加です。タグの削除はできません。実装ミスではなく仕様ですｗ。addメソッドにより、tagを追加することができます。そして、tagを追加し終わって、タグクラウドを描くタイミングになれば、Drawメソッドを実行です。Drawメソッド内では、タグクラウドの持つtagの出現数を元にタグの重み付けを1から10の10段階で行います。このタグの重みを元に、タグクラウドで表示される文字の大きさが決定されます。最後に描画処理ですが、これは自分自身が以前に大学のゼミでも発表した<strong>箱詰め問題</strong>の近似アルゴリズム(<strong>NF, Next Fit</strong>)を用いて実装しています。こんなところで、ゼミでの学習内容が生かされるとは、という感じですね。</p>
<h4>ソースコード</h4>
<p>ソースコードを以下に記します。また、ソースコードは記事末尾のリンクからダウンロードすることが可能ですので、ソースコードの利用にはそちらをご利用ください。</p>
<p><code>
<pre class="dos">
package yama3.biz.BookList;

import java.util.ArrayList;

import android.content.Context;
import android.content.Intent;
import android.graphics.Color;
import android.view.View;
import android.widget.Button;
import android.widget.LinearLayout;

public class TagCroud extends LinearLayout {
    /** Viewのサイズ */
    private int                 width;
    private int                 height;

    /** 表示するtagのリスト */
    protected ArrayList&lt;Tag&gt;    element = new ArrayList&lt;Tag&gt;();

    /** 呼び出されたアクティビティ */
    private static Context      context;

    /** タグの文字の色 */
    private int                 TextColor;

    /** タグはクリック可能かどうか */
    private boolean             tagClickable;

    /**
     * コンストラクタ
     * @param _context
     */
    public TagCroud(Context _context) {
        super(_context);
        context = _context;
        this.setOrientation( LinearLayout.VERTICAL );
        this.TextColor = Color.argb( 255, 255, 255, 255 );    // テキストの色の初期値は白
        tagClickable = false;
        width = 320;
    }

    public void Draw() {
        Button btn;
        int i;
        int twidth = 0;
        ArrayList&lt;Integer&gt; weight = setWeight();
        for( i=-1; i+1&lt;size(); i++ ) {
            LinearLayout layout2 = new LinearLayout( context );
            layout2.setOrientation( LinearLayout.HORIZONTAL );
            addView( layout2, new LinearLayout.LayoutParams( LayoutParams.FILL_PARENT,
                                                             LayoutParams.WRAP_CONTENT ) );
            twidth = 0;
            while( twidth &lt;= 320 &amp;&amp; i+1&lt;size() ) {
                btn = new Button( context );
                btn.setText( element.get(i+1).getWord() );
                btn.setTextSize( 5.0f*weight.get(i+1)+5.0f );
                btn.setBackgroundColor( Color.argb( 0, 0, 0, 0 ) );
                btn.setTextColor( TextColor );
                twidth += btn.getTextSize() * btn.length() + 10;
                if( twidth &gt;= 320 ) {
                    break;
                } else {
                    i++;
                    btn.setPadding( 5, 0, 5, 0 );
                    btn.setClickable( isClickable() );
                    btn.setId( i );
                    if( isClickable() ) {
                        btn.setOnClickListener( new OnClickListener() {
                            public void onClick(View v) {
                                int id = v.getId();
                                TagCroud.context.startActivity(element.get(id).getIntent() );
                            }
                        });
                    }
                    layout2.addView( btn, new LinearLayout.LayoutParams( LayoutParams.WRAP_CONTENT,
                                                                         LayoutParams.WRAP_CONTENT ) );
                }
            }
        }
    }

    /**
     * 各タグの重みを計算する。重みは、1～10の10段階とする。
     * @return
     */
    private ArrayList&lt;Integer&gt; setWeight() {
        ArrayList&lt;Integer&gt; weight = new ArrayList<Integer>();
        int max = 0;
        for( int i=0; i&lt;size(); i++ ) {
            if( max &lt;= element.get(i).getCount() ) {
                max = element.get(i).getCount();
            }
        }

        for( int i=0; i&lt;size(); i++ ) {
            int w = (int)( (10*element.get(i).getCount()/max) );
            weight.add( w );
        }
        return weight;
    }

    /**
     * ビューのサイズが変更された際に呼び出される
     */
    protected void onSizeChanged(int w, int h, int oldw, int oldh){
        width = w;
        height = h;
    }

    public int width() {
        return width;
    }

    public int height() {
        return height;
    }

    /**
     * タグを追加する
     * @param t
     */
    public void add( Tag t ) {
        int idx = exist(t.getWord());
        if( idx != -1 ) {
            element.get(idx).CountUp(t.getCount());
        } else {
            element.add( new Tag( t.getWord(), t.getCount(), t.getIntent() ) );
        }
    }

    public void add( Tag t, Intent intent ) {
        int idx = exist(t.getWord());
        if( idx != -1 ) {
            element.get(idx).CountUp(t.getCount());
        } else {
            element.add( new Tag( t.getWord(), t.getCount(), intent ) );
        }
    }

    /**
     * タグクラウド内に存在するタグの数を取得する
     * @return
     */
    public int size() {
        return element.size();
    }

    /**
     * 指定されたWordの挿入されている数を取得する
     * @param word
     * @return
     */
    public int GetCount( String word ) {
        int idx = exist( word );
        if( idx != 0 ) {
            return element.get(idx).getCount();
        } else {
            return 0;
        }
    }

    /**
     * 指定されたWordの重み(1～10)を取得する
     * @param word
     * @return
     */
    public int GetWeight( String word ) {
        ArrayList&lt;Integer&gt; weight = setWeight();
        int pos = exist( word );
        return weight.get(pos);
    }

    /**
     * 指定されたwordを持つTagをリストに含んでいればそのインデックスを、
     * 含んでいなければ、-1を返す。
     * @param word
     * @return
     */
    private int exist( String word ) {
        int k = element.size();
        for( int i=0; i&lt;k; i++ ) {
            if( element.get(i).getWord().equals(word) ) {
                return i;
            }
        }
        return -1;
    }

    /**
     * セッター、ゲッターの定義
     *     public void    setTextColor( int )
     *     public int     getTextColor()
     *     public void    setClickable( boolean )
     *     public boolean isClickable()
     */
    public void setTextColor( int c ) {
        this.TextColor = c;
    }

    public int getTextColor() {
        return this.TextColor;
    }

    public void setClickable( boolean bool ) {
        this.tagClickable = bool;
    }

    public boolean isClickable() {
        return this.tagClickable;
    }

}
</code></pre>
<h3>ダウンロード</h3>
<ul>
<li><a href="http://yamablo.com/?download=Tag%E3%82%AF%E3%83%A9%E3%82%B9(Tag.java)">Tagクラス(Tag.java)</a></li>
<li><a href="http://yamablo.com/?download=TagCroud%E3%82%AF%E3%83%A9%E3%82%B9(TagCroud.java)">TagCroudクラス(TagCroud.java)</a></li>
</ul>
<p><strong>関連記事</strong>
<ul class="similar-posts">
<li><a href="http://yamablo.com/2010/05/16-222757.php" title="Android アプリ開発時の汎用関数の紹介">Android アプリ開発時の汎用関数の紹介</a></li>
<li><a href="http://yamablo.com/2008/11/11-003903.php" title="[C++] Dimensionクラス">[C++] Dimensionクラス</a></li>
<li><a href="http://yamablo.com/2009/09/23-114828.php" title="[Android開発] オプションメニューの生成とアイコン">[Android開発] オプションメニューの生成とアイコン</a></li>
<li><a href="http://yamablo.com/2008/12/19-103002.php" title="[C++]Hashクラス・改訂版,">[C++]Hashクラス・改訂版,</a></li>
<li><a href="http://yamablo.com/2009/12/01-093135.php" title="Androidアプリ開発 プログレスダイアログの実装">Androidアプリ開発 プログレスダイアログの実装</a></li>
</ul>
<p><!-- Similar Posts took 22.768 ms --></p>
]]></content:encoded>
			<wfw:commentRss>http://yamablo.com/2009/12/13-112411.php/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://yamablo.com/2009/12/13-112411.php" />
	</item>
		<item>
		<title>Androidアプリ開発 プログレスダイアログの実装</title>
		<link>http://yamablo.com/2009/12/01-093135.php</link>
		<comments>http://yamablo.com/2009/12/01-093135.php#comments</comments>
		<pubDate>Tue, 01 Dec 2009 00:31:35 +0000</pubDate>
		<dc:creator>yama3</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[プログラミング]]></category>
		<category><![CDATA[アプリ開発]]></category>
		<category><![CDATA[スレッド]]></category>
		<category><![CDATA[ダイアログ]]></category>

		<guid isPermaLink="false">http://yamablo.com/?p=824</guid>
		<description><![CDATA[Androidアプリを開発していて、少し実装に手間取ってしまったことを備忘録がてらここに書いておこうと思います。今回手間取った内容は、プログレスダイアログの実装です。プログレスダイアログというのは、下の画像のようなダイア [...]]]></description>
			<content:encoded><![CDATA[<p>Androidアプリを開発していて、少し実装に手間取ってしまったことを備忘録がてらここに書いておこうと思います。今回手間取った内容は、プログレスダイアログの実装です。プログレスダイアログというのは、下の画像のようなダイアログで、時間のかかる処理を行っている間、画面に「処理中である」ということを示す画面を表示し、処理が終了したらそのまま消えるダイアログのことです。時間のかかる処理といえば、多くは「ウェブ接続」を行い、そこでデータを取得しデータをパースし、必要な情報をディスプレイ上に表示する、などが存在しますね。ではその実装方法です。</p>
<p><a href="http://yamablo.com/wp-content/uploads/2009/12/progressDialog.jpg" style="margin: 0px auto; width: 212px; text-align: center;"><img src="http://yamablo.com/wp-content/uploads/2009/12/progressDialog-212x300.jpg" alt="progressDialog" title="progressDialog" width="212" height="300" class="aligncenter size-medium wp-image-828" /></a><br />
<span id="more-824"></span></p>
<h3>実装方法</h3>
<h4>実装の簡単な説明</h4>
<p>多くのJavaアプリケーションの場合は、「通信中」などのプログレスダイアログを表示した上で、別スレッドを起動しスレッド上で実際の通信処理を行います。Androidアプリ開発の場合、Activity自身のスレッドのみがそのビューを変更できる、という制約があります。そのため、Android開発では、Handlerクラスとそのpost()メソッドを利用します。</p>
<p>ActivityにRunnableを実装(implements)し、run()メソッドにはダイアログを閉じる処理を書きます。また、時間のかかる処理を実行するスレッド(Thread)には、handlerオブジェクトと、Runnableを実装したActivityを渡します。続いて、Threadクラスのrun()メソッドの最後で、handler.post(activity);などとすることで、ダイアログを閉じることが可能になります。</p>
<p>言葉で説明しても分かりにくいと思うので、以下の例を参考にしてみてください。なお、必要なインポートファイルなど省略しています。</p>
<h4>サンプルソースコード</h4>
<p><code>
<pre class="dos">
public class ClassName extends Activity implements Runnable {
    private ProgressDialog progressDialog;

    @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);

            // 通信中ダイアログを表示させる。
            progressDialog = new ProgressDialog(this);
            progressDialog.setTitle("通信中");
            progressDialog.setMessage("データ取得中・・・");
            progressDialog.setIndeterminate(false);
            progressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
            progressDialog.show();

            Thread thread = new Thread(this);
            thread.start();
        }

    public void run() {
        // 時間のかかる処理をここに記述。

        handler.sendEmptyMessage(0);
    }

    private Handler handler = new Handler() {
        public void handleMessage(Message msg) {
            // 処理終了時の動作をここに記述。

            // プログレスダイアログ終了
            progressDialog.dismiss();
        }
    };
}
</pre>
<p></code></p>
<h3>まとめ</h3>
<p>Androidアプリ開発をしていて、プログレスダイアログを表示させた場面は多々発生するのですが、今持っている書籍には表示方法について何も書かれていなかったので、少しの間諦めていましたが、実際にウェブ上をいろいろ歩き回っていると情報は多くあるのですね。</p>
<h3>参考サイト</h3>
<ul>
<li><a href='http://kazina.seesaa.net/article/81523393.html' target='_blank'>kazina製ソフトあれこれ: Androidで「通信中」みたいなダイアログを表示する</a></li>
<li><a href='http://www.adakoda.com/android/000082.html' target='_blank'>プログレスダイアログ(ProgressDialog)を使用するには &#8211; 逆引きAndroid入門</a></li>
<li><a href='http://wikiwiki.jp/android/?UI%A5%B3%A5%F3%A5%DD%A1%BC%A5%CD%A5%F3%A5%C8%2FProgressDialog%A4%CE%BB%C8%A4%A4%CA%FD' target='_blank'>UIコンポーネント/ProgressDialogの使い方 &#8211; Android Wiki*</a></li>
<li><a href='http://www.techdoctranslator.com/android/guide/ui/dialogs' target='_blank'>3.3 ダイアログの作成 (ソフトウェア技術文書を勝手に翻訳)</a></li>
<li><a href='http://gallop.ddo.jp/blog/airia/2009/07/android-youtube-data-api-progressdialog.html' target='_blank'>Android : YouTube Data API を使ったキーワード検索（ProgressDialog 編） &#8211; AIRIA</a></li>
</ul>
<p><strong>関連記事</strong>
<ul class="similar-posts">
<li><a href="http://yamablo.com/2009/09/08-233437.php" title="Androidアプリの開発【XMLレイアウト】">Androidアプリの開発【XMLレイアウト】</a></li>
<li><a href="http://yamablo.com/2009/11/23-224843.php" title="Androidアプリ開発中">Androidアプリ開発中</a></li>
<li><a href="http://yamablo.com/2010/05/16-222757.php" title="Android アプリ開発時の汎用関数の紹介">Android アプリ開発時の汎用関数の紹介</a></li>
<li><a href="http://yamablo.com/2009/09/23-093445.php" title="Androidアプリ開発に関する本の紹介">Androidアプリ開発に関する本の紹介</a></li>
<li><a href="http://yamablo.com/2009/12/13-112411.php" title="Androidでタグクラウドを実装する（ソースコード付き）">Androidでタグクラウドを実装する（ソースコード付き）</a></li>
</ul>
<p><!-- Similar Posts took 17.739 ms --></p>
]]></content:encoded>
			<wfw:commentRss>http://yamablo.com/2009/12/01-093135.php/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://yamablo.com/2009/12/01-093135.php" />
	</item>
		<item>
		<title>Androidアプリ開発中</title>
		<link>http://yamablo.com/2009/11/23-224843.php</link>
		<comments>http://yamablo.com/2009/11/23-224843.php#comments</comments>
		<pubDate>Mon, 23 Nov 2009 13:48:43 +0000</pubDate>
		<dc:creator>yama3</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[プログラミング]]></category>
		<category><![CDATA[本]]></category>
		<category><![CDATA[awsAPI]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[アプリ開発]]></category>
		<category><![CDATA[楽天API]]></category>

		<guid isPermaLink="false">http://yamablo.com/?p=808</guid>
		<description><![CDATA[先週日曜日くらいから新しいAndroidアプリを開発中です。そして、そのAndroidアプリの機能実装がひと段落したため、ここから少しの間はデバッグ作業＆細かな仕様変更をやっていき、12月中旬ころに正式リリースできたらな [...]]]></description>
			<content:encoded><![CDATA[<p>先週日曜日くらいから新しいAndroidアプリを開発中です。そして、そのAndroidアプリの機能実装がひと段落したため、ここから少しの間はデバッグ作業＆細かな仕様変更をやっていき、12月中旬ころに正式リリースできたらなぁと思っています。</p>
<h3>使用しているサービス関係</h3>
<ul>
<li>BarcodeScanner アプリ</li>
<li>楽天API</li>
<li>AmazonWebService(AWS) API</li>
</ul>
<p>上記3サービスを利用したアプリを開発しています。大変だった部分は、AmazonWebService(AWS)部分でしょうか？AWSは先日仕様変更があり、リクエストURLに署名を加えなければならなくなったようで、この署名認証をJavaで実装しようと思っていたのですが、Web上をいろいろ探し回って、実装しても思うように動かずにどうしようかと苦戦していました。結局この署名認証は、自分の保有しているWebサーバー上のPHPスクリプトにリクエストを投げ、署名認証を行い、そのままPHP上でXMLファイルを取得し、XMLデータをJavaに返すように変更しました。つまり、自分のWebサーバーがダウンでもしたらアプリの機能にも影響が出てしまうような状態になっています。とりあえず、ここをなんとかして、Android内で署名を付加できるようにしたいなぁと思います。</p>
<p><span id="more-808"></span></p>
<h3>クローズド・ベータ版の提供のお知らせ</h3>
<p>今回作成したアプリは、書籍管理アプリです。各自の所有する書籍データをAndroid内で一元管理しよう、という趣旨のアプリケーションになります。そして、今回作成した書籍管理アプリを<strong>クローズド・ベータ版</strong>として、このブログをお読みいただいたAndroidユーザの方に提供しようかと思います。クローズド・ベータ版ということで動作保証は致しかねます。また、エラー情報の収集に向けて積極的に情報提供いただける方にお願いしたいと思います。詳細は以下にまとめます。</p>
<h4>対象者</h4>
<ul>
<li>E-mailまたはtwitterにて連絡の取れる方</li>
<li>日本語に支障がない方(自身が英語ができないため)</li>
<li>Android端末を保有している</li>
<li>.apkファイルからアプリをインストールできる方(勝手アプリのインストール)</li>
<li>バグ情報の提供、機能要望といったアプリ改善に協力して下さる方</li>
</ul>
<p>なお、勝手アプリのインストールは、<a href='http://www.taosoftware.co.jp/blog/2008/10/android_adb.html' target='_blank'>Taosoftware: Android ADB</a>や、<a href='http://www.adakoda.com/android/000218.html' target='_blank'>adb経由でアプリケーションを手動でインストール／アンインストールするには &#8211; 逆引きAndroid入門</a>などを<br />
確認してください。</p>
<h4>クローズド・ベータ版への応募方法</h4>
<ul>
<li>twitterにて：アカウント<a href="http://twitter.com/1987yama3" target="_blank">@1987yama3</a>へ、<br />
ダイレクト・メッセージをお願いします。</li>
<li>メールにて：送信先アドレスを<a href="mailto:1987yama3@gmail.com" target="_blank">1987yama3@gmail.com</a><br />
まで、ご連絡ください。</li>
<li>当ブログへのコメントにて：当ブログにコメントを残していただいても結構です。ただし、この場合はこちらから連絡が取れるように、コメント内にメールアドレスの記入をお願いします。</li>
</ul>
<h4>募集に関して</h4>
<dl>
<dt>募集期限</dt>
<dd>2009年11月30日まで</dd>
<dt>募集人数</dt>
<dd>約20名ほど</dd>
<dt>応募結果の確認</dt>
<dd>応募者みなさんに、成否を問わずご連絡いたします。</dd>
</dl>
<p>募集期限も募集人数もとりあえず設けていますが、おそらくこの枠は1つの区切りとして作っているだけで、期限も12月以降でもご連絡頂ければベータ版へご招待致しますし、人数も20名を超えても希望があれば招待する予定でいます。みなさまのご協力をお待ちしています。また、アプリの詳細を知りたい方も上記方法を利用して下されば詳細をお教えいたします。</p>
<table  class="g-tools_table">
<tr>
<td colspan="2"><span class="g-tools_title"><a href="http://www.amazon.co.jp/Google-Android%E5%AE%8C%E5%85%A8%E8%A7%A3%E8%AA%AC-%E3%82%A2%E3%82%B9%E3%82%AD%E3%83%BC%E3%83%A0%E3%83%83%E3%82%AF-%E3%82%A2%E3%82%B9%E3%82%AD%E3%83%BC%E6%9B%B8%E7%B1%8D%E7%B7%A8%E9%9B%86%E9%83%A8/dp/4756151302%3FSubscriptionId%3D15SMZCTB9V8NGR2TW082%26tag%3D1987yama3-22%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D4756151302" target="_top">Google Android完全解説 (アスキームック)</a><img src='http://www.assoc-amazon.jp/e/ir?t=1987yama3-22&#038;l=ur2&#038;o=9' width='1' height='1' border='0' alt='' /></span></td>
</tr>
<tr>
<td valign="top"><span class="g-tools_img"><a href="http://www.amazon.co.jp/Google-Android%E5%AE%8C%E5%85%A8%E8%A7%A3%E8%AA%AC-%E3%82%A2%E3%82%B9%E3%82%AD%E3%83%BC%E3%83%A0%E3%83%83%E3%82%AF-%E3%82%A2%E3%82%B9%E3%82%AD%E3%83%BC%E6%9B%B8%E7%B1%8D%E7%B7%A8%E9%9B%86%E9%83%A8/dp/4756151302%3FSubscriptionId%3D15SMZCTB9V8NGR2TW082%26tag%3D1987yama3-22%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D4756151302" target="_top"><img src="http://ecx.images-amazon.com/images/I/51WBaYlNTCL._SL160_.jpg"  alt="Google Android完全解説 (アスキームック)" /></a></span></td>
<td valign="top"><span class="g-tools_body">アスキー書籍編集部 </p>
<p>アスキー  2008-02-25<br />売り上げランキング : 205569</p>
<p><a href="http://www.amazon.co.jp/Google-Android%E5%AE%8C%E5%85%A8%E8%A7%A3%E8%AA%AC-%E3%82%A2%E3%82%B9%E3%82%AD%E3%83%BC%E3%83%A0%E3%83%83%E3%82%AF-%E3%82%A2%E3%82%B9%E3%82%AD%E3%83%BC%E6%9B%B8%E7%B1%8D%E7%B7%A8%E9%9B%86%E9%83%A8/dp/4756151302%3FSubscriptionId%3D15SMZCTB9V8NGR2TW082%26tag%3D1987yama3-22%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D4756151302" target="_top">Amazonで詳しく見る</a></span><span class="g-tools_by"> by <a href="http://www.goodpic.com/mt/aws/index.html" >G-Tools</a></span></td>
</tr>
</table>
<p><strong>関連記事</strong>
<ul class="similar-posts">
<li><a href="http://yamablo.com/2009/12/01-093135.php" title="Androidアプリ開発 プログレスダイアログの実装">Androidアプリ開発 プログレスダイアログの実装</a></li>
<li><a href="http://yamablo.com/2010/05/16-222757.php" title="Android アプリ開発時の汎用関数の紹介">Android アプリ開発時の汎用関数の紹介</a></li>
<li><a href="http://yamablo.com/2009/09/08-233437.php" title="Androidアプリの開発【XMLレイアウト】">Androidアプリの開発【XMLレイアウト】</a></li>
<li><a href="http://yamablo.com/2009/09/23-093445.php" title="Androidアプリ開発に関する本の紹介">Androidアプリ開発に関する本の紹介</a></li>
<li><a href="http://yamablo.com/2009/10/09-115054.php" title="Androidアプリケーションの公開方法（署名付きapkファイルの作成）">Androidアプリケーションの公開方法（署名付きapkファイルの作成）</a></li>
</ul>
<p><!-- Similar Posts took 16.966 ms --></p>
]]></content:encoded>
			<wfw:commentRss>http://yamablo.com/2009/11/23-224843.php/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://yamablo.com/2009/11/23-224843.php" />
	</item>
		<item>
		<title>Android 搭載端末一覧</title>
		<link>http://yamablo.com/2009/11/11-095109.php</link>
		<comments>http://yamablo.com/2009/11/11-095109.php#comments</comments>
		<pubDate>Wed, 11 Nov 2009 00:51:09 +0000</pubDate>
		<dc:creator>yama3</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[デバイス]]></category>
		<category><![CDATA[リスト]]></category>

		<guid isPermaLink="false">http://yamablo.com/?p=793</guid>
		<description><![CDATA[2009年11月段階で、公表されているAndroidの用途について具体的な商品を例にまとめてみます。ここで掲載しているAndroid 搭載端末はモバイル(携帯電話)だけに限らず、ノートPCやデスクトップPCのOSとしてA [...]]]></description>
			<content:encoded><![CDATA[<p>2009年11月段階で、公表されているAndroidの用途について具体的な商品を例にまとめてみます。ここで掲載しているAndroid 搭載端末はモバイル(携帯電話)だけに限らず、ノートPCやデスクトップPCのOSとしてAndroid を標準装備している端末であったり、デジタルフォトフレームであったりと全く他の商品も含めてAndroid を内部に利用しているものを書き出そうと思います。基本は携帯電話用OSとして開発されているAndroidであってもいろいろな使い道が出てくるようですね。</p>
<h3>DoCoMo HT03-A(携帯電話)</h3>
<p>まずは日本でもお馴染みとなっているDoCoMoから出ているHTC製の携帯電話である<strong>HT-03A</strong>。これについては何も話すことはなさそうなので、省略しちゃいましょう。</p>
<h3>デジタルフォトフレーム</h3>
<p>Androidをデジタルフォトフレームとして利用する試みも出てきているようです。タッチパネルを用いて動かすこともできるし、通信関連(Wi-Fiなど)との相性もいいようなので、デジタルフォトフレームとして、自宅の無線LANなどに参加させ、PCから表示させたい画像を送信する、という試みがいいですね。また、Android マーケットなどを利用して、デジタルフォトフレーム用のアプリなんかも登場すると面白そうだったり。</p>
<p><span id="more-793"></span></p>
<h3>カーナビゲーションシステム</h3>
<p>AndroidのGoogleマップの使いやすさなどを利用するのだと思うのですが、カーナビもAndroidで出来てしまいそうですね。HT-03Aだけでは、カーナビとして使うには少し貧弱な気もしますが、今のカーナビに使われている経路計算アルゴリズムや、様々なデータをAndroidアプリに集約することによって、カーナビができてしまいそうですね。しかも、ネットワークとの親和性が高いので、データの追加・更新などはこれも自宅の無線LANなどを利用して手軽にできそうですね。</p>
<h3>ネットブック</h3>
<p>最近日本での、競争が激しくなっているネットブックですが、ネットブックのOSにAndroidを採用する動きもあるようです。今までのネットブックはWindowsXPを採用しているものが多かったのですが、WindowsXPはかなり古い機種である、ということからもあまり積極的に使ってきたわけではないという背景があります。(今ではWindows7がネットブックの主流になるかもしれないが)そんな中で、出てきているAndroidは改良することでネットブックにも利用できるようになるのではないでしょうか？</p>
<h3>電子書籍リーダー</h3>
<p>米大手書店Barnes＆Nobleが2009年10月20日に発表した電子書籍リーダーである<strong>nook</strong>にはAndroidが利用されているとのことです。電子書籍リーダーは最近いろいろ発表されているようにも思いますが、ネット上から書籍データをダウンロードして、端末上で書籍データを読む、というスタイルからするとこれもやっぱりネットワークとの親和性の高いAndroidになるんですかね。ちなみにAmazon社から発売されているKindleではAndroidを使用していません。</p>
<h3>まとめ</h3>
<p>今、自分が知っている限りでAndroidを採用した端末はこれくらいでしょうか？これから先、もっともっとAndroidを採用した様々な端末が発表されそうですね。</p>
<p><strong>関連記事</strong>
<ul class="similar-posts">
<li><a href="http://yamablo.com/2009/10/30-203845.php" title="Android Donutsが配信されました">Android Donutsが配信されました</a></li>
<li><a href="http://yamablo.com/2009/09/23-093445.php" title="Androidアプリ開発に関する本の紹介">Androidアプリ開発に関する本の紹介</a></li>
<li><a href="http://yamablo.com/2009/10/07-213551.php" title="Android開発者用チートシート第2弾">Android開発者用チートシート第2弾</a></li>
<li><a href="http://yamablo.com/2009/10/14-201302.php" title="HT-03Aにインストールしているアプリ一覧">HT-03Aにインストールしているアプリ一覧</a></li>
<li><a href="http://yamablo.com/2009/10/09-115054.php" title="Androidアプリケーションの公開方法（署名付きapkファイルの作成）">Androidアプリケーションの公開方法（署名付きapkファイルの作成）</a></li>
</ul>
<p><!-- Similar Posts took 21.922 ms --></p>
]]></content:encoded>
			<wfw:commentRss>http://yamablo.com/2009/11/11-095109.php/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://yamablo.com/2009/11/11-095109.php" />
	</item>
		<item>
		<title>HT03-Aの今月の通信量</title>
		<link>http://yamablo.com/2009/10/31-223247.php</link>
		<comments>http://yamablo.com/2009/10/31-223247.php#comments</comments>
		<pubDate>Sat, 31 Oct 2009 13:32:47 +0000</pubDate>
		<dc:creator>yama3</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[HT03A]]></category>
		<category><![CDATA[パケット通信]]></category>
		<category><![CDATA[通信量]]></category>

		<guid isPermaLink="false">http://yamablo.com/?p=783</guid>
		<description><![CDATA[HT03-A(Android)を使い始めて明日でちょうど2ヶ月が経過することになります。ということで、今回は、NetSentryというアプリケーション（無料）で今月の通信量を計測した結果を掲載しようと思います。現在自分は [...]]]></description>
			<content:encoded><![CDATA[<p>HT03-A(Android)を使い始めて明日でちょうど2ヶ月が経過することになります。ということで、今回は、<strong>NetSentry</strong>というアプリケーション（無料）で今月の通信量を計測した結果を掲載しようと思います。現在自分は携帯電話はこのHT03-Aの1台のみでの運用となっており、自宅では自宅内の無線LANが設定してあるため、自宅内では主に無線LAN（というか自宅でDoCoMoの電波が弱すぎｗ）を使っての通信になります。また、自宅外では無線LANの電波を利用できる場所が普段の行動エリア内にはないため全てDoCoMoネットワークの利用になりますので、ご注意下さい。</p>
<h3>Wi-Fi（無線LAN）の通信量</h3>
<p>受信量が217MB、送信量が31MBでした。合計して249MB（合計が合わないのは端数による）の通信量という結果でした。ndroidDonuts(ver1.6)のダウンロードも自宅にいたときであったためおそらくWi-Fi経由でのダウンロードだったと思います。思ったよりもこの量は少ないのかな？という感じですね。</p>
<h3>2G/3G Networkの通信量</h3>
<p>受信量が232MB、送信量が62MBでした。Wi-Fiに比べて受信量はだいたい同じくらいの数字のようですが、送信量については2G/3G Networkのほうが2倍多いという結果になったようです。これは、自宅内では、これを使ってWebを閲覧することが多く、逆に自宅外ではメール受信、送信、問い合わせの他、各種アプリケーションの同期を目的に使っていることが大きいのでしょうか？なんにせよ、この2G/3G Networkの通信量を減らすことができればパケット通信量についても安くすることができるんでしょうかね。ちなみに、パケット数に単位変換すると、総計294MBで2,408,448パケットとなり、Bizホーダイ・ダブルを契約しているので当然の如く上限額の5,985円に達しています。また、もしBizホーダイ・ダブルの2段階目の定額がなかった場合の料金は、202,309円くらいになるかという計算になります。やはり、これを定額の範囲内に納めることは無理そうですね。ｗｗ</p>
<h3>スクリーンキャプチャ</h3>
<div style="margin: 10px auto; width: 430px;">
<a href="http://yamablo.com/wp-content/uploads/2009/10/2009103102.png"><img src="http://yamablo.com/wp-content/uploads/2009/10/2009103102-200x300.png" alt="2009103102" title="2009103102" width="200" height="300" class="aligncenter size-medium wp-image-781" style="float: left;" /></a><a href="http://yamablo.com/wp-content/uploads/2009/10/2009103103.png"><img src="http://yamablo.com/wp-content/uploads/2009/10/2009103103-200x300.png" alt="2009103103" title="2009103103" width="200" height="300" class="aligncenter size-medium wp-image-782" style="float: right;" /></a></p>
<hr style="clear: both; width: 0px;">
</div>
<p><strong>関連記事</strong>
<ul class="similar-posts">
<li><a href="http://yamablo.com/2009/12/22-011324.php" title="[Androidアプリ] EStrong Exploler">[Androidアプリ] EStrong Exploler</a></li>
<li><a href="http://yamablo.com/2009/11/11-095109.php" title="Android 搭載端末一覧">Android 搭載端末一覧</a></li>
<li><a href="http://yamablo.com/2009/03/14-125613.php" title="PC周りのコードレス化">PC周りのコードレス化</a></li>
<li><a href="http://yamablo.com/2009/12/01-093135.php" title="Androidアプリ開発 プログレスダイアログの実装">Androidアプリ開発 プログレスダイアログの実装</a></li>
<li><a href="http://yamablo.com/2009/06/06-182827.php" title="[第1回] 暗号講座">[第1回] 暗号講座</a></li>
</ul>
<p><!-- Similar Posts took 16.653 ms --></p>
]]></content:encoded>
			<wfw:commentRss>http://yamablo.com/2009/10/31-223247.php/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://yamablo.com/2009/10/31-223247.php" />
	</item>
		<item>
		<title>Android Donutsが配信されました</title>
		<link>http://yamablo.com/2009/10/30-203845.php</link>
		<comments>http://yamablo.com/2009/10/30-203845.php#comments</comments>
		<pubDate>Fri, 30 Oct 2009 11:38:45 +0000</pubDate>
		<dc:creator>yama3</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[OS]]></category>
		<category><![CDATA[Donuts]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[モバイル]]></category>

		<guid isPermaLink="false">http://yamablo.com/?p=768</guid>
		<description><![CDATA[1週間前にいきなり（？）配信が開始されたAndroid Donuts(ver1.6)ですが、ようやく本日の午前4：00ごろに私のHT03-Aにも配信されてきました。待っていてもなかなか来ないので、もしかしたら自分のところ [...]]]></description>
			<content:encoded><![CDATA[<p>1週間前にいきなり（？）配信が開始されたAndroid Donuts(ver1.6)ですが、ようやく本日の午前4：00ごろに私のHT03-Aにも配信されてきました。待っていてもなかなか来ないので、もしかしたら自分のところにはずっと配信されないんじゃないか？とも思っていましたけれど、無事配信されてよかったです。ちなみにインストール前の確認画面が左下みたいなので、インストールを指定し再起動をかけたときのセットアップ中の画像が右下みたいな感じです。セットアップ時間はだいたい4分半くらいだったかな。</p>
<div style="margin: 10px auto; width: 480px;">
<a href="http://yamablo.com/wp-content/uploads/2009/10/DonutsPrev.png"><img src="http://yamablo.com/wp-content/uploads/2009/10/DonutsPrev-200x300.png" alt="DonutsPrev" title="DonutsPrev" width="180" height="300" class="aligncenter size-medium wp-image-765" style="float: left;" /></a><br />
<a href="http://yamablo.com/wp-content/uploads/2009/10/androidSetup.jpg"><img src="http://yamablo.com/wp-content/uploads/2009/10/androidSetup-300x225.jpg" alt="androidSetup" title="androidSetup" width="270" height="225" class="aligncenter size-medium wp-image-764" style="float: right;" /></a>
</div>
<hr style="clear: both; width: 0px;" />
<p>セットアップが完了し、起動し終わると無事Donuts(1.6)にアップデートされていることが分かります。</p>
<p><span id="more-768"></span></p>
<h3>Donutsの使用感</h3>
<p>思っていたよりはサクサク動かないなぁという点はちょっと残念かな。あとは、検索バーが使いやすくなったってのは嬉しい変更点。今まではWeb上しか検索しなかったけど、アプリの検索もしてくれるし、連絡先も拾ってきてくれる点がいいなぁと思います。しかし、検索バーが少しだけスリムになった（縦幅が小さくなった）点はいいのですが、その結果作られたわずかなスペースがデッドスペースになってしまっているんですよね。このデッドスペースだけはどうにかして欲しいなぁと思うんですがどうなんでしょうか。個人的には、検索バーのサイズは今までのままでよかったんじゃないか？と思います。</p>
<div style="margin: 10px auto; width: 430px;">
<a href="http://yamablo.com/wp-content/uploads/2009/10/Donuts03.png"><img src="http://yamablo.com/wp-content/uploads/2009/10/Donuts03-200x300.png" alt="Donuts03" title="Donuts03" width="200" height="300" class="aligncenter size-medium wp-image-767" style="float: left;" /></a><a href="http://yamablo.com/wp-content/uploads/2009/10/Donuts01.png"><img src="http://yamablo.com/wp-content/uploads/2009/10/Donuts01-200x300.png" alt="Donuts01" title="Donuts01" width="200" height="300" class="aligncenter size-medium wp-image-766" style="float: right;" /></a></p>
<hr style="clear: both; width: 0px;" />
</div>
<p><strong>関連記事</strong>
<ul class="similar-posts">
<li><a href="http://yamablo.com/2010/05/01-223615.php" title="Android Marketに公開して3週間">Android Marketに公開して3週間</a></li>
<li><a href="http://yamablo.com/2009/11/11-095109.php" title="Android 搭載端末一覧">Android 搭載端末一覧</a></li>
<li><a href="http://yamablo.com/2008/11/12-212238.php" title="[Web] Google Web Master Tool 新機能？">[Web] Google Web Master Tool 新機能？</a></li>
<li><a href="http://yamablo.com/2009/05/31-120941.php" title="最近ブックマークしたブログ記事＆ニュース記事">最近ブックマークしたブログ記事＆ニュース記事</a></li>
<li><a href="http://yamablo.com/2009/06/01-212402.php" title="Google Chromeがバージョンアップ">Google Chromeがバージョンアップ</a></li>
</ul>
<p><!-- Similar Posts took 15.578 ms --></p>
]]></content:encoded>
			<wfw:commentRss>http://yamablo.com/2009/10/30-203845.php/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://yamablo.com/2009/10/30-203845.php" />
	</item>
		<item>
		<title>HT-03Aにインストールしているアプリ一覧</title>
		<link>http://yamablo.com/2009/10/14-201302.php</link>
		<comments>http://yamablo.com/2009/10/14-201302.php#comments</comments>
		<pubDate>Wed, 14 Oct 2009 11:13:02 +0000</pubDate>
		<dc:creator>yama3</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[アプリ]]></category>

		<guid isPermaLink="false">http://yamablo.com/?p=738</guid>
		<description><![CDATA[android携帯を利用して既に1ヶ月以上経過し、利用しているアプリについてもかなり定着してきたようなので、インストールしているアプリの一覧を書き出しておきます。Android携帯をご利用の方は参考にしてみてはいかがでしょうか？]]></description>
			<content:encoded><![CDATA[<p>android携帯を利用して既に1ヶ月以上経過し、利用しているアプリについてもかなり定着してきたようなので、インストールしているアプリの一覧を書き出しておきます。Android携帯をご利用の方は参考にしてみてはいかがでしょうか？</p>
<h3>ゲームアプリ</h3>
<p>ゲームアプリでは、Labyrinth Liteをインストールしている人が結構多いみたいですね。特別に面白いゲームというわけではないのですが、加速度センサーや傾きセンサーが搭載されているAndroid端末（HT-03A）ならではのアプリということでインストールしているのでしょうね。という自分自身もそんな理由です（笑）あとは、ゲーム系アプリはインストールしてはアンインストールしての繰り返しが多いですね。</p>
<ul>
<li>Trap!</li>
<li>TorectLite</li>
<li>Labyrinth Lite</li>
<li>モスキート装置</li>
<li>GPS Status</li>
<li>My Tracks</li>
<li>Anちゃん</li>
</ul>
<p><span id="more-738"></span></p>
<h3>入力系アプリ</h3>
<p>入力系アプリは、Simejiは定番ですね。んで、OpenWnnです。OpenWnnはフリック入力とニコタッチの2つをインストールしているのですが、基本的にはフリック入力の方しか使っていないです。というか早くニコタッチの方は消さなきゃなぁ。んで、一応一番最後に書いたmixiPicCharは自作のマッシュルーム・アプリになります。mixiの絵文字を入力するためのアプリになります。androidマーケットの開発者登録をしたら公開しようかなぁと思っているので、少しずつ使いやすくしていきたいなぁ、というところです。このままmixi専用ブラウザなんかも作れたらなぁと思います。というかAndroid版のmixi専用ブラウザをオープンソース開発プロジェクトを立ち上げてみたいなぁｗｗ誰か賛同者がいれば立ち上げてみたい。。。</p>
<ul>
<li>Simeji</li>
<li>KaoMash</li>
<li>OpenWnnフリック入力対応版</li>
<li>OpenWnnニコタッチ対応版</li>
<li>mixiPicChar</li>
</ul>
<h3>便利系アプリ</h3>
<p>ここは、どういう基準でここに分類されたのかは分からないですが、いくつか紹介しておきます。乗換探索用に「乗換案内アプリ」と「路線ドロイド」を使っています。基本的には路線ドロイドを使うことが多いですね。（<a href="http://yamablo.com/2009/09/17-222346.php" target="_blank">両アプリの比較記事はコチラ</a>）あとは、赤外線を搭載していないHT-03Aでは必須のような「QRコードスキャナー」や、天気予報なんかをインストールしています。あとは、手帳の付録。手帳の付録は、年齢早見表や郵便料金、時差、度量衡換算表などの手帳の末尾についているような付録をまとめたアプリです。Android端末を手帳代わりに使おうと思っている場合は必要かもしれませんね。</p>
<ul>
<li>乗換案内アプリ(TransitEX)</li>
<li>路線ドロイド</li>
<li>QRコードスキャナー</li>
<li>クーポンマップ</li>
<li>手帳の付録</li>
<li>世界天気時計</li>
</ul>
<h3>ファイル管理</h3>
<p>このへんはどうだろうか。とりあえずOI File Managerをインストールしているけれど、特に使ったり、ということはないかな。SugarSyncは、自宅のWindowsマシンとのファイル同期をインターネットを介して行うもので、それなりに使えています。あとは、テキストファイル・ビューワーにはpText 日本語版を使っていますが、ほかにいいアプリがあれば乗り換えると思います。ほかも同じですね。Tumblrなんかも、メディアファイルだけでなく、ブックマークやいろいろアップロードできるアプリがあれば知りたいですね。</p>
<ul>
<li>Tumblr Media Uploader</li>
<li>SugarSync</li>
<li>OI File Manager</li>
<li>pText 日本語版</li>
<li>aPlayer</li>
</ul>
<h3>ユーティリティ, その他</h3>
<p>メモ帳アプリには、FoxNoteをインストールしてます。FoxNoteアプリのいいところは、GoogleDocumentからファイルをダウンロード・アップロードできる点ですね。けっこうGoogleDocumentを利用しているので、こういう同期できるアプリは便利だと思います。Astrid Task/Todo Listは、タスク管理用アプリで、RTM(Remember The Milk)と同期できるということで有り難く使っています。本家RTMもAndroid用アプリを公開しているのですが、RTMアカウントをProアカウント（有料）にしないといけないため断念しています。mAnalytics<br />
は、Google Analyticsのビューワーで、携帯からブログへのアクセス解析を見るためにインストールしてみています。まぁ、これはモバイルでできるメリットはあんまり感じていないため、そのうち消すでしょうね。あとは、ホーム置き換えアプリでAdvanced Launcherを使っています。これはマジで便利です。いろいろアプリをダウンロード＆インストールしていると、アプリ一覧画面が一杯になってしまいます。しかし、アプリ一覧に表示されるアプリには、アイコンから選択して使うタイプではないアプリ（例：Simeji, OpenWnnや使っていない標準アプリSMS, 電話, @メールなど）が邪魔で必要なアプリが見つけにくくなってしまいます。そこでAdvanced Launcherを使い、このような普段使わないアプリを1つのフォルダ内にまとめてしまうことができます。これにより、アプリ一覧画面がすっきりします。</p>
<ul>
<li>FoxNote with GDoc日本語版</li>
<li>Astrid Task/Todo List</li>
<li>mAnalytics</li>
<li>Advanced Launcher</li>
<li>TumblrWallpaper</li>
<li>Commantalb</li>
<li>twidroid for twitter</li>
<li>NetSentry</li>
</ul>
<table  class="g-tools_table">
<tr>
<td valign="top"><span class="g-tools_img"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4883809897/1987yama3-22/ref=nosim/" target="_top"><img src="http://ecx.images-amazon.com/images/I/61mKL1m7r3L._SL160_.jpg"  alt="AndroidケータイHT-03Aを120%使いこなす本 (100%ムックシリーズ)" /></a></span></td>
<td valign="top"><span class="g-tools_body"><a href="http://www.amazon.co.jp/Android%E3%82%B1%E3%83%BC%E3%82%BF%E3%82%A4HT-03A%E3%82%92120%25%E4%BD%BF%E3%81%84%E3%81%93%E3%81%AA%E3%81%99%E6%9C%AC-100%25%E3%83%A0%E3%83%83%E3%82%AF%E3%82%B7%E3%83%AA%E3%83%BC%E3%82%BA/dp/4883809897%3FSubscriptionId%3D15SMZCTB9V8NGR2TW082%26tag%3D1987yama3-22%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D4883809897" target="_top">AndroidケータイHT-03Aを120%使いこなす本 (100%ムックシリーズ)</a><img src='http://www.assoc-amazon.jp/e/ir?t=1987yama3-22&#038;l=ur2&#038;o=9' width='1' height='1' border='0' alt='' /></p>
<p>晋遊舎  2009-08-07<br />売り上げランキング : 42225<br />おすすめ平均  <img src="http://g-images.amazon.com/images/G/01/detail/stars-2-0.gif" /></p>
<p><a href="http://www.amazon.co.jp/Android%E3%82%B1%E3%83%BC%E3%82%BF%E3%82%A4HT-03A%E3%82%92120%25%E4%BD%BF%E3%81%84%E3%81%93%E3%81%AA%E3%81%99%E6%9C%AC-100%25%E3%83%A0%E3%83%83%E3%82%AF%E3%82%B7%E3%83%AA%E3%83%BC%E3%82%BA/dp/4883809897%3FSubscriptionId%3D15SMZCTB9V8NGR2TW082%26tag%3D1987yama3-22%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D4883809897" target="_top">Amazonで詳しく見る</a></span> <span class="g-tools_by">by <a href="http://www.goodpic.com/mt/aws/index.html" >G-Tools</a></span></td>
</tr>
</table>
<p><strong>関連記事</strong>
<ul class="similar-posts">
<li><a href="http://yamablo.com/2009/12/22-011324.php" title="[Androidアプリ] EStrong Exploler">[Androidアプリ] EStrong Exploler</a></li>
<li><a href="http://yamablo.com/2009/09/17-222346.php" title="android 路線探索アプリの比較">android 路線探索アプリの比較</a></li>
<li><a href="http://yamablo.com/2009/09/23-093445.php" title="Androidアプリ開発に関する本の紹介">Androidアプリ開発に関する本の紹介</a></li>
<li><a href="http://yamablo.com/2009/11/23-224843.php" title="Androidアプリ開発中">Androidアプリ開発中</a></li>
<li><a href="http://yamablo.com/2010/05/16-222757.php" title="Android アプリ開発時の汎用関数の紹介">Android アプリ開発時の汎用関数の紹介</a></li>
</ul>
<p><!-- Similar Posts took 24.613 ms --></p>
]]></content:encoded>
			<wfw:commentRss>http://yamablo.com/2009/10/14-201302.php/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://yamablo.com/2009/10/14-201302.php" />
	</item>
	</channel>
</rss>

<!-- Dynamic Page Served (once) in 1.158 seconds -->
