投稿

11月, 2008の投稿を表示しています

Android ソフトウェア公開

イメージ
新しいプラットフォームを調べたり、ソフトウェアを作成するのはとても楽しいが、調査ばかりしているのではなく、何らかの出力(例えば、形として残る物を作成)をする事は非常に大事であると思っている。 ビジネスロジック以外のソフトウェアを完成させる段階で必要な事や、プログラミングとは関連ない事項も多くあり、それを一通り体験することで、そのプラットフォームへの理解も深まり、見えてない部分の発見があり、また次の製品を迅速にリリースする事が可能となる。 従って、新しいプラットフォームで何かをやり始める時は、以下のような事をして、一つの区切りとしている。 1.Hello World プログラム 2.調査 3.役に立つ小さなソフトウェアの作成 4.公開 「役に立つ小さな」というのは、非常に重要で、機能は最小限で最速で作れるようなもの(それでも時間はかかる)、かつ自分が使うようなソフトウェアを作成することで、そのプラットフォームの事を忘れずに引き続きウオッチしていくことができる。 通常3までは、比較的楽しい作業であるが、3から4の段階に持って行くには、どんなに小さなソフトウェアでも多くのプログラミングとは関係のない作業が発生する。思いつくままにあげてみると 1.アイコンの作成 2.画面デザインの作成 3.バージョン番号の決定 4.Aboutダイアログの作成 5.国際化or日本語化 4.テスト(自分以外の人によるテスト) 5.社内ドキュメントの作成(開発環境の構築、引き継ぎ資料) 6.取扱説明書の作成 7.ダウンロード用ウエブページの作成 8.金額決定 9.ライセンスの作成 10.インストーラの作成 まだまだ、とりこぼしがありそうだが、これらの退屈な作業(でも必要な作業)をクリアしていくことで、初めて公開となる。 今回Androidの調査を行っていたが、一区切りするために、以下の小さなソフトウェアを作成した。 年齢早見 機能 西暦-和暦-年齢変換をする 画面

オランダのハーグのタオ

イメージ
最古の知人からメールが届いた。 「今オランダにいて、こんなの見つけたー」って ちょいとうれしかったので、アップ 気を付けて帰ってきてください。 Share on Tumblr Tweet

Android SDK ソース関連付け

イメージ
Androidのソースコードが公開された。ライブラリにソースを関連付けるとデバック実行時にステップインができたり、Exceptionが発生した時に非常に分かりやすく有用なわけだが、android.jar にソースの関連付け(ソース添付)をしようと思っても、「Thre current class path entty belongs to container ‘Android Library’ which does not allow user modifications to souce attachements on its entries.」と表示され、関連付けができない。 ネットで少し調べた所、ADTのリコンパイルをする等の記事が出ていたが、手間がかかるために簡単な方法で対処しました。 ソースコードの用意 1.C:\android\android_source\jar_sourcesディレクトリ(任意)を作成して用意する。 2.C:\android\android-sdk-windows-1.0_r1\android.jarの中をみて、ディレクトリ構造を合わせたソースコードを上記ディレクトリにコピーをする。 android.jarの中身 ソースディレクトリの中身 ソースコードの対応 とりあえずあまり使わなそうな物はコピーするのがめんどくさいので省略し、後から必要な時に追加することにしました。 android mydroid\frameworks\base\core\java\android assets mydroid\frameworks\base\core\res\assets com mydroid\frameworks\base\core\java\com res mydroid\frameworks\base\core\res\res

Android ダイアログアイコン

イメージ
最後にダイアログアイコン5種類 アラートアイコン、インフォメーションアイコンは存在するが、「?」アイコンは存在しない。 ID アイコン ic_dialog_alert ic_dialog_dialer ic_dialog_email ic_dialog_info ic_dialog_map まだまだシステムリソースはたくさんあるが、システムリソースを全体的に眺めてみたが、まだきちんとまとまっていない感じがした。デザインし直しを含め今後変わっていくと予想される。 ブログ内の関連する記事 Android メニューアイコン Android メディアアイコン Android ダイアログアイコン Android システムリソース ディバイダー一覧 Share on Tumblr Tweet

Android DroidDraw スタンドアロン版

イメージ
AndroidのUIデザインをする DoroidDraw が、いつのまにかWeb版から、スタンドアロン版になっていた。 ライセンスはGPL Androidの画面は小さくてあまり凝ることもないし、通常は、ApiDemoサンプルからコピーをしてくるのであまり使うことはないのですが、文法やプロパティを見たりするのに便利です。 さっそくダウンロードして、実行 こんなかんじです。 問題なく実行できました。 Share on Tumblr Tweet

Android メディアアイコン

イメージ
メディア用アイコンも、6種類用意されている。 ID アイコン ic_media_ff ic_media_next ic_media_pause ic_media_play ic_media_previous ic_media_rew ブログ内の関連する記事 Android メニューアイコン Android メディアアイコン Android ダイアログアイコン Android システムリソース ディバイダー一覧 Share on Tumblr Tweet

Android メニューアイコン

イメージ
どのようなOS用のソフトウェアを作る時でも、編集アイコン、削除アイコン等、色々なソフトウェアで使用されるアイコンは、システムが持っており、ソフトウェアを作成するときは、操作性の統一を図るために、なるべくシステムリソースを使用することとなる。 例えば、こんなアイコン Androidが持っているシステムアイコンは、下記URLに記載されているが、実際どのようなアイコンなのかわからないので、簡単に調べてみた。 http://code.google.com/android/reference/android/R.drawable.html 大量にあるため、今回はメニューアイコンのみ 縦42px 横42pxのPNG画像として用意されている。 メニューにアイコンを追加は、setIconメソッドを利用する。 menu.add(0,HELP_ID,0,R.string.menu_help).setIcon(android.R.drawable.ic_menu_help); 以下メニュー用アイコン一覧41種

Android 電子署名 3

イメージ
開発したソフトに実際に署名をしてみました。 keystore名は、hoge.keystoreとし、alias名は、hoge パスワードは、hogehogeです。 証明書の作成 keytool -genkey -v -keystore hoge.keystore-alias hoge -keyalg RSA -validity 10000 -dname "cn=www.taosoftware.co.jp,ou=Taosoftware Android Development ,o=Taosoftware.,l=Tokyo,st=Taitou, c=jp" -keypass hogehoge アプリケーションへの署名 jarsigner -verbose -keystore hoge.keystore Wareki.apk hoge 署名確認 jarsigner -verify -verbose -certs Wareki.apk 確認結果(成功)

Android 電子署名 2

イメージ
Android SDK Documentより実際の電子署名のやり方 release mode でコンパイルし、.apkファイルを作成する。 鍵と証明書の作成 keytool -genkey -v -keystore my-release-key.keystore-alias alias_name -keyalg RSA -validity 10000 上記だと証明書の有効期限は10000日 アプリケーションに署名をする。 jarsigner -verbose -keystore my-release-key.keystoremy_application.apk alias_name 署名の確認 jarsigner -verify -verbose -certs my_application.apk CN=Android Debug”と表示されている場合は、Android SDKのデバックキーが使用されているので失敗。 インストール adb install my_application.apk

Android 電子署名1

イメージ
Android用アプリケーションを公開するには電子署名をする必要がある。 詳細は、 http://code.google.com/android/devel/sign-publish.html に記載されているが、簡単にまとめてみた。 アプリケーションにデジタル署名をする必要がある 署名されていないアプリケーションは、エミュレータでも実機でも、インストール及び実行不可能 デジタル署名を行う証明書は、自己証明書(オレオレ証明書)で良い 認証局は必要ない デバック実行時には、ADTが自動的にデバック用の署名を行っているのでエミュレータでの実行が可能となっている。 証明書の有効期間は、インストール時だけに使用される。インストール後に有効期間が切れても、アプリケーションは動作可能 標準的なJAVAのツールである、Keytool,Jarsignerでキーを作成しapkファイルに署名をする 自己証明書ではあるが、同一の証明書を持つ複数のアプリケーションがあった場合、同じ作成者が作成した物である事は証明できるため、以下の事項で証明書は利用されている。 バージョンアップ時にチェックをする 同じ証明書を持つアプリケーションは、同一プロセスでの実効が可能 証明書をベースとしたPermission設計ができ、dataやcodeの共有が可能 ちなみに署名されてないソフトをエミュレータにインストールすると以下のようなメッセージが表示されてインストールができない。