自己紹介

自分の写真
最近、iphoneアプリをリリースしました。
UxU
無料アプリですので、是非遊んで下さい。 第二弾アプリ:工場夜景写真集 今後も色々なアプリをリリースしていく予定です。
次は、コスプレ or 漫画 or 騎乗日記

2011年7月29日金曜日

Tomcat 5.5 → 6.0 にバージョンUP方法

まずは、windows編です。

tomcat HPから、「32-bit/64-bit Windows Service Installer」を選択してダウンロードします。
[apache-tomcat-6.0.32.exe]をクリックしてインストール開始。

指示に従うと管理者のID/PASSWORDが聞かれます。
これは、6.0からマネージャ画面が自動的に作成されて、tomcatを再起動しなくても特定のアプリケーションだけを再ロードすることが出来る便利機能です。

①インストール後、環境変数に[CATALINA_HOME]をtomcat6をインストールしたパスを追加します。

[Log4j]へ変更

Java Optionsに記述している。

[-Djava.util.logging.manager]部分を消去

[-Djava.util.logging.config.file]部分を消去

[-Dlog4j.configuration]log4j.propertiesまでのパスを追記


③libフォルダへjarファイルをコピー

log4j-1.2-16.jar

tomcat-juli.jar(binフォルダからコピーする事)


apacheをTomcatへ連動する

■Tomcatをインストールしたフォルダ内\Conf\server.xmlに以下を設定する。(Tomcat側)

 1. Connector port=”8080” 部分をコメントアウトする。

2. を追記する。

■httpd.confmod_proxy_ajpを有効にする。 (Apache側)

  LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
Include conf/extra/httpd-proxy.conf

■httpd-proxy.confを作成する。

ProxyPass ajp://localhost:8009/xxx/

App Submission Feedback(Reject)について

一本目のiphoneアプリは無料でしたので、reviewで引っかかる事がなかったのですが・・・。
今回のアプリでは見事にApp Store Review Guidelines
で該当する内容がありまして・・・もう一度申請することになりました。

その時の対処方法を共有したいと思いますので、以下に記します。
今回該当した項目は、

「21.1: Apps that include the ability to make donations to recognized charitable organizations must be free」

Google先生で翻訳したところ、
認識慈善団体寄付をする能力を含むアプリはフリーでなければなりません」

ということでした。
確かに、アプリの説明文で「売上の一部を寄付する」との文章を書いている為の
ようなので、心に一部を寄付すると思いながら、その文章を外しました。

あと、色々調べているとガイドラインを翻訳しているサイトがありましたので、
紹介します。

和訳


リンク集だけのアフリエイト目的のアプリもapp storeではリジェクトなんですねぇ。
google Marketでは、じゃんじゃん載っておりますけど。

2011年5月28日土曜日

postgreSQL 9.0.4と8.4について

ホットスタンバイ機能

待機系サーバを参照用として利用できる。
このことにより、成績閲覧の様な処理を[代替系]
DBにアクセスし、
更新系処理は[本番]DBにすることで、負荷分散も可能となります。

あと、ホットになったので、同期がいつでも確認できるようになりました。
以前までは、ウォームスタンバイだったので、アクセスが不可能でしたので、
実際のデータがどのようになっているかは、同期を解除してからではないと見えない
状況でしたので、保守が非常に楽になります。

設定方法などは次回、書きます。

Window関数

・現在の行 (CURRENT ROW) を基準にした処理 ROWS n PRECEDING/FOLLOWING が
追加され、
移動平均の計算ができるようになりました。 前後のデータ取得が容易になりま
した。



・ある区分でソートしながら、その区分ごとのランキングも容易になりました。

SELECT member, kbn, age ,
RANK() OVER(PARTITION BY kbn ORDER BY age DESC) rank,
DENSE_RANK() OVER(PARTITION BY kbn ORDER BY age DESC) dense_rank,
ROW_NUMBER() OVER(PARTITION BY kbn ORDER BY age DESC) row_num
FROM Members
ORDER BY kbn, rank;

参照:http://lets.postgresql.jp/documents/technical/window_functions/



DO関数

・sql内でストアドが書けるようになり、ちょっとしたプログラムだったりした
場合には
関数化するより、sql内で書けた方が楽ですよね。

ただ、今のところ使用したことがないので、使用した時に詳しくまとめます。


再帰SQL

参照結果をさらに抽出するようなSQLでも一回のクエリーで書けるようにな
ります。

WITH RECURSIVE r AS (
SELECT * FROM tree WHERE id = 1 -- id=1 とその子孫を列挙
UNION ALL
SELECT tree.* FROM tree, r WHERE tree.parent = r.id
)
SELECT * FROM r ORDER BY id;

これも、使用した時に詳しくまとめます。

■PL/pgSQLにCASE構文が追加された
 ・今までは、IF-ELSEIF-ENDIFの中にIF文を入れ子した状態で記述しないとい
けなかった
 ものがCASEでかけるようになりました。
 これは、見た目もスッキリできて良いですね!


感想
------
oracleと遜色のないDBになってきましたね。
昔、登録系が遅いと言われておりましたが、そんな事も今言っていると逆に笑わ
れます。
負荷分散・フェイルオーバーもpgpoolⅡを利用することで可能です。
Oracleはすごく価値&信頼性&保守性とも抜群に良いのですが、価格がものすご
く高くなります。
フリーDBやクラウドDBで小さな規模の会社でも大きな事業が出来る時代です。
頑張って、やってやりましょう!


元ネタ:http://lets.postgresql.jp/documents/technical/9.0/1#sql

2011年5月14日土曜日

AirPrintでワイヤレス プリント

iOS4.2になってから、[AirPrint]が対応されました。
しかし、AirPrint対応している機種はHPのものだけという状況ですし、
元々あるプリンターを買い換えるのもエコではないので、
どうにか既存プリンターでAirPrintする方法がないかと
探していたところ、AirPrint Expressで導入して、PCから共有することにより
iPhone/iPadからプリントアウトすることが出来ます。






















①MacAir ExpressにUSBケーブルでプリンターを接続する。
macair expressは、無線LANに対応していないプリンターをAirPrintする為の装置です。
あと、スピーカーを接続すると、iphone/ipod/iPadから音楽再生を家の中のスピーカーに
出力(AirPlay)を可能にする商品です。



②AirPrintするためのソフトをDLする

Mac側
---------
1. AirPrint Activator をDLして、設定ONにする。

Windows側
---------
1. AirPrintをDLして、c:¥Program Filesにコピーする。
2. コマンドプロンプトを管理者権限で開く




















3. 以下の設定をする





























コマンド:
sc create AirPrint binPath= “C:\Program Files\AirPrint\airprint.exe -s” depend= “Bonjour Service” start= auto

4. サービスから[AirPrint]を開始する


③PC側にmacair express経由(LAN)の設定を入れる。

ここで、既存のプリンタの設定がある場合は、削除してください。

MAC側
---------
1.[林檎マーク-システム環境設定-プリンタとファックス]を選択する
2.[+]マークをクリックして、プリンタを追加する。
3.共有をチェックする。
















Windows7側
---------------
①スタート-コントロールパネル-デバイスとプリンタの表示-プリンタの追加
②IPアドレスから検索して設定する。(プリンタドライバはDLしておくこと)
③共有にチェックする


















結論として、MACで設定する方が簡単です。
ただ、どちらのPCからもAirPrint出来ます。
iPAD/iphoneお持ちの方は、是非AirPrintをお試し下さい。

HPからAirPrint対応しているものもあります。

2011年5月9日月曜日

iPad2 wifi版 と au EVO のテザリングで快適!

4月、5月で新しい端末を連続購入しました。
それは、au EVO(android OS 2.2.1) とiPad2 ホワイト wifi版を購入しました。
かなりの出費ですが、それ以上の快適さと今後の事を考えると自分への投資としては
安いと思っています。

左記ですが、au EVOと nttDocomo HT-03aを
並べて、iphone3gsから写真を撮ってみました。
画面がだいぶ大きいのがお分かり頂けると思います。
赤のカバーを付けたので、赤い淵が映っております。
画面も大きくなった事で、かなり重さは感じますが、
画面の解像度がとても良く、見やすいです。
弱点は、かなりバッテリーが弱いです。
(ウィジェットのせいかも?!)
すぐ、バッテリー切れを起こします。





そして、左記はiPad2ホワイトとMacBookAirを並べてみました。
最新のAirではないので、iPad2が小さく見えますね。
でも、実際薄くなったので、小さくなったように見えます。
動作ですが、デュアルコアA5チップの良い影響として、スワイプして画面動作がスムーズでかなり良いです。
iMovieで動画編集もサクサクこなしています。
あと、バッテリーもちがとてつもなく良いです。
ここが、androidではマネが出来ない部分だと思うのですが、アプリやネットサーフィンをかなりの時間使用しても80%とかで維持してます。

EVOなんて、何もしていなくても45%とかになっています。
この点は、大容量バッテリーに切り替える事で解決させる予定です。

まとめ:
EVOのWIMAXは都内ではかなり快適につながります。
そして、高速である。
テザリングしても、iPAD2で快適にネットサーフィンが出来ます。
あと、今だけ8月までWIMAXの使用料が無料です。
この組み合わせにすることで、iPAD2を3Gで購入する必要がなくなり、
外で仕事をする場合も、macbookairでもテザリングすることも出来ます。

iPAD2は、ネットブックを購入しようとしていたライトユーザにはPCの代わりになると思いますが、
仕事では、iPADオンリーでは厳しいですが、プレゼン用として使えると思います。
(別途オプションでiPadの画面出力をHDMI経由でTV出力することが出来ます。
この事で、TV会議も出来るでしょうし、プロジェクターも要らなくなります。)

あと、iPADはブラウザがスマホ用の画面にはならず、通常サイトで動作するので、
情報量の取り込みが素早くできます。
改めて、iPADの大きさが9.7型ある強みが分かりました。
これくらいのディスプレイサイズがないとネット見る時、結構、不便になります。
あと、じゃらんのiPAD専用アプリを見ると分かりますが、
この画面だからこその強みが理解できます。
(※ちなみに、iPADでも[Puffin](115円)というアプリを購入するとFLASHも見えますヨ)

EVO + iPAD2を購入して仕事を快適UPさせましょう!

2011年5月6日金曜日

iphoneアプリ横向き設定にする方法

iphoneアプリを横向き設定にする方法をまとめておきます。



1.UIViewControllerを継承したクラスで、[shouldAutorotateToInterfaceOrientation]
で指定向きにのみ対応させる。

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
// Return YES for supported orientations.
// Homeボタンが右の横向きにはYes。それ以外の3方向にはNoを返す。
return (interfaceOrientation == UIInterfaceOrientationLandscapeRight);
// 他の向きも対応する場合は、他も書く
}

2. plist上に設定する。
2-1. Initial interface orientation:Landscape(right home button)
2-2. Supported interface orientations:Landscape(right home button)

色々なUIのサンプル集 iPAD/iPhone 開発フレームワークの紹介

写真集のサムネイル/テーブル/ボタン/eメール送信などの
UIに必要な要素のサンプルを集めたiPAD&iphone対応したフレームワークがあります。
その名も[Three20]です。

とある勉強会で教えていただいたフレームワークですが、
サムネイル+正式画像のDLもフレームワーク化されています。
但し、ドキュメントがないので、不具合があった場合に元ソースを直す必要があります。
その点、ご注意下さい。

サンプルはgithubにあります。

この中にあるサンプル(TTCatalog)を見ることで一通りのフレームワークで対応しているものを見ることが出来ます
ので、ぜひDLしてください。


さらに、three20を独自のプロジェクトに追加する方法ですが、
コマンドライン上でpythonを起動することで独自プロジェクトへ追加することが可能です。
まず、上記のthree20をDLしてください。
そして、DLしたフォルダの階層まで移動する (例. /iphone/three20 だとして、 cd /iphone/three20と入力すること)
「python ./src/scripts/ttmodule.py   -p '/usr/xxx/XXX.xcodeproj' -c Debug -c Release  Three20」

参考URL
iphoneアプリで稼げるのか