2009年6月4日木曜日

CMSサイトをMobileに対応

Joomlaでサイトを作成しているが、Mobole対応のExtentionを探していたら、以下のようなツールを見つけた。
PCサイト->携帯変換スクリプト
とりあえず、試しに設置してみる。
1. SourceForgeからダウンロード http://sourceforge.jp/projects/pc2m/
2. zipを展開してサーバに設置
3. dataディレクトリのパーミッションを、707など書き込み可能なものに変更
4. pearpack.zipをダウンロードして展開(http://www.rcdtokyo.com/pc2m/pearpack.zip)
5. 上記のPEAR.phpファイルと、HTTP、Net、XMLの3フォルダをサーバに配置
6. ブラウザで_check.php(動作要件の確認スクリプト)を表示
7. ブラウザや携帯端末でpc2m.php(メインスクリプト)を表示
8. アクセス制限設定(踏み台対策)などの設定を行う
9. index.phpを設定

■設定ファイル
* Config.inc.php(設定)
* Frontpage.inc.php(アクセス先のURLが指定されていない場合の表示内容)
* Template.inc.php(HTML出力のテンプレート)
* ErrorMessages.inc.php(エラーメッセージ)
* Setup.inc.php(設定画面の表示内容)
* Auth.inc.php(セッションデータの復元操作ページの表示内容)

■動作検証:
.../_check.php で、以下の表示あり
「設定ファイル(Config.inc.php)でアクセス制限が設定されているため、画像変換テストは実施しません」
画像に関連しそうだが、今回はスルー。また、index.php は以下のようにした。



define("CLNT_DTCT_CLS_PATH", "/var/www/vhosts/korabo.jp/subdomains/staging/httpdocs/i/ClientDetect.class.php");
if (false != @include_once CLNT_DTCT_CLS_PATH) {
$client =& new ClientDetect();
$fronturl = 'http'.(isset($_SERVER['HTTPS']) and $_SERVER['HTTPS'] == 'on'? 's': null)
.'://'.$_SERVER['HTTP_HOST'];
$scrpturl = $fronturl."/i/pc2m.php?";
if (preg_match('/^(?:docomo|au|vodafone)$/', $client->dev_type)) {
header('Location:'.$scrpturl.$fronturl);
exit;
} else{
header('Location:'.$scrpturl.$fronturl);
exit;
}
} else {
print 'Error:No Script file of ';
print CLNT_DTCT_CLS_PATH."¥n";
}

2009年6月3日水曜日

Android 開発 その2

新しいDevice用のVirtualDeviceを作成するための準備。

AndroidEmulatorは、qemuベースで作成されていて、CPUは、G1と同じ模様
(QUALCOMM® MSM7201a™ 528MHz:もしかすると、arm かも、、)
Emulatorのソースも公開されているので、変更を加えられる模様。
・改造計画:
画面サイズ(wxga:1280x768 or hdmi)
不要Device除去(GSM/磁気センサーなど)
スキン

参考:About Google Android Emulator

2009年6月2日火曜日

Android 開発 その1

HelloAndroid
O'REILLY の「初めてのAndroid」にて自習:

0. 前提
Eclipse3.4/ADT/AndroidSDK1.5

1. プロジェクト作成
EclipseのFile->新規->Androidプロジェクト
基本設定をして保存

2. とりあえず実行
何もコードを書かない状態でも、Androidアプリとしてはデプロイできる

3. 実行Emulatorの設定
RunAsで、「Androidアプリケーションを」を選択
初回のみ、Emulatorの設定となる

Android 開発環境

Mac OS-X で、Eclipse3.4を利用したセットアップ。
参考:Developing In Eclipse, with ADT

1. Eclipse3.4のダウンロードと設定
http://www.eclipse.org eclipse-jee-ganymede-SR2-macosx-carbon.tar.gz

2. 今回はPleiadesにて日本語化
http://mergedoc.sourceforge.jp/pleiades.html

3. 大文字小文字を区別するFileSystemを作成(Android本体のmakeもする予定なので、、、)
ディスクユーティリティにてイメージを作成
mount は、「/Volumes/android_ws」

4. AndroidSDKの取得と展開(現在の最新版で、1.5r2)
http://developer.android.com/sdk/1.5_r2/index.html
配置は、「/Volumes/android_ws/」とし、リンクを作成
Terminalにて、以下を実行
cd /Volumes/android_ws/
ln -s ./android-sdk-mac_x86-1.5_r2 ./android-sdk

5. Eclipse用のPlugin(ADT)を導入
PluginSite:https://dl-ssl.google.com/android/eclipse/

6. EclipseADT1の設定
Eclipse > Preferences から、Androidを選択して、SDKの場所を設定する


参考:Android開発環境 for Mac

2009年5月29日金曜日

AndroidMarket

独自マーケット(バザール)の開設に向けて準備中。
参考資料:On Mobile Applications, Platforms and Monetization — “Show me the Money”

Jason Delport, Alex Kerr, William Volk(モバイルの専門家)が
指摘するGoogle-AndroidMarketが今一な理由:
1.Googleにクレジット番号を教えたくない
2.有料ソフトの違法コピーが随所にある
3.糞なアプリが満載
4.iTunesStoreに比較して魅力に乏しく、使いにく
5.Freeのアプリに比較して有料版は掲載も遅れるし、無料がよいという雰囲気がある

著者は、#1については、Googleがやり方を変更すべきだと述べている。
「有料版を最初に買う時に登録するか、他の決済機関にまかせてしまうか」

「開発者は、最も有益なものにフォーカスすべきである」
「有益は相対的であり、対象による:通話機能にとって?アプリ開発にとって?お金儲けにとって?」
「金銭的成果という観点では、Richな開発環境とエコシステムが成功している」

-----
ちょっと調べてみると、Android上で音楽を扱うのに、iTunesのような標準的で
Marketと直結しているようなものはなさそうだ。候補は、TuneWikiで、これは
カラオケ機能もある。(日本語の歌詞は未対応?)

2009年5月13日水曜日

Androidの会 勉強会

2009年5月11日(月)1900-2100
秋葉原ダイビル「はこだて未来大学」
丸山先生も参加されていました。

今回のテーマはゲーム関連
■TIPS
タッチパネルが重い:イベントを消すために一瞬Sleepさせる裏技あり?
PNGはヘッダを外すと表示が速くなる
Drawableの方がよい、CreateBitMapはメモリ食い
画像のScalingは重い
音は、SoundPoolの方が速いことがある
■開発
Emulatorは再現性が高い(特に2D)
ログを停止しておかないと開発環境にインストールされると見られてしまう
■Market
ランキングの基準が不明
クーリングオフでのキャンセルが多い(FreeTrialはやめた)
iPhomeもクーリングオフがあるが、Appleの審査が入るためキャンセルは実際上はない
■その他
自前でのMarket立ち上げも可:ただし、同じAppはAndroidMarketには置けない

2009年5月7日木曜日

丸山先生レクチャー

全6回シリーズ:テーマは「クラウド」
講演者:早稲田大学大学院 情報生産システム研究科 客員教授 日本Androidの会 会長 丸山 不二夫 氏

1:2008年11月13日(木)『クラウド時代の到来』
・クラウドは発展途上であり、定義は固まっていない
・ここ40年ほどの間にハードは爆発的に進歩(Diskは百万倍以上)
・クラウドにはしっかりした実体(サーバ群、データセンタなど)がある
・クラウドの上でサービスのみを提供する(SaaS)ようになった
・クラウドOS

2:2008年12月16日(火)『MicrosoftのクラウドOS/Windows Azureについて』
 概要:CloudOSであるWindowsAzureの概説
 ・WebAppをスケールアウトするために仕組みが備わっている
   自動的な複数ノードへの処理およびデータの分散、分散キャッシュ
 ・アプリの開発や実行に伴う、ハード・ファーム、ネットなどをすべて仮想化して提供
   開発、使用はビジネスに特化できる!
 ・使用量の応じた従量課金と幅が広く迅速なスケール追随が可能になる
 ・分散メモリーキャッシュ(RDBでなく、key-value形式)
   Oracle:Coherence, IBM:Object Grid, GigaSpace, Terracotta
 ・Cloud分散データベース
   Google:BigTable+GoogleAppEngine, Microsoft:SSDS, Amazon:SimpleDB, Amazon:Dynamo
 ・並列処理の競合への対処としてQUEUE(FIFO)を使用
 ・データサービスとしてSDS(SqlDataService:SQLで呼び出せるがRDB形式ではない)
   RESTfulにアクセス可能、高可用性、2つのキーでデータを管理(Partition-key, Row-key)
   RDBではなくて、key-value型(スキーマ定義がなく、行ごとにカラムが変わってもよい)
   同一のPartition-keyを持つデータが必ず同一ノードに配置される
 ・モデルドリブン:サービスモデルの定義を元にDeployer機能が実装コードを生成
 ・ノード構成(クラスタ)はリング構造で中心を持たない

3:2009年1月13日(火)『Cloud上の分散データベース ― BigTable、SimpleDB、Azure SDS ―」
抽選にもれる、、、

4:2009年2月26日(木)『ScalabilityとAvailability」
仕事の都合で出席できず、、、

5:2009年3月23日(月)『CloudとRich Client」
家庭の都合で出席できず、、、

6:2009年4月24日(金)『クラウドとSOAの最新トレンドを語る』 OracleOpenWorld 内
・Cloudへの移行にはまだ少し時間がある、企業の壁を越えるには大きな問題がある
・SOAには上からと下からの問題があったが、新しい技術が出てきた
(分散キャッシュ、SCA、SimpleModeling)
・企業データの統合に分散キャッシュ技術
・OSGIによるSCAとServcieの結合の可能性
・SimpleModeler(テキストによるDSL) によるModelDoriven
*SCA:Service Componet Architecture (SOAを具体化するために仕様:主にサービスの結合)