月別アーカイブ: 11月 2011

WordPressでのシームレスインストールページの作成

このサイトもそうだが、WordPressが手軽なのでサイトの構築に使うことが増えた。 僕はWEBサイト作成は本業では無いので、必要に迫られるとCMSを使うようにしている。 以前はXoopsを使っていたのだが、最近、このサイトを移設する為に、新しく借りたレンタルサーバーでWordPressのインストールサービスがあったので使った為、某製品のダウンロード用サイトでもこれを使うようにしたが、WordPressはFlashを簡単に埋め込めない。 AIRのシームレスインストールの為にはFlashが必要なので、何とか方法が無いかと調べたらプラグインがあるらしくて利用してみた。 只、一般的に使われている「WP-SWFObject」の場合、シームレスインストールに必要なflashvarsを設定できない。 その為「WP-Al-SWFObject」と言うプラグインを使ってみた。このプラグインならflashvarsを渡せるようだ。 プラグインのダウンロードやインストールは http://blog.alumican.net/2009/04/19_233117を見てもらうとして、ページへの埋め込みはこんな感じだ。 [embedSWF]http://サイトURL/AIRInstallBadge.swf, 215, 180, center, 6.0.65, http://サイトURL/expressinstall.swf,{airversion:”1.2″,appname:”アプリ名(日本語は表示しない)”,appid:”アプリID”,pubid:”publishID”,appversion:”アプリのバージョン”}[/embedSWF] ここで、{}の部分がflashvarsだが、実は設定にあるべきAIRのアドレスや背景画像のアドレス設定はここにない。 実は、初めは背景画像もAIRアプリのアドレスもflashvarsにimageurlやappurlと言う値で設定していたのだが、画像も表示されないしAIRのインストーラも起動しない。 何故?と思って実際にWordPressで出力しているHTMLのソースを見ると何故か2つとも「http:」までしか無い。 それなら表示もされないし、インストーラも立ち上がらない筈だ。 どうもflashvars内のアドレスがちゃんと渡ってない様だが、WordPress側の問題かこのプラグインのバグか理由が良く分からないし、突っ込んで調べる時間が勿体なかったので、僕はAIRInstallBadge.flaで読み込んでいるAIRInstallBadge.asの以下の中に直接この二つを仕込んだ。 appName = validateString(params.appname); appURL = ‘AIRのURL’; appVersion = validateString(params.appversion); helpURL = validateURL(params.helpurl); hideHelp = (params.hidehelp != null && params.hidehelp.toLowerCase() == “true”); … 続きを読む

カテゴリー: 未分類 | コメントは受け付けていません。

オートアップデート解決

日本語問題は解決したのだが、アップデートを実行させると実際のダウンロードの際に 16824 エラーが出てアップデートが出来ない。 この16824は「無効な更新記述子」と言う事で、原因を調べていたのだが、どうもupdate.xmlの記述のnamespaceが2.5となっているのだが、FlashBuilderのnamespaceが2.6なのが問題なのかと思って変えてみたが解決しない。 再度、FxUGへ報告と言う形でアップしていたら、親切に又、回答があって 『AIR 2.5 より前に作成された AIR アプリケーションは、バージョン 1.0 アップデート記述子のみを読み取ることができます。 AIR 2.5 以降に含まれるアップデータフレームワークを使用して作成された AIR アプリケーションは、バージョン 2.5 アップデート記述子のみを読み取ることができます。 バージョンの互換性がないので、2 つのアップデート記述ファイルを作成することが必要になる場合があります。』 と言うヘルプの記述を紹介された。 僕もヘルプは読んでいたのだが、読み方が足りなかった様だ。 非常にわかりにくい日本語だが、要するに2.5以上は2.5で良いと言う事らしい。 それなら他に原因があるだろうと思い、もしかして。。とリリースビルドしてアプリケーションを立ち上げると呆気無くダウンロードとインストールまで正常に自動更新した。 つまり、IDEでのデバッグモードではエラーが出ると言う事だったのだ。まあ、考えたら理由が分からなくも無いが、それにしても「無効な更新記述子」だけでは何とも分からない。先のヘルプもそうだが、この手の日本語訳は本当に不可解メッセージが多い。。 取り敢えず、FxUGのご主人さま(笑)のお陰で、オートアップデート問題もなんと解決して無事にオートアップデートが出来るようになった。

カテゴリー: 未分類 | コメントは受け付けていません。

ここはアメリカじゃねーよ

昨日、Fxugへ投稿していたらすぐに返信が入っていた。 内容は以下の様な簡単なものだが 『update時のダイアログの日本語化は、コンパイラーオプションの追加引数のところでしょうか。 -locale ja_JP としておけば localeが日本語になりますので、update時にも日本語で表示されると思います。 念のため、updateのActionScript内で、 appUpdater.localeChain= ["ja_JP"]; としています。』 これを読んで「あ!」と思った。 確かにFlashBuilderをバージョンアップした時に既に作業に追われてて、取り敢えず使える状態にしたが、その部分は全く触ってなかった。 見ると確かに -locale en_US と設定されてあった。 「ここはアメリカじゃねーよ」とつぶやきながら、 -locale ja_JPとしたら一発で昨日の問題は解決した。 ちゃんと日本語で出ている。 やはり困った時のFxUGだった。 それにしても初歩的なうっかりだが、初歩的な事ほど気が付きにくいもんだ。。

カテゴリー: 未分類 | コメントは受け付けていません。

いつ変わったんだよ?

以前からAIRのオートアップデートを試みているのだが実行されない。 リリースの方を優先して、AIRのトップ画面に更新情報を表示して、そこをクリックすると新しいバージョンのファイルがあると言う処理で逃げていたが、釈然としなかった。 リリース関係で忙しかったが、少し時間が取れたので、調べてみた。 初めは、 appUpdater.isCheckForUpdateVisible=true; として、何やらエラーが表示されるのを見ると、以下の様なオートアップデートのエラーリストに表示されないエラーが表示されている。 here was an error checking for updates. error# 16831 これをキーワードに検索したら、更新をアップしているサーバに設定しているupdate.xmlの記述方法が変っていることを知った。 部分的に紹介するがupdate.xmlの中の以下の部分 <update xmlns=”http://ns.adobe.com/air/framework/update/description/2.5″> <versionNumber>1.1</versionNumber> と言う具合に <version></version>の記述方法が <versionNumber></versionNumber>と言う具合に変更となっていた為だった。 ちなみに ネットで見た情報ではdescriptionのバージョンが1.0では無く2.5(これは2.6だと駄目)とあったが、これは1.0でも動作した。 全くいつ変わったんだよ?と言いたいが、問題はまだあった。 こんな感じで自動更新があった場合に表示されるパネルが英語なのだ。 update.xmlの <description>で日本語が使える様だが、パネルのタイトルで「Update available」とか「An updated version of the application is available for download.」等と表示されても、「?」と言う状態のユーザが殆どなので困る。 何か特別な設定をする必要があるのか?と思ったが、これ以前のバージョンのオートアップデートを紹介しているサイトを見ると日本語対応となっているし、Adobeのオートアップデートも当然日本語だ。 … 続きを読む

カテゴリー: 未分類 | コメントは受け付けていません。