Archive for the ‘モバイル’ Category

HTML5/CSS3とスマートフォン・アプリケーション

土曜日, 7月 31st, 2010

少し前から、HTML5/CSS3についていろいろと調べ物をしていまして、今のところ出た結論を書いていこうかと思います。ここでは、HTML5/CSS3をPC環境ではなく、スマートフォン環境で利用してもらうことを想定しています。

スマートフォンのHTML5/CSS3対応状況

ここでは、Appleから提供されているiPhoneとGoogleから提供されているAndroidについて見ていくことにします。iPhoneは現在のところ、HTML5/CSS3の多くの機能が既にSafariブラウザにて実装されているようです。またAndroidは、OS1.6は未対応ですが、OS2.1からはHTML5/CSS3への対応が進んでおり、多くの機能が使えるようです。日本で一番初めに発売されたAndroid端末であるDoCoMoのHT03-A機については、OSが1.6ということで、HTML5/CSS3が未対応なのが残念ですが、今後1~2年でHT03-Aを使うユーザも減ってきて、本格的にAndroidでもHTML5/CSS3に対応できるのではないでしょうか?

Windows Mobile機については調べてはいないのですが、PC版ではSafariやGoogle Chrome、OperaなどがHTML5/CSS3に対応しているので、それらのブラウザをインストールすればWindows Mobile機についてもiPhoneやAndroidと同様にHTML5/CSS3が使えるのではないでしょうか?

(続きを読む…)

Android アプリ開発時の汎用関数の紹介

日曜日, 5月 16th, 2010

自分がAndroid アプリの開発をやるようになって、これでもう1年は経過したのではないかと思っています。1年経った今でも、Androidアプリを開発するときは分からないことが多く、分からないことが出てくるたびにGoogle先生のお世話になったり、過去に自分が書いたコードを探して見てみる、などということをしてきました。そんな中で、自分がAndroid アプリを開発する際に比較的よく使う関数群を汎用関数として、Utilクラスとしてまとめてみましたのでその一部を紹介します。

バージョン情報の取得

Androidアプリケーションには、1つのアプリケーションにつき必ず1つのAndroidManifest.xmlというファイルが存在します。このAndroidManifest.xmlファイルには、アプリケーションの名前や使用するインテント名、サービス名、バージョン情報などなど多くの情報がXMLによって書かれています。このAndroidManifest.xmlファイルに書かれているバージョン情報を取得し、そのバージョンによって処理を変える場合があります。そこで、現在のアプリケーションのバージョンを知るための関数を2つ作成しました。

作成したバージョン情報取得関数

// バージョン情報の取得関連
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;
}

説明

Android のバージョンには2種類あり、1つ目は整数値で表現された番号。2つ目は1.3.12などのように詳細な情報が文字列として表現されているバージョン名です。今回作成した関数では前者をVersionCode、後者をVersionNameとして取得しています。なお、これらの情報はContextクラスから、PackageManagerクラスを取得し、そこからさらにPackageInfoを取得するとversionCodeとversionNameの情報が得られます。それらを単純にgetVersionCode, getVersionNameとした関数です。

(続きを読む…)

Android Marketに公開して3週間

土曜日, 5月 1st, 2010

先日、楽天のクレジットカードを契約しまして、無事にAndroid Marketに自分の開発したアプリケーションをアップロードすることができました。

今までは、クレジットカードを所有していないがために、Android Marketにアップロードすることができず、代わりにappli.jp(appli.jpトップページ / Androidアプリ ダウンロードマーケットappli.jp)というサイトにアプリケーションをアップロードして公開していました。実際に、Android Marketにアップロードして3週間経った感想としては、appli.jpと比べてやはり、認知度が違うなぁということを実感しています。appli.jpでは3ヶ月以上公開していても、総ダウンロード数が50件もいかなかったものが、Android Marketに公開したら、たった2週間ほどで1,000ダウンロードを突破するという状況です。さすが、Google の提供する公式マーケットだなぁという感じです。

Android Marketへの公開で困ったこと

Android Marketに公開して困ったことが1つあります。最初に公開したアプリで発覚したことなのですが、アプリをリリースする際に用いたkeystoreファイルを削除してしまうと、アプリケーションをアップデートすることができない、ということです。これには、アプリケーションの公開手順を説明する必要があるので、公開手順を簡単に説明します。

アプリケーションの公開手順

まず、EclipseなどのSDKを用いてAndroid アプリケーションを開発します。開発し終わったら、それをUnsignedのapkファイルとして書き出します。次にコマンドプロンプトなどを用いて、キーストア・ファイルを生成し、そのキーストア・ファイルをUnsignedのapkファイルを1つにまとめ上げて、署名付きのapkファイルを生成し、このapkファイルをマーケットにアップロードすることでAndroid アプリケーションを公開することができます。

(続きを読む…)

WordPressのブログにFoursquareのログを載せる

火曜日, 3月 30th, 2010

自分も、今年の1月あたりからこっそりと使っているWebサービスであるFoursquare(foursquare)のログをWordPressで書いているこのブログのサイドバーあたりにでも載せようかと思い、簡単なスクリプトを書いてみたので公開してみます。本当だったら、これをプラグインのような形で開発し、公開することができれば、より多くの方にお届けすることができるのですが、プラグインについてはまた次の機会にでも、としようと思っています。

Foursquareって何?

Foursquareって何?と思った方もいるかと思いますので、簡単に説明させていただきます。Foursquareとは、位置情報に基づいたSNSのWebサイトです。ユーザがどこかに行った際にその場所をGPSなどを用いてFoursquareに送信し、位置情報がログとしてサーバに残るという仕組みです。これをSNS的に使うことで、いろいろ面白そうなサービスができそうだ、というのが楽観的な考えです。また、技術者にとってはtwitterと同じくアプリケーションの機能のほとんどがAPI(Application Program Interface)として提供されているため、これからどういった動きをするかが気になるところですね。

(続きを読む…)

Vine5でE-Mobileを使ってインターネットに接続する

日曜日, 2月 28th, 2010

以前まではVine4を使っていて、E-Mobileには対応していないとかどっかで見たか聞いたかした記憶が残っており、Vine5でもどうせ対応していないだろうと思い、今まで全く試していなかったのだが、昨日ちょっとしたことからググってみたところ、どうやらVine5ではE-Mobileが利用可能!とかいう記事を見つけ、その設定をやってみたところ、実際に自分の環境でも接続されることが確認できたため、その設定方法を書こうと思います。なお、今回使用しているE-Mobile端末は、D02-HWで、パソコンはThinkPad X22というかなり古めのパソコンです。普段はこのパソコンはVine5とWindows7RCのデュアルブート構成をとっているのですが、3月1日からWindows7RCは2時間おきにシャットダウンされるということで、モバイル時にどうしようか考えていたのが原因です。前からUbuntuであればE-Mobile接続が可能なことは知っていたので、このマシンもデュアル構成をやめにしてUbuntu1本にしようかと思っていたのですが、このマシンスペックでUbuntuを使うのはストレスが溜まりそうということでいろいろ探しておりました。では、以下でその設定法を書かせていただきます。

ネットワーク接続

上の画像のように、Vine5をデスクトップで利用していることを想定しています。メニューバーの中から、システム、設定、インターネットとネットワークを選んでいき、ネットワーク接続を選択します。すると、下の図のようなウィンドウが開きます。


(続きを読む…)

Get Adobe Flash playerPlugin by wpburn.com wordpress themes