2011年5月26日木曜日

AdMobのサイトがiPhoneに最適化

今朝早くにAdMobのサイトへiPhoneからアクセスしたら、素晴らしいことに、iPhoneに最適化されていました。


(大して儲かっていないのにモザイクをかけてるのは内緒orz)

いままで、モバイル向広告サービスの雄がどうしてiPhone向けサイトを用意してないんだろうと思っていました。これが本来有るべき姿、ですよね。
先日からGoogleアカウントとのログイン連携も始まっていたし、使いやすくなることは大歓迎です。

2011年5月18日水曜日

Blogtrottrのベータ版でEvernoteのノート分類やタグ付けまで自動化

ひさしぶりにBlogtrottrをいじっていたら、ベータ版が公開されていることに気づきました。

ベータ版に登録して新機能をチェックしてみたら、なんと、「Email subject」のカスタマイズやらフィルター機能やらが付いているではありませんか!
それってつまり、もしもEvernoteにブログとかTwitterとかのフィードを自動的に流し込んでいる場合、これまでBlogtrottr単独では出来なかったノート分類やタグ付けの自動化が可能になるってことですか?

早速試してみると、ばっちりOKでした。
こんな感じで設定します。


設定は簡単で、
{feed_title}: {item_title} @✓Archives #Lifelog
みたいに記述するだけです。あ、「@」がノートの指定で「#」がタグの指定でしたね。これだけで指定したノートにちゃんとタグが付いて格納されました。
ここまで自動化するためには、これまでtarpipeとかYahoo!Pipesとかを使いこなす必要がありましたが、ワンストップで済んだ方がものぐさな私にとっては大助かりです。たまに「どうやってこれを実現していたか」思い出せない時があったりしますのでね。(笑)
今回はフィルター機能は試しませんでしたが、キーワードで制御するタイプのようです。日本語の扱いがちゃんとしていると良いですけど、ちょっと不安。

さて、これからBlogtrottrに貯め込んでいる残りのフィードを全自動化すべくせっせと作業することにします。
しかし全自動化のために時間を取られてばかりで本末転倒な←それを言っちゃおしまいですね。

Appiraterが良さそう

Cocoa Controlsを見てたら、Appiraterというのがありました。
アプリを繰り返し使ってくれているユーザーに対し、alertViewを表示してiTunes StoreでのReviewに誘導する、という一連の動線を支援するclassです。
実際私の作ったTunesTimerでも、公開して1ヶ月も経つというのに、ほとんどコメントをもらえていませんで、改善できると良いなあと思っていたところでしたので、次回のバージョンアップのために早速組み込んでみました。
Appiraterの良い点は、#defineで色々と定数化してあるので楽ちん、という部分です。初回起動から30日以上経ったり、20回以上使われたらそこで初めてalertViewを出す、みたいな。20回は気が長いなあ、と思ったら
#define APPIRATER_USES_UNTIL_PROMPT 20
の 20 を 15 にするだけ。
ただし落とし穴があって、NSStringの文字列まで定数化してしまっているので、そのままでは素直にローカライズできなくて開発初心者の私は泣きました。
こんな感じ。

#define APPIRATER_MESSAGE_TITLE [NSString stringWithFormat:@"Rate %@", APPIRATER_APP_NAME]

ここに NSLocalizedString を記述すると思い切り怒られます。
なので、Appirater.mを書き換えて対処してみました。

- (void)showRatingAlert {
    NSString *messageTitle1 = NSLocalizedString(@"Rate ", @"");
    NSString *messageTitle2 = NSLocalizedString(@" *", @"");
    NSString *title = [NSString stringWithFormat:@"%@%@%@", messageTitle1, APPIRATER_APP_NAME, messageTitle2];
    NSString *messageBody1 = NSLocalizedString(@"If you enjoy using ", @"");
    NSString *messageBody2 = NSLocalizedString(@", would you mind taking a moment to rate it? It won't take more than a minute. Thanks for your support!", @"");
    NSString *messageBody = [NSString stringWithFormat:@"%@%@%@", messageBody1, APPIRATER_APP_NAME, messageBody2];
 UIAlertView *alertView = [[[UIAlertView alloc] initWithTitle:title
               message:messageBody
              delegate:self
              cancelButtonTitle:NSLocalizedString(@"No, Thanks", @"")
              otherButtonTitles:title, NSLocalizedString(@"Remind me later", @""), nil] autorelease];
    self.ratingAlert = alertView;
 [alertView show];
}

まあ、これで一応日本人向けアプリでも導入できるぞ、と。

とここまで書いてみて、「あれ?普通はもっと違うやり方があるのかも?」と急に不安になりました。
もっと普通のやり方があればご教示ください。

はてさて、次のバージョンでの反応が楽しみです。
うざったいからこんなもん表示するな! だったらそもそもくたびれもうけですが(笑)

2011年5月16日月曜日

ヒット曲でタイマーを! iPhoneアプリ TunesTimer を公開中

ヒット曲でタイマー TunesTimer (Version 1.0.2) App
カテゴリ:ユーティリティ
価格:無料
デベロッパ名:Daiko K.K.
リリース日:2011/04/12
iPhone iPhone

このアプリを公開してから早1ヶ月。些細なバグを修正したり、新しい機能を盛り込もうとして挫折したりであっという間でした。

で、開発も一段落したので「ブログでも始めてみようかな」と重い腰を上げてみました。
いままでブログは何度も挫折してきたので続くかどうか非常に不安ですが、まあぼちぼちトライしていこうと思います。

こっそり

ブログを開始します。