渋谷で働くシステム屋さん -10ページ目

iPhoneにテストでインストールしたアプリを消したい人。


順序が逆ですが。

苦労して、デベロッパーIDをゲットしたら、ブラウザ上でDeveloperセンターへ登録したり、
手元のMacのキーチェーンに登録したり、Xcodeのオーガナイザへ登録したりと
あちこちいったりきたりでかなり混乱したあなた。
またの機会に苦労話の詳細はするとして。

実記で動いておめでとう!

ここまできたらお友達へもお手製アプリをプレゼント!
バレンタインの手編みのニットのごとく、思い入れをこめてアプリをあの人へ贈りたい!


iTunesから、Drac&Dropで自作アプリのテスト共有ができます。
Tunesの登録なしに、ふつうにインストールできるのです。

ただし、100人以内、事前にIDをデベロッパーセンターから自分のプロファイルに登録すれば。


開発途中のアプリを知り合いと共有するのを「ad hoc」配布というようです。

あー、なんかワイヤレス接続のときのあれね、今になってこう使うのね。

えと、つまりですね、今回はそうしてインストールした後!(ごめんね、インストール法はまた今度)


えーやっぱ消したい!やりなおしたい!

わかります!そういうときあるよ。


だれでも初心者のうちは消したい間違いはあるよ。

iTunesから自作アプリを消すには。

まず順序を間違えないでね!

①はじめに iPhone 本体からプロファイルを削除します。(アプリがインストールされると、「設定」> 一般 > プロファイル というところに苦労して取得したプロファイルがあります。今回のアプリのビルドに使用したプロファイル名を削除してください)

②接続しているPCのiTunes側のファイルの実在場所を探し当てて、~/Library/MobileDevice/(ダウンロードした音楽とかのはいっているユーザーデータのディレクトリね)

C:\Documents and Settings\ユーザー名\My Documents\My Music\iTunes\Mobile Applications

とか、まぁあなたがお好きなところへインストールしてるとおもうので、
探してね!


ここに、ipa(Windowsの場合)という拡張子のファイルがあるので、あなたが作ったアプリの思い当たるような名前のファイルを消します。

③そして、iPhoneをつないで同期!

です。

ここで順番をまちがえちゃうと、消したのに復活したり、iTunesから消えなくなったり(そもそも削除メニューがない)します。


恥ずかしい失敗はゼロ消去したいうっちーでした!


PHP4→PHP5へのアップデート

今週もおつかれさま。

金曜ですね。


NTTPCのWebAreanaで VPSを使用しているお客から、

PHPのバージョンが4でWordpressのプラグインが使えないからアップデートして、という話で。

そこだけ?って責任重大ですが。まぁ。


基本的に、OSが古い場合、パッケージの依存関係が大変で

あれもこれもバージョンが合わないって、エラーになって、

イジメか!ってくらい、やってもやってもむごたらしくエラーで付き返されるときってありますよね。。。



やっぱり、専用サーバーな場合は基本、必要意外なにもインストールしない最小構成に最初っからしておくとこういうときに楽です。


CentOSらしいので、yumっちゃうのですが、

まずは、yumのレポジトリを[centosplus] enabled = 1 にします。


vi /etc/yum.repos.d/CentOS-Base.repo

#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-$releasever - Plus
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus
#baseurl=http://mirror.centos.org/centos/$releasever/centosplus/$basearch/
gpgcheck=1
#enabled=0
enabled=1


そして、PHPをアップデート。
yum update php


・・・と、ここまでで、なんの障害もなかった人、おめでとう。


●障害の遭遇その1


Error: Missing Dependency: php = 4.3.9-3.29 is needed by package php-pear

php-pear がさきか、php 本体がさきかという、にわとりと卵のような後さきの依存関係にはまる。


なぜか、新しいレポジトリで、php-pearをインストールすると、php そのものも依存関係によりアップデートされるということで、目的が結果に含まれているので、こちらで進む。


yum install php-pear

ここまでで、成功したらおめでとうございます。Mysqlがインストールされていなかったり、削除ができたりすればここで脱出です。


でも、今稼働中のMysqlを削除するわけにいかない場合は、次の障害へ。


●障害の遭遇その2


Transaction Check Error: file /etc/my.cnf from install of mysql-libs-5.0.82sp1-1.el4_8 conflicts with file from package mysql-4.1.22-2.el4_8.3

ライブラリがMysql5に対応するためには、Mysql4がMysql5になっている必要があります。


Mysqlのアップデートがさきかぁ、と思って、


yum mysql update

としたら、今度はphpのバージョンを5にあげろといわれる。


えっ、どっちがどっちなの!?


ということで、pear はインストールだし、mysql4 と php4 は それぞれ 5へアップグレードされないといけない。

だけどもそれぞればらばらにするとお互いがお互いでできなくなってしまうのです。


そしたら同時にやったらいいじゃん!

ってことで、こちらを一行でどうぞGOOD


yum install php-pear update mysql php

豪快にしちゃえばよかったのです!


最後に、今回限りでよい場合は戻しておきましょうね!


vi /etc/yum.repos.d/CentOS-Base.repo


[centosplus]

enabled=0
#enabled=1


Spry 電話番号入力チェック TextfieldValidate を日本仕様にする

こんにちわ。

誰かの作ったJavascriptなんて、直したくないですよね。
たまたま、赤の他人の作ったSpryを使ったJavascriptの入力検証の部分を直すことになったのですが。

システム屋さんなので、正直、Javascriptで検証したって、実際データが送られてきてしまったら受け手のプログラムで検証するので、2度手間なのですが、最近はユーザビリティというのも考えないといけませんよね。

JavascriptやCSSでかっちょよく見せるパフォーマンスもひつようですので、システム屋さんも是非習得いたしましょう。



この際ですのでおさらい。

Spry (すぷらい)
DreamWeaverで使用できる、AbobeのJavascriptライブラリ。
ということで、デザイナさんには親しみ深いかもしれませんが、
システム屋さんにはあまり触らない世界。

スプレーじゃないみたいなので。読み方、まちがえちゃうと地味にはずかしいことありますよね。

Spry テキスト検証Widgetを使って、WISIWYGで操作できます。


便利なのですが、基本アメリカ仕様になっていて、

電話番号のバリデータや、郵便番号のバリデータが日本のものにはあいません。(ちなみにワタクシCS4です)


パターンのところに 00-0000-0000と書いても、東京都、大阪府限定になってしまうので、

これはJavascript側に正規表現をかまさないといけません。

ということで、電話番号の入力チェックを
日本向けにカスタマイズしました。




変更するのは以下の箇所です。
SpryValidationTextField.js


今回はカスタムパターン'phone_custom'を日本語電話番号仕様にバリデートします。

携帯電話番号もOKです。

ハイフンのあるなしは、下の正規表現の部分で変更できます。


'phone_number': {
    formats: {
        'phone_custom': {
            characterMasking: /[\dA-Z\s]/,
            validation: function(value, options) {
                return /^\d{1,4}-\d{4}$|^\d{2,5}-\d{1,4}-\d{4}$/.test(value);
            }
        }
    }
},

HTML側:

DreamWeaverでいつもどおり追加してください。

電話番号用のテキストフィールドを挿入して、


 メニュー>挿入>Spry >Spryテキストフィールド検証を適用します。


タイプ:電話番号
ファイル形式:カスタム
を選択します。



SpryValidationTextField.jsSpryValidationTextField.cssをリンクします。
電話番号のフィールドはこんなかんじです

<label for="phone">tel(00-0000-0000)</label>
<span id="sprytextfield5">
<input name="phone" type="text" id="phone" size="30" />
<span class="textfieldRequiredMsg">電話番号を入力してください</span>

<span class="textfieldInvalidFormatMsg">無効な形式です。</span></span>



HTMLにウィジェットの初期化プロセスを書きます。

<script type="text/javascript">
<!--
var sprytextfield5 =

new Spry.Widget.ValidationTextField("sprytextfield5", "phone_number", {validateOn:["blur"]});

//-->
</script>