KnitToolsFree、iPad対応版リリース

編み物支援iPhoneアプリ「KnitToolsFree」がバージョンアップに伴い、iPad(iOS4.2以降)に対応になりました。

画面の関係上、iPhone版は横画面を停止していたのですが、iPadは横画面が実装されていないと審査に通過しない可能性があるので復活させてあります。
iPad用に多少レイアウトの調整は行っていますが、やはり余白が多いですね。。。

iPadユーザーの方も、この機に是非ダウンロードしてください。

現在開発中のiPhoneアプリは…レビューを頂いたおかげでさらに機能追加・使い勝手向上を目指して予定よりリリースが伸びています。より良い物にすべく日々精進しておりますので、ご期待頂ければと思います!

KnitToolsFreeバージョンアップしてます

すいません、更新しないにしてもアプリのバージョンアップくらいは告知しないといけないですね。。。

編み物支援iPhoneアプリ、「KnitToolsFree」をバージョンアップしました。
http://itunes.apple.com/jp/app/knittoolsfree/id391101000?mt=8

・日英米の毛糸規格比較表の追加
・カウンターがアプリ終了時にリセットされるバグを修正
 (iOS4.1以降のマルチタスクにも対応しています)
・広告をiAdからAdMobに変更
・横画面を廃止

現在、iPad(iOS4.2以降用)対応作業中です。
基本の機能やフローはiPhone用と同一ですので、無駄に画面が広いだけの機能もあるのですが…orz
iPadユーザーの方はもう少しお待ち頂ければと思います。
(iPadアプリは横画面も無いと審査が通らないので、そこらへんも調整中なのです…)

ゲージ計算機能などについても現在調整中です。
「Free」の名前の通り、どこかの段階で有料版の制作も視野に入れているのですが、どの機能から盛り込むか悩ましいところですね。一応有料版では横画面の復活、広告の廃止、所有リスト(針・糸など)管理等の新機能を考えています。

別アプリのリリースも予定していて、こちらは小さいお子さん(特に1歳前後)のお母さんに便利なアプリになります。
初の有料アプリとしてリリースする予定ですが、恐らく国内ではまだ無い類のアプリです。
最終レビューをお願いしている段階なので、こちらも少々お待ち頂ければと思います。

アプリの企画持ち込みなども随時お待ちしております。

10月12日 

業務連絡

リニューアル予定

近々ホームページをリニューアルする予定です。
iPhoneアプリをリリースしていますが、そのサポートページなどもキチンと用意出来ていないことなどもあり、中途半端にページを追加するより一度コンテンツの見直しも含め、作り直した方が良いのではないか?と考えております。

業務内容についてもここ最近になって変化してきており、案件規模にもよりますがデザインワークをお受けしない形が多くなりました。餅は餅屋、というか自分の得意とするコーディングやプログラミング、最近ではiPhoneアプリなど、同業の中でも少し尖った部分に注力し、デザインなどについては提携パートナーと協業してより良い物を作っていこう、と進めております。

そしてリニューアルに伴い、いったんこのブログを切り離すことに致しました。
プログラムネタなど手前味噌ではありますが、ある程度有用な記事もあるかと思います。が、カテゴリの振り方に統一性が無かったり、仕事の内容とプライベートの内容が混ざってしまった時期などについて逡巡することも多く、最近はそのあたりも原因となって記事の更新が全く行えておりませんでした。

ブログの切り離し方や方向性、本サイトとの繋げ方など未だ煮詰まっていないのが現状で、このブログを楽しみにしてくださっている方がいらっしゃったとすれば大変申し訳ございませんが、今暫くお時間を頂ければと思います。また恐らくブログを完全に無くしてしまう、ということは無いかと思いますので、再出発の際には引き続きご愛読頂ければ光栄です。

今後とも何卒よろしくお願い申し上げます。

Javascriptだけで郵便番号→住所検索(失敗)

先日、京都のサテライト会場も開催されることになったGoogle Developer Day 2010に参加してきました。
参加するにはクイズに答える必要があり、手を付けたのが締めきり当日の朝1時間ほど、ということであまり解けず「これは参加無理だなー」と思ってたら参加できてしまい…東京会場の中継というスタイルで、回線の不具合などで途切れるトラブルはあったものの面白いセッションも聞くことができました。Androidアプリにも手を出してみないとね。

さてさて、その当日に合わせて発表されたのが、Google日本語入力をクラウドで提供してくれるサービス「Google CGI API for Japanese Input」。
指定のURLにGETでひらがなを投げると、日本語に変換した候補を返してくれるサービスです。変換はGoogle日本語入力の技術を使ってる、とのことで結構な高性能っぷりが伺えます。

「iPhoneアプリに組み込めば、ATOK Padみたいなの作れるじゃん」くらいの活用方法しか浮かばない小さい脳みそな訳なんですが、今朝寝起きになぜか閃く。「JavascriptでAjax通信使って郵便番号を投げれば、その候補の住所が返ってくるからデータベースとか用意しなくても郵便番号検索が実現できるのでは?」と。

早速試してみましたが…

結果はNG…orz

“Origin ~ is not allowed by Access-Control-Allow-Origin.”
というエラーが返されてきます。クロスドメインでのアクセスは許可されていないようですね。ごめんなさい。

残された方法として中継用のPHPを用意して、
Javascript←→PHP←→Google日本語API
としてあげることで無事住所変換機能を実装することができました。

Javascriptだけならソースも晒して、と思ったんですがPHPも、となるとタイムアウト処理とか面倒な事もあるので割愛です。
とりあえず、ということなら「file_get_contents」で取得して出力すればOKかと。

09月20日 

iPhoneアプリ

iPhoneアプリをリリースしました。

相変わらず牛歩です。

以前からちょいちょいお伝えしてたiPhoneアプリをリリースしました。
「KnitToolsFree」という編み物の時に役に立つツール集というニッチなジャンルですw

AppStoreへは初申請ということもあり、まず間違いなくリジェクトされるだろうと思ってたら、申請から2週間。
何事もなく審査が通り、あれよあれよとAppStoreへ掲載される運びとなりました。

AppStoreへのリンク

iTunesが入ってるPCだとリンクをクリックすると立ち上がるのかな?
無料ですし、冷やかし半分でもダウンロードして頂けると嬉しいです。

無料版をベースに、機能の追加・強化した有料版の制作もすでに練り始めてます(というか開発当初からその予定)。

周りに編み物をされる方がいらっしゃれば、是非ご意見など頂ければ。

その他、絶賛アプリネタ募集中です。
面白いネタをお持ちの方はご連絡お願いいたしますw

08月31日 

iPhoneアプリ

横画面で戻る処理時にレイアウト・アニメーションが崩れる

このところ語る内容がiPhoneアプリネタばかりなのですが。。。

UINavigationViewControllerの下にUIViewControllerが居て、ビューにはUIViewとその下にUITableViewという構成の時。
(もしかしたらUITableViewは関係ないかも…)
デバイスを横向きにしてnavigationBarの「戻る」を押した時にviewが少々崩れ(HTML的に言うとpadding:50px;みたいな)、左右遷移せずに下に落ちて行くという、これまた表現しにくい症状が起きる事があります。

本来、想定している動きとしては右に流れて行く、という。

縦向き時には起きないんですわ、これ。

対策方法は、delegateを指定してあげる事と、各UIViewControllerにshouldAutorotateToInterfaceOrientationでYESを返してあげる事。

前者はなくていいのか?とにかく後者が必須です。
日本語で書かれたページとかないし、英語でもどうやってググったものか…と思ってたら偶然にヒットw

そんなこんなで、もう少しでAppStoreに申請を行います。どんなアプリかはお楽しみに。ニッチな内容です〜

このブログもホームページも構成に思う所があるので、もう少し手が空いたら変更する予定にしています。
もうちょっと更新するようにしなければ〜

08月05日 

iPhoneアプリ

UIAlertでテキスト編集

よくアラートダイアログ内でパスワードとか入力を求めるのがあるけど、標準ではそんな事出来ないので、中にUITextField仕込んであげましょう、ということで。

C:
  1. UIAlertView *alert = [[[UIAlertView alloc] init] autorelease];
  2.     alert.title = @"編集";
  3.     alert.message = @"編集してください。\n\n\n";
  4.     alert.delegate = self;
  5.    
  6.     UITextField *field = [[UITextField alloc] initWithFrame:CGRectMake(20.0, 70.0, 245.0, 25.0)];
  7.     [field setBackgroundColor:[UIColor whiteColor]];
  8.     [alert addSubview:field];
  9.    
  10.     [alert addButtonWithTitle:@"キャンセル"];
  11.     [alert addButtonWithTitle:@"実行"];
  12.     alert.cancelButtonIndex = 0;
  13.    
  14.     [alert show];
  15.    
  16.     [field becomeFirstResponder];
  17.     [field release];

んで、クリック後の処理は…

C:
  1. - (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex {
  2.     if (buttonIndex != alertView.cancelButtonIndex) {
  3.         for (UIView *subView in alertView.subviews) {
  4.             if ([subView isKindOfClass:[UITextField class]]) {
  5.                 NSString *text = [(UITextField *)subView text];
  6.             }
  7.         }
  8.     }
  9. }

UITextFieldが1個しか追加されてない事が前提のテキスト取得方法ですけどね〜

現状の構成がUITabControllerの上にUIViewControllerが3つ載ってて、うち2つがUINavigationControllerでかつUITableViewという感じになってます。
Appleのガイドラインに引っかかってしまわないかと戦々恐々ではあるんですが、上手い事行ったらそこら辺のTipsも出していければ。

さ〜申請はいつになるかな〜

【備忘録】リソースにjsonファイルを仕込んで読み込む

C:
  1. NSError *err;
  2. NSString *path = [[NSBundle mainBundle] pathForResource:@"hoge.json" ofType:nil];
  3. NSString *data = [NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:&err];
  4.  
  5. arrHoge = [data JSONValue];

pathForResourceに拡張子を含めちゃえば、ofTypeはnilで大丈夫。
ただし.jsonはデフォルトではバンドルリソースに含まれないので、
ターゲット→アプリ名→バンドルリソースをコピー
にファイルを持って行っておく必要がある。

07月26日 

Web関係

ドットコーダーセッション2で喋ってきました

生きてますよw

この放置っぷり…スイマセン…orz

最近はネイティブなiPadアプリにも手を出したりしてて、もうちょっとしたらお見せできるかと思います。

そんな近況ですが、この頃なにかと顔を出してるドットコーダーのゆるふわ会に行って喋ってきました。今回のテーマはjQuery。基礎的な所は他の人が話すので、応用的な内容で喋って欲しい、と。
こういう喋る内容ってターゲット層にバラつきがあるので、どこら辺にターゲットを置いて内容を決めるのかが難しいところではあるのですが…

まーボチボチjQueryのメソッドをちょいと使った感じで且つJavascriptのTips的なことも盛り込める「画像切り替えスライダー」を作ることをテーマにしてみました。というのも、先日のコーディング案件で作ったばかりだったんで…(ちゃんと受注元にも許可を貰いましたよw)
実際に使用されている物の方が参考にもなりません?

ちょっと他のプレゼンターがゆるふわな雰囲気だったので、一人お堅い感じで進めてしまいましたが…何かの参考になったりモチベーションの向上の一助になれたとしたら発表者冥利に尽きます。不手際とかお叱りの言葉もありましたら真摯に受け止めたいと思います。。。
少しずつ発表には慣れてきましたが、いやー喉がカラカラでひっつく感じでしたよ。まだまだ緊張しながらの発表です。

もうちょっと全体的な雰囲気とか感じ取りながら話せるようにならねば、といった感じです。

しかしjQueryっていつになっても人気の話題ですねぇ。

06月21日 

バー

フォトログ

週末記

ここ最近は打ち合わせばかりで実作業がなかなかありません。面白そうな小話もシガラミがあって出せない感じ。ま、出せる時が来ればw

今年は数年振りに蛍を見に行くことが出来ました。落ち着きますね(ただし蚊に10箇所以上刺されながら…orz)。

さてさて週末ですが、同業者と京都で飲んでうっかり終電を逃し、話題のカプセルホテルに泊まる企画に参加してきました。えぇ、ついうっかりです。うっかり終電を逃してしまうので、事前にホテルの予約をしておきましたw

飲むお店は仕事仲間のカメラマンに紹介して貰ったフレンチバールの「ONZE」。初めて行った時もバカバカワイン飲んで終電を逃したのですが、その時はツレと二人でタクシーで帰りましたけどねw
なにしろ料理が旨い。メニューが魅力的。思ってるより量が多い。パンが大きい。落花生は掴み取りw

終電を逃しちゃいけない人がリアルに終電を逃しそうになったりしながらも、満足頂けた様で1つめのミッション終了。ちなみに今回もワインをボトルでバカバカ空けて行き、一人5,000円ほどでしたw

ONZE

飲み足りない人たちはさらにバーへ繰り出して行ったのですが、連日飲みが続いている自分はお先にドロンさせて頂き、第2の目的であるオサレカプセルホテル「nine hours」へ。カプセルホテルながら洗練されたデザインで建築系の賞を受賞しまくってるなう、なところ。twitterを使ったプロモーションや客からの要望収集・対応など新しい試みも取り入れられてます。

カプセルの中も一般的な物と異なり、広さを感じさせるサイズ。圧迫感がありません。ありがちなテレビなどは無く、入眠・起床の事を考えられた照明システムが入っています。起床時間を設定しSleepを押すとだんだん暗くなり、設定時間の30分前からじわじわと明るくなっていきます。

じわじわ暗くなるのが気になって、いちいち目を開けて確認。朝も明かりが付く前から目が覚めてしまい、じわじわ明るくなるのを観察してました。えぇ、まったく意味なしw

京都観光だけでなく、ちょっとリフレッシュしてみたい時など、是非是非足を運んでみてください。

nine hours

おまけ。
プランター菜園で一人気を吐くレモンバームの花が咲きました。